Sök och produktupptäckt: från Elasticsearch till semantisk sök
Hur vår sökfunktion vuxit fram: byggd på Elasticsearch, med konfigurerbara sökfält, filter och facetter, reindexering utan driftstopp och numera semantisk hybrid-sök.

Sök är ofta den snabbaste vägen till köp. En besökare som vet vad hon letar efter vill skriva några tecken och få rätt produkt direkt, medan den som bara browsar behöver kunna smalna av med filter tills sortimentet känns hanterbart. Vi har byggt sökfunktionen i plattformen steg för steg, och den vilar idag på en genomtänkt grund. Här är en genomgång av hur den fungerar och vart den är på väg.
Grunden: sök på Elasticsearch
Själva sökmotorn bygger på Elasticsearch. Produkter exporteras till ett sökindex som är byggt för snabba fritextsökningar och för att kunna filtrera och gruppera stora sortiment på millisekunder. Vi har lagt mycket arbete på vad som faktiskt hamnar i indexet, till exempel kategorier, varianter, sökord och externa id:n, så att en sökning matchar på det kunden rimligen skriver. Vi ser också till att produkter som inte ska synas i butiken heller inte indexeras, så att sökresultatet speglar det faktiska, köpbara sortimentet.
Träffsäkerhet: fuzziness, exakt match och delsträngar
Bra sök handlar om att förlåta det mänskliga och samtidigt belöna det exakta. Vi har därför arbetat med flera lager av matchning:
- Feltolerans (fuzziness), så att en felstavning eller en bokstav fel ändå ger relevanta träffar.
- Exakt matchning, så att den som skriver ett precist artikelnummer eller namn får just den produkten högst upp.
- Delsträngssökning på artikelnummer, så att en del av ett artikelnummer räcker för att hitta rätt.
- Sökning på variantnamn, så att en specifik variant (färg, storlek eller modell) går att nå direkt, inte bara huvudprodukten.
Utöver det har vi finjusterat relevansen löpande, bland annat hur namn med snedstreck delas upp och hur flera sökord separerade med komma hanteras, så att listan känns rätt sorterad snarare än bara fylld med träffar.
Konfigurerbara sökfält
Alla butiker söker inte på samma sätt. En handlare vill kanske att artikelnummer väger tyngst, en annan att produktnamn och beskrivning gör det. Därför går sökfälten att konfigurera per butik, med ett eget gränssnitt i admin för att styra vilka fält som ska vägas in. Samma tanke finns i admin själv, där listor för produkter, ordrar och kunder har en väljare för vilket fält man söker i. Sök blir på så vis något man ställer in efter sitt sortiment, inte en fast mall.
Filter och facetter
För den som browsar är filtren minst lika viktiga som sökrutan. Plattformen har ett omfattande stöd för filter och facetter i butiken: attributfilter, prisfilter, färgprickar, lagerstatus och produkttyp, med möjlighet att gruppera värden till en basnivå och att samla udda värden under en egen etikett. Filtren går att styra i detalj: sorteringsordning för filtervärden, sökbara kryssrutelistor och hur de fälls ihop. Valen speglas i webbadressen så att ett filtrerat läge kan sparas och delas, och uppdateringarna sker optimistiskt så att listan svarar direkt medan resultatet hämtas.
Reindexering utan driftstopp
Ett sökindex behöver byggas om ibland, till exempel när fälten ändras. Det brukar vara ett känsligt moment, men hos oss sker det utan driftstopp: ett nytt index byggs upp bredvid det gamla och tas i bruk först när det är klart, med tydliga förloppsmeddelanden på vägen. När indexets struktur ändras kan ombyggnaden dessutom ske automatiskt, så att butiken alltid söker mot rätt data utan manuellt handpåläggande.
Nästa steg: semantisk hybrid-sök
Det senaste steget är semantisk sök. Genom att komplettera den klassiska textmatchningen med språkförståelse kan sök förstå avsikt och närliggande formuleringar, inte bara exakta ord. Vi kör det som en hybrid: den beprövade Elasticsearch-matchningen i botten, med ett semantiskt lager ovanpå som fångar det kunden menar när orden inte matchar bokstavligt. Det gör produktupptäckten mer förlåtande för den som inte känner till exakt terminologi, utan att tumma på precisionen för den som gör det.
Vill du veta hur sök och filter kan ställas in för just ditt sortiment? Hör gärna av dig till oss, så går vi igenom det tillsammans.
← Tillbaka till nyheter
Läs vidare
Fler inlägg att läsa
Kontakt
Redo att prata e-handel?
Boka 30 minuter med oss för en genomgång av plattformen och vad den kan göra för din affär. Vi visar konkreta exempel från liknande kunder.
Boka demo →
Nexta AB · Kungsgatan 2A · 652 24 Karlstad


