Osadzenia
Szybka definicja
Osadzenie to lista liczb (wektor), która reprezentuje znaczenie tekstu, obrazu lub innego elementu, tak że podobne elementy mają bliskie wektory. Osadzenia to to, co umożliwia wyszukiwanie według znaczenia.
Na tej stronie
Jak działają osadzenia
Model osadzenia odczytuje tekst i generuje wektor o stałej długości, zazwyczaj od kilkuset do kilku tysięcy liczb. Model jest trenowany tak, aby teksty o pokrewnych znaczeniach znajdowały się blisko siebie w tej przestrzeni: „polityka zwrotów” i „jak mogę odzyskać swoje pieniądze?” nie dzielą prawie żadnych słów, ale produkują bliskie wektory.
Pomysł sięga wektorów słów, takich jak word2vec (Mikolov i współpracownicy, 2013), które nauczyły się, że słowa pojawiające się w podobnych kontekstach mają podobne znaczenia. Modele na poziomie zdań, takie jak Sentence-BERT (2019), rozszerzyły to na całe zdania i fragmenty, co jest tym, czego potrzebują wyszukiwanie i odpowiadanie na pytania.
Do czego są używane
Osadzenia zasilają wyszukiwanie semantyczne: porównują wektor pytania z wektorami przechowywanych fragmentów i zwracają najbliższy. Są krokiem wyszukiwania w generacji wspomaganej wyszukiwaniem (RAG). Służą również do grupowania podobnych rozmów, wykrywania duplikatów, rekomendowania podobnych produktów oraz kierowania wiadomości do odpowiedniego tematu.
Modele osadzeń wielojęzycznych umieszczają pytanie w języku francuskim i fragment w języku angielskim blisko siebie, gdy oznaczają to samo, co pozwala jednej bazie wiedzy obsługiwać klientów w wielu językach.
Praktyczne punkty
Wektory z różnych modeli nie są porównywalne: jeśli zmienisz model osadzenia, każdy przechowywany fragment musi być ponownie osadzony. Osadzenia uchwycają znaczenie, a nie dokładne wartości, więc są słabe w precyzyjnych filtrach, takich jak zakres cenowy czy odniesienie do produktu — te wymagają uporządkowanych pól lub wyszukiwania słów kluczowych. Długie dokumenty muszą być dzielone na fragmenty przed osadzeniem, ponieważ jeden wektor dla całego podręcznika zaciera jego treść.
Modele osadzeń różnią się również zasięgiem językowym, wymiarem (a tym samym kosztem przechowywania) oraz miejscem, w którym są hostowane.
Osadzenia w AI SmartTalk
Każdy asystent AI SmartTalk używa jednego modelu osadzenia dla całej swojej wiedzy. Nowe asystenty domyślnie korzystają z wielojęzycznego modelu hostowanego w UE, a modele osadzeń OpenAI są również dostępne. Wektory są przechowywane w PostgreSQL z pgvector i łączone z wyszukiwaniem słów kluczowych oraz trigramów, aby odniesienia do produktów i dokładne terminy były znajdowane tak niezawodnie, jak parafrazowane pytania.
Najczęściej zadawane pytania
Jaka jest różnica między osadzeniem a tokenem?
Token to fragment tekstu, mniej więcej fragment słowa, który model odczytuje. Osadzenie to wektor liczb, który reprezentuje znaczenie — tokenu, zdania lub całego fragmentu.
Czy osadzenia są tym samym co baza danych wektorów?
Nie. Osadzenia to wektory; baza danych wektorów lub indeks je przechowuje i szybko znajduje najbliższe.
Czy mogę później zmienić modele osadzeń?
Tak, ale każdy przechowywany element musi być ponownie osadzony z nowym modelem, ponieważ wektory z różnych modeli żyją w różnych przestrzeniach i nie mogą być porównywane.