Prehľad
Vyhľadávanie podľa kľúčových slov (tiež známe ako Full-Text Search) vám umožňuje nájsť záznamy pomocou tradičného porovnávania textu s pokročilým spracovaním textu. Na rozdiel od presného porovnávania textu, systém automaticky spracováva variácie slov, stemming a jazykovú normalizáciu.
Napríklad, vyhľadávanie “bežecké topánky” môže nájsť produkty obsahujúce “beh”, “bežecký”, “bežec” alebo “topánky” v akejkoľvek jazykovej variácii, čo je flexibilnejšie ako jednoduché porovnávanie textu.
Kde použiť vyhľadávanie podľa kľúčových slov
Vyhľadávanie podľa kľúčových slov je integrované do niekoľkých častí platformy {productName}:
- Panel filtrov: Použite operátor “obsahuje kľúčové slová” na vyhľadanie záznamov v celej mriežke.
- Režim priameho filtra: Zadajte kľúčové slová priamo do panela filtrov.
- AI Query Builder: AI asistent môže použiť vyhľadávanie podľa kľúčových slov, keď je to vhodné.
- Vyhľadávateľné výbery: Pri výbere hodnoty z rozbaľovacieho zoznamu (ako je Kategória alebo Značka).
Používanie operátora “obsahuje kľúčové slová”
Vyhľadávanie podľa kľúčových slov môžete spustiť v ľubovoľnom paneli filtrov alebo v Rozšírenom editore filtrov.
[navigate:/products|Otvoriť Produkty|shopping-cart]
1. Kliknite na tlačidlo **Rozšírený editor** (ikona posúvača) na paneli vyhľadávania.
2. Vyberte **Pridať podmienku** pre začatie nového pravidla.
3. Vyberte ľubovoľné pole (vyhľadávanie podľa kľúčových slov funguje na úrovni entity).
4. Vyberte operátor **obsahuje kľúčové slová** z rozbaľovacieho zoznamu.
5. Zadajte hľadané výrazy (oddeľte viacero kľúčových slov medzerami).
6. Kliknite na **Použiť** pre zobrazenie výsledkov.
Režim priameho filtra
Pre rýchlejší prístup dvakrát kliknite na panel filtrov pre vstup do Režimu priameho filtra:
has keywords 'laptop computer'
Vyhľadávanie podľa kľúčových slov môžete kombinovať aj s inými filtrami:
has keywords 'blue shoes' and price < 100
Ako funguje vyhľadávanie podľa kľúčových slov
Spracovanie textu
Vyhľadávací engine kľúčových slov vykonáva niekoľko pokročilých krokov spracovania textu:
- Stemming: Redukuje slová na ich koreňovú formu (napr. “bežecký” → “beh”)
- Lematizácia: Konvertuje slová na ich slovníkovú formu
- Normalizácia: Spracováva diakritiku, veľké a malé písmená a špeciálne znaky
- Podpora viacerých jazykov: Spracováva text vo viacerých jazykoch (napr. čeština, angličtina)
BM25 Ranking
Výsledky sú zoradené pomocou algoritmu BM25, ktorý zvažuje:
- Frekvencia výrazu: Ako často sa hľadané výrazy objavujú v zázname
- Inverzná frekvencia dokumentu: Ako zriedkavé/jedinečné sú hľadané výrazy
- Dĺžka poľa: Kratšie zhody sú zoradené vyššie
Kedy použiť vyhľadávanie podľa kľúčových slov
Použite “obsahuje kľúčové slová” keď:
- Poznáte konkrétne slová alebo výrazy, ktoré chcete vyhľadať
- Chcete vyhľadávať medzi viacerými variáciami slov (beh, bežecký, bežec)
- Vyhľadávate vo viacerých jazykoch (napr. “modre tenisky, blue shoes”)
- Potrebujete širšie výsledky ako presné porovnávanie
- Chcete zoradené výsledky na základe relevantnosti
Použite “podobné ako” (Sémantické vyhľadávanie) keď:
- Vyhľadávate podľa významu alebo konceptu
- Nepoznáte presné kľúčové slová
- Chcete nájsť konceptuálne podobné položky
- Vaše vyhľadávanie je široké (napr. “športová obuv”)
Použite “ilike” (Porovnávanie vzorov) keď:
- Potrebujete presné čiastočné zhody
- Chcete použiť zástupné znaky (napr. “telefón%” pre “telefón”, “telefóny”, “puzdro na telefón”)
- Máte konkrétne hodnoty, ktoré sa majú presne zhodovať (napr. “50 bar”, “5 mm”)
- Porovnávate kódy alebo technické hodnoty
Kombinovanie typov vyhľadávania
Môžete kombinovať vyhľadávanie podľa kľúčových slov so sémantickým vyhľadávaním pre výkonné hybridné dotazy:
name similar to "outdoor gear" and has keywords 'waterproof'
Toto nájde položky, ktoré sú sémanticky podobné “outdoor gear” A obsahujú konkrétne kľúčové slovo “waterproof”.
Tipy pre efektívne vyhľadávanie podľa kľúčových slov
- Použite viacero kľúčových slov: Oddeľte výrazy medzerami pre nájdenie položiek obsahujúcich ktorýkoľvek z nich.
- Zahrňte jazykové variácie: Pre viacjazyčné katalógy zahrňte výrazy v relevantných jazykoch:
has keywords 'modre tenisky, blue shoes'. - Buďte konkrétni: Konkrétnejšie výrazy prinášajú relevantnejšie výsledky.
- Použite negáciu: Vylúčte nechcené výrazy pomocou
not has keywords 'discontinued'. - Kombinujte s filtrami: Zúžte výsledky pomocou ďalších podmienok, ako je cena, kategória alebo stav.
Riešenie problémov
Nevidím operátor “obsahuje kľúčové slová”
Operátor “obsahuje kľúčové slová” sa zobrazuje iba pre entity, pre ktoré boli v systémovom metamodeli nakonfigurované indexy BM25. Ak to potrebujete povoliť pre konkrétnu entitu, kontaktujte svojho administrátora.
Výsledky nie sú dostatočne relevantné
- Použite konkrétnejšie kľúčové slová
- Kombinujte s inými filtrami pre zúženie rozsahu
- Vyskúšajte sémantické vyhľadávanie (
similar to) pre porovnávanie založené na koncepte
Nové produkty sa nezobrazujú
Pracovník na pozadí spracováva text pre vyhľadávanie podľa kľúčových slov. Ak sa nedávno pridané položky nezobrazujú, počkajte chvíľu na dokončenie indexovania.
Vyhľadávanie je príliš široké
- Pridajte viac kľúčových slov pre zúženie výsledkov
- Kombinujte s presnými filtrami (kategória, značka, cenové rozpätie)
- Použite
ilikepre presné porovnávanie vzorov
Technické detaily
Vyhľadávanie podľa kľúčových slov používa rozšírenie PostgreSQL vchord_bm25 s indexovaním BM25. Každá entita s vyhľadávaním podľa kľúčových slov má:
- Stĺpec
_bm25_defaultukladajúci vyhľadávací vektor - Index BM25 pre rýchle fulltextové dotazy
- Nakonfigurovaný tokenizer (predvolený:
products_tokenizer_new)
Vyhľadávací dotaz je spracovaný prostredníctvom tokenizácie a konvertovaný na vektor BM25 pre efektívne porovnávanie.