Encyklopedia AI

Wyszukiwanie semantyczne (Semantic Search)

Wyszukiwanie semantyczne (semantic search) to technika przeszukiwania danych, która rozumie znaczenie i intencję zapytania, a nie tylko dopasowuje słowa kluczowe.

  • Technologia
  • 2 min czytania
  • Aktualizacja:

Działa dzięki embeddingom - wektorowym reprezentacjom tekstu, które umieszczają znaczeniowo podobne treści blisko siebie w przestrzeni matematycznej. Dzięki temu zapytanie „jak zautomatyzować newsletter" znajduje dokument o „systemie do mailingu", nawet jeśli nie dzielą ani jednego słowa. To fundamentalna technologia stojąca za RAG, bazami wiedzy AI i inteligentnymi wyszukiwarkami w firmach.

Tradycyjne wyszukiwanie (keyword search) porównuje ciągi znaków: szukasz „dom", system znajduje dokumenty zawierające słowo „dom". Nie znajdzie artykułu o „nieruchomościach", „mieszkaniach" czy „budynkach", chyba że te słowa też tam występują. To działa przy katalogowaniu, ale zawodzi przy pytaniach koncepcyjnych - a właśnie takie zadają użytkownicy systemów AI.

Wyszukiwanie semantyczne rozwiązuje ten problem przez embeddingi. Embedding to wektor (lista liczb) reprezentujący znaczenie tekstu w przestrzeni wielowymiarowej - zazwyczaj od 384 do 3072 wymiarów. Dwa teksty o podobnym znaczeniu mają embeddingi, które są blisko siebie (mierzona odległością cosinusową). Model embeddingowy (np. text-⁠embedding-⁠3-small od OpenAI, voyage-⁠3-lite od Anthropic/Voyage AI) zamienia każde zdanie, akapit czy dokument na taki wektor.

Jak to działa krok po kroku. (1) Wszystkie dokumenty w bazie wiedzy są przepuszczane przez model embeddingowy i zapisywane jako wektory w bazie wektorowej (np. Pinecone, Qdrant, Supabase pgvector). (2) Gdy użytkownik zadaje pytanie, ono też jest zamieniane na embedding. (3) Baza wektorowa znajduje N najbliższych dokumentów według odległości cosinusowej. (4) Te dokumenty są przekazywane do LLM jako kontekst - model odpowiada na podstawie znalezionych treści, a nie z pamięci. To jest właśnie fundament RAG (Retrieval-⁠Augmented Generation).

  • Modele embeddingowe - co wybrać. OpenAI oferuje text-⁠embedding-⁠3-small (tani, 1536 wymiarów) i text-⁠embedding-⁠3-large (droższy, 3072 wymiarów, lepsza jakość). Voyage AI (rekomendowane przez Anthropic) ma voyage-⁠3-lite i voyage-⁠3. Są też darmowe opcje lokalne: all-⁠MiniLM-⁠L6-⁠v2 (384 wymiary, bardzo szybki) czy multilingual-⁠e5-⁠large (dla treści wielojęzycznych). Dla polskich tekstów najlepiej sprawdzają się modele wielojęzyczne - text-⁠embedding-⁠3-small od OpenAI dobrze radzi sobie z polskim od 2024 roku.
  • Hybrid search - połączenie sił. W praktyce produkcyjnej rzadko używa się czystego wyszukiwania semantycznego. Lepsze wyniki daje hybrid search: równoległe wyszukiwanie (1) semantyczne (przez embeddingi) i (2) pełnotekstowe (BM25), a następnie połączenie wyników algorytmem Reciprocal Rank Fusion (RRF). Dzięki temu dokument, który zawiera dokładnie szukaną frazę, nie zostanie pominięty na rzecz semantycznie podobnego, ale mniej trafnego. Supabase, Pinecone i Qdrant wspierają hybrid search natywnie.
  • Chunking - dlaczego ma znaczenie. Jeden embedding reprezentuje jeden fragment tekstu (chunk). Jeśli wrzucisz cały 50-⁠stronicowy dokument jako jeden chunk, embedding będzie zbyt ogólny i nie znajdziesz konkretnego akapitu. Jeśli chunk będzie za mały (1 zdanie), stracisz kontekst. Optymalny rozmiar to 500-⁠1500 znaków na chunk z overlapem (nakładką) 10-⁠20% między sąsiednimi fragmentami. Narzędzia jak LangChain, LlamaIndex czy n8n mają wbudowane splittery do chunkowania.

Dla soloprzedsiębiorcy wyszukiwanie semantyczne to kluczowy komponent Mapy Kontekstu - bazy wiedzy, która zasila wszystkie prompty i agenty. Zamiast za każdym razem wklejać cały kontekst do promptu (co kosztuje tokeny i spowalnia), system sam znajduje tylko te fragmenty wiedzy, które są istotne dla danego zadania. To różnica między promptem o długości 50 tys. tokenów a trafnym promptem o długości 5 tys. - oszczędność czasu, pieniędzy i jakość odpowiedzi.

Najczęstsze pytania

Czy wyszukiwanie semantyczne zastępuje tradycyjne wyszukiwanie full-⁠text?

Nie zastępuje - uzupełnia. Tradycyjne wyszukiwanie full-⁠text (BM25, LIKE w SQL) jest niezastąpione przy dokładnych dopasowaniach: numery faktur, kody produktów, nazwy własne. Wyszukiwanie semantyczne przegrywa z full-⁠text, gdy szukasz konkretnego identyfikatora - embedding słowa „FVT-⁠2024-⁠07" będzie podobny do innych losowych ciągów. Dlatego profesjonalne systemy używają hybrid search: semantyczne do pytań koncepcyjnych, full-⁠text do precyzyjnych identyfikatorów, a wyniki są łączone.

Ile kosztuje wdrożenie wyszukiwania semantycznego dla mojej bazy wiedzy?

Dla soloprzedsiębiorcy z bazą do 10 tys. dokumentów - praktycznie nic poza czasem konfiguracji. Supabase (plan free) oferuje pgvector z limitem 500 MB. OpenAI text-⁠embedding-⁠3-small kosztuje $0.02 za 1 mln tokenów - zembeddingowanie całej Twojej bazy wiedzy to zazwyczaj mniej niż $0.50. Pinecone ma darmowy tier do 100 tys. wektorów. Qdrant Cloud - podobnie. Jeśli używasz n8n, możesz zbudować pipeline embeddingowy w 2-⁠3 godziny, bez pisania kodu. Jedyny realny koszt to Twój czas na dobre chunkowanie i przetestowanie jakości wyników.

Źródła

  1. Milvus: How do vector embeddings work in semantic search?milvus.io (otwiera się w nowej karcie)
  2. OpenAI: Embeddings Guideplatform.openai.com (otwiera się w nowej karcie)
  3. Supabase: pgvector - Vector Searchsupabase.com (otwiera się w nowej karcie)
  4. Cognity: Wyszukiwanie semantyczne i bazy wektorowe z LLMcognity.pl (otwiera się w nowej karcie)

Chcesz więcej takich konkretów?

Co niedzielę wysyłam jeden praktyczny mail o AI, sprzedaży wiedzy i budowaniu systemów, które realnie pomagają w pracy.

Archiwum wydań

„Ten newsletter nie jest nachalny, urzeka autentycznością, a osobiste historie Bartka są świetnym punktem odniesienia do moich własnych doświadczeń.”
Małgorzata BabskaMałgorzata Babskaarchitektka

Chcesz konkret, a nie ogólną rozmowę o AI?

W 30 minut przechodzimy przez Twój biznes i mówię wprost, co zrobiłbym najpierw.

Prywatność i cookies

Odwiedziny liczę anonimowo. Za Twoją zgodą włączę analitykę i marketing, żeby wiedzieć, co działa. Polityka prywatności

Kategorie plików cookies