Wdrożyliśmy silnik rekomendacji oparty na LLM dla sklepu z 2,1 mln produktów. W ciągu 3 miesięcy konwersja wzrosła o 34%, a średnia wartość koszyka o 18%.
Wyzwanie
Klient prowadził sklep internetowy z 2,1 miliona produktów w kilkunastu kategoriach. Dotychczasowy system rekomendacji oparty na collaborative filtering działał poprawnie dla popularnych produktów, ale całkowicie zawodził w przypadku długiego ogona katalogu — czyli ok. 80% asortymentu.
Nowe produkty trafiały na „ślepe miejsce" algorytmu: bez historii zakupów nie pojawiały się w żadnych rekomendacjach przez pierwsze tygodnie od dodania. Klient szacował, że przez ten efekt traci ok. 20–25% potencjalnych przychodów z nowych pozycji.
Dodatkowym wyzwaniem było tempo zmian katalogu — kilkaset nowych SKU dziennie — oraz wielojęzyczność opisów (PL, EN, DE). System musiał działać w czasie rzeczywistym przy obciążeniu kilkuset zapytań na sekundę.
Rozwiązanie
Zaproponowaliśmy podejście hybrydowe łączące semantic search z personalizacją opartą na historii zakupów.
W pierwszym kroku zbudowaliśmy pipeline generowania embeddings dla całego katalogu. Każdy produkt jest reprezentowany przez wektor semantyczny (sentence-transformers, model wielojęzyczny) obliczany przy dodaniu i aktualizowany przy zmianie opisu. Wektory przechowywane są w bazie Qdrant, co pozwala na wyszukiwanie ANN w czasie poniżej 20 ms.
Drugi element to silnik rekomendacji RAG: dla każdego użytkownika łączymy embedding jego historii zakupów z wektorem aktualnie przeglądanego produktu i pobieramy Top-K najbliższych sąsiadów z całego katalogu — włącznie z produktami dodanymi tego samego dnia. Re-ranking uwzględnia popularność, marżę i dostępność.
Integracja z istniejącą platformą odbyła się przez REST API z SLA 50 ms p95. Wdrożenie nie wymagało zmian w backendzie sklepu.
Wyniki
A/B test przez 6 tygodni na 50% ruchu potwierdził statystycznie istotne wzrosty przed pełnym rolloutem.
Konwersja wzrosła o 34% w grupie testowej w porównaniu do kontrolnej. Średnia wartość koszyka wzrosła o 18%. Szczególnie wyraźny był efekt w nowych produktach — ich widoczność w rekomendacjach wzrosła 7-krotnie w pierwszym tygodniu od dodania.
System obsługuje 400+ zapytań/s przy latencji p95 = 38 ms. Całkowity czas od kickoffu do wdrożenia produkcyjnego: 11 tygodni. ROI projektu klient osiągnął po 4 miesiącach od uruchomienia.
Projekt był dla nas interesującym przykładem tego, jak dobrze postawione pytanie zmienia zakres rozwiązania. Klient przychodził z problemem „nasz system rekomendacji jest słaby" — a okazało się, że właściwym pytaniem było „jak sprawić, żeby każdy produkt w katalogu miał szansę trafić do odpowiedniego klienta od pierwszego dnia". To fundamentalnie inna perspektywa.
Pracowaliśmy ramię w ramię z zespołem inżynierskim klienta przez całe 11 tygodni. Nie weszliśmy, nie dostarczyliśmy czarnej skrzynki i nie wyszliśmy — zorganizowaliśmy transfer wiedzy, napisaliśmy dokumentację operacyjną i przeszkoliliśmy team z obsługi pipeline'u embeddings. System, który zostawiliśmy, klient potrafi dziś rozwijać samodzielnie.
Jedną z największych niespodzianek był efekt odkrycia katalogu — produkty, które latami leżały niezauważone w długim ogonie, nagle zaczęły się sprzedawać. Kilka kategorii odnotowało wzrosty sprzedaży przekraczające 60% wyłącznie dzięki temu, że rekomendacje zaczęły je uwzględniać. To coś, czego żadne ręczne tagowanie ani merchandising nie byłyby w stanie osiągnąć w tym tempie.
Chcesz podobnych wyników?
Porozmawiajmy o Twoim projekcie. Pierwsze spotkanie jest bezpłatne.