ZATROLENĚ: Fulltextové vyhledávání v bazaru

Autor: Wolfsen | 19.10.2020 | 27

Dnes (v pondělí 19. 10. 2020) spouštíme nové vyhledávání inzerátů v Bazaru, jehož hlavní novinkou je opravdové fulltextové hledání v inzerátech.

Fulltextové vyhledávání nám na Zatrolených hrách (a tedy i v Bazaru) chybělo dlouhodobě, takže jsme jeho možnosti již nějakou dobu zkoumali. A minulý týden, kdy jsme z výkonových důvodů již definitivně museli zavést v Bazaru stránkování, eskalovala nutnost fulltextové hledání do Bazaru přidat.

Věříme, že toto nové fulltextové hledání dokáže nalézt inzeráty kvalitněji než dosud používaná obezlička CTRL + F v prohlížeči, která například nedokáže z logických důvodů hledat v textu inzerátu.

A když jsme se do úprav hledání pustili, tak jsme si také vyhodnotili, jak jsou která kritéria v původním hledání používána a zohlednili to v novém hledacím formuláři.

A jak se tedy formulář proměnil?

Přibylo fulltextové vyhledávání (kolonka Hledaná slova), které hledá vložená slova v názvu inzerátu, v názvech asociovaných her a v popisu inzerátu (NE v možnostech předání). Kromě toho poslední vložené slovo hledá i pouze na částečnou shodu.

Odstranili jsme minimálně využívané filtry pro hledání dle nabízeného SafeTrade, dle úrovně Bazaru a také dle měny.

Místo hledání podle měny (které z odstraněného trojlístku mělo alespoň nějakou používanost) zvažujeme zařadit relevantnější filtr podle země, kam je prodávající ochoten hru nebo doplněk zaslat.

Řazení inzerátů zůstává nezměněno, tj. je možné volit mezi řazením podle času vystavení a času do konce. Do těchto dvou možností řazení ještě zvažujeme přidat řazení dle kvality shody fulltextového hledání (jinou váhu shody má nález požadované fráze v nadpisu inzerátu a jinou v těle inzerátu atp.)

Statistiky používání kritérií v původním formuláři

Pro rozhodování o tom, jaká kritéria jsou používána a která spíše nikoli jsme použili data o 38 000 hledání v Bazaru za posledních cca 7 dní. A statistika vypadá následovně:

  • v 5 % (cca 1 900 zobr.) filtr dle kupujícího,
  • v 3,7 % (cca 1 400 zobr.) filtr her na Wishlistu
  • v 1,8 % (cca 700 zobr.) filtr doplňků ke hrám ve Sbírce
  • v 1,2 % (cca 450 zobr.) filtr dle typu inzerátu
  • a v 0,7 %  (cca 270 zobr.) dle měny.

Ostatní filtry (SafeTrade, úroveň bazaru) byly použity jen velmi výjimečně.

Zdánlivě nízká čísla používání hledání ukazují, že nejběžnějším vzorcem hledání je prostě procházení všech inzerátů. A naší hypotézou je, že pak část lidí prochází vše a „filtruje“ pomocí obrázků u her (aneb „co mě praští do očí“ ) a pak filtrace pomocí uvedené funkce prohlížeče použitím CTRL + F.

Fulltextové vyhledávání v dlouhodobé perspektivě

Kvůli této úpravě jsme museli pořídit další server, který je vyhrazený jen a pouze na fulltextové hledání. To by časem mělo umožnit některé již existující hledání vylepšit (např. našeptávač her, diskuse) a pak také přinést možnost vytvořit vyhledávání nová (např. hledání v soukromých zprávách).

Pořízení (resp. měsíční pronájem) tohoto serveru (tzv. VPS) nám umožnily peníze z poplatků v Bazaru.

Seznam úprav Zatrolených her

Sdílet s přáteli:

Komentáře

Možná ještě malá drobnost
Je to spuštěné v první verzi, která neumí českou morfologii slov (skloňování, časování), ale tuším jak na to a určitě to chci prozkoumat. Třeba z tohoto důvodu, když budete hledat "Arkh" tak větší shodu má zdánlivě paradoxně slovo "Arkhamu" než "Arkham".

A jsou i horší případy, kdy pak stávající verze fulltextu i nemusí něco najít (třeba pro slova, kdy 2. a další pády změní i základ slova -> lingvistici prominou, je to popsáno laicky :-). To se ale neprojeví tolik v Bazaru, ale například v diskusích a soukromých zprávách již ano. Tam je doplnění této morfologie důležité (a jsem sám zvědav, jak se popereme se Slovenštinou, bude to výzva).

19.10.2020 10:20:01

A co ukončené inzeráty?
Bude někdy možné hledat i v ukončených inzerátech?
--------------------------------------------------------
zarytý fanda, sběratel a propagátor deskových her

19.10.2020 11:49:23

Ukončené inzeráty
Technicky tomu asi nic zásadního nebrání a určitě je v plánu zlepšit takové ty další záložky, kde jsou dnes záložky pro všechny moje inzeráty historicky, pro moje příhozy, ale chybí tam třeba seznam inzerátů, které jsem "vyhrál". Takže třeba o tomto uvažuji a s novým vyhledávacím serverem toto možné bude.

19.10.2020 12:10:08

diakritika a slova bez prvnich pismen
Zkousel jsem zadat do vyhledavace "unikovka" (bez diakritiky), ale nic to nenaslo. Zkusil jsem to obejit tak, ze jsem zadal jen "nikovka", ale taky bez uspechu. Samozrejme, jak je popsano vyse, zadani treba "únikovk" funguje spravne.

19.10.2020 14:20:20

Chybějící první písmeno slova...
Tohle mě ani nenapadlo řešit se přiznám. Tohle je asi ještě vyšší dívčí, protože velké vyhledávače typu Seznam/Google to řeší pomocí detekce překlepů a nabidnou hledání slova s doplněným prvním písmenem (i jsem to teď na Seznamu ověřil :-).

Nicméně to s vs bez diakritiky je zajímavý problém. Který ve finále řešit jde asi jednoduše. Ale nejdříve vyzkouším přidání morfologie češtiny, tak by to totiž mohla řešit taky. Je to totiž další úroveň té fulltextové technologii, kde se dají programovat vlastní "analyzátory" textu. Teď máme ten úplně základní, který tyto pokročilejší techniky neumí/nedělá.

Jako možnosti, které přidání technologie na Zatrolenky přineslo, jsou obrovské, ale jejich využití bude chvíli trvat. Učím se to v zápalu boje (je to cca 10 dní, co jsem o té technologii jenom věděl, že existuje a co asi tak principielně umí :-).

19.10.2020 15:00:04

A co pokročilejší způsob vyhledávání
Moje největší přání by bylo prostě podpora regulárních výrazů obecně, ale chápu proč to žádný online vyhledávač co jsem zatím viděl nedělá :) Tak aspoň nějaká podmnožina funkcí: podle předchozího komentáře s únikovkami soudím, že implementace hledání je komplikovanější než jen něco jako String.contains(string.toLowerCase()) nebo LIKE %abc% ... tedy co to zatím umí a co je nebo není v plánu?

- case insensitive a ignorování diakritiky
- vynechání stringu (NOT nebo -)
- přesné vyhledávání ignorující morfologii (uvozovky)
- žolíky (*/+) podmíněné (aspoň jeden znak) i nepodmíněné ()
- vyhledávání obou či jen jedné fráze (AND/OR)

Chápu že bazar všechny tyhle funkce zas až tak nepotřebuje ve srovnání třeba s vyhledáváním v diskuzích... ale pokud se teď vybírá a vyvíjí engine na kterém je ten search postavený, tak proč nevybrat něco, co tyhle věci umí.

19.10.2020 16:26:38

Chybička
Pokud zadám současně Hledat pouze hry z mého Wishlistu (her ve Wishlistu: 19) a
Hledat pouze doplňky k hrám z mé Sbírky her (her ve Sbírce: 49) tak mi nyní nic nenajde. Ve starém způsobu to fungovalo a zobrazilo aukce z obou seznamů.
Bude to opraveno? Díky

19.10.2020 18:22:02

Ajtakrajta
Ahoj, děkuju moc za upozornění. V rámci zápalu boje s novou technologií jsem přehlédl, že mezi těmito 2 kritérii bylo v původním hledání NEBO a teď jsem tam bouchnul A SOUČASNĚ. Což z logiky věci nemůže nic nacházet.

Píšu si a opravím co nejdříve. Teď aktuálně tedy makám na tom, aby hledání umělo lépe česky (zmiňované skloňování / časování slov). A už na to připravuji data a zítra bych snad mohl spustit i toto chytřejší hledání.

Pak bych se podíval na to, jak toto opravit. Určitě by to mělo jít.

Díky moc za upozornění na chybku. Omlouvám se za ní...

19.10.2020 22:10:13

Chybička ohlášená Darkwem
Tak chybka prozkoumána, byla jasná a už jsem se i naučil, jak v nové fulltextové technologii udělat i to OR. Tedy opraveno.

Díky moc ještě jednou za upozornění.

20.10.2020 22:11:31

Poďakovanie
Chcem poďakovať adminom za túto funkcionalitu. Vyhľadávanie tu dlhodobo chýbalo, a som rád, že sa podarilo ho implementovať.

----------------------------------
herný klub NITHRANIA z Nitry

22.10.2020 08:52:50

Statistika
Velmi zajimava statistika, diky za ni :-)

22.10.2020 14:06:19

Chyba filtru
Když si nechám vypsat jen inzeráty "kup teď vypíše mi to dvě stránky. Při přechodu na druhou stránku mi to změní nastavení filtru a vypíše mi to pouze aukce přičemž se nacházím na stránce 2 ze 6.
Takže stránku to přehodí správně, ale změní to typ vypsaných inzerátů (vždy na aukce, nikdy na všechny).
Dělá to jen, když ve filtru zvolím pouze "kup teď", když si nechám vypsat pouze aukce nebo vše, tak je to ok.

24.10.2020 13:39:39

El Ďábel
Díky za upozornění. Zajímavé je, že tato chyba byla i ve starém filtrování a musela tam být roky. Každopádně opraveno.

25.10.2020 14:00:39

Vybíráme z Bazaru

Hra o Trůny: Desková hra (druhá edice)
Hra o Trůny: Desková hra (druhá edice)
Akt. cena: 500 Kč
Končí za: 1 den

Velké herní akce

Kalendář všech akcí >>

Offcanvas