pplx-embed: Nowoczesne modele osadzeń do wyszukiwania w sieci

Dziś udostępniamy pplx-embed-v1 i pplx-embed-context-v1, dwa najnowocześniejsze modele osadzeń tekstowych stworzone do rzeczywistego wyszukiwania w skali internetowej.

AutorzyPerplexity Research

Dzisiaj udostępniamy pplx-embed-v1 oraz pplx-embed-context-v1, dwa najnowocześniejsze modele osadzeń tekstowych stworzone do rzeczywistego wyszukiwania w skali internetowej. Model pplx-embed-v1 jest zoptymalizowany pod kątem standardowego gęstego wyszukiwania tekstu, podczas gdy pplx-embed-context-v1 osadza fragmenty tekstu z uwzględnieniem otaczającego kontekstu na poziomie dokumentu.

Zarówno pplx-embed-v1, jak i pplx-embed-context-v1 są dostępne w skalach parametrów 0,6 mld i 4 mld. Modele 0,6 mld są przeznaczone do lekkiego generowania osadzeń o niskim opóźnieniu, podczas gdy modele 4 mld maksymalizują jakość wyszukiwania. W naszych ewaluacjach rodzina pplx-embed przewodzi w szeregu publicznych benchmarków, w tym MTEB(Multilingual, v2), BERGEN, ToolRet i ConTEB. Co więcej, pplx-embed-v1 zapewnia najlepsze w swojej klasie wyniki w naszych wewnętrznych benchmarkach w skali internetowej: PPLXQuery2Query i PPLXQuery2Doc.

Modele generują osadzenia INT8 oraz binarne, redukując wymagania dotyczące pamięci masowej odpowiednio o 4x i 32x w porównaniu do FP32. Ta zwartość sprawia, że przechowywanie i wyszukiwanie osadzeń w skali internetowej staje się znacząco bardziej praktyczne.

Model

Wymiary

Kontekst

MRL

Kwantyzacja

Instrukcja

Pooling

pplx-embed-v1-0.6B

1024

32K

Tak

INT8/BINARNE

Nie

Średnia

pplx-embed-v1-4B

2560

32K

Tak

INT8/BINARNE

Nie

Średnia

pplx-embed-context-v1-0.6B

1024

32K

Tak

INT8/BINARNE

Nie

Średnia

pplx-embed-context-v1-4B

2560

32K

Tak

INT8/BINARNE

Nie

Średnia

wymiary modelu pplx-embed, długość kontekstu, kwantyzacja i konfiguracja poolingu.

Zapoznaj się z naszym raportem technicznym, modelami Hugging Face oraz dokumentacją API.

Motywacja

Gęste osadzenia tekstu mapują zapytania i dokumenty na wspólną przestrzeń semantyczną, w której wyszukiwanie sprowadza się do wyszukiwania przybliżonych najbliższych sąsiadów. W skali Perplexity osadzenia stanowią pierwszy etap naszego potoku wyszukiwania, określając, które dokumenty z miliardów stron internetowych zostaną rozważone przez kolejne systemy rankingu i modele językowe.

Większość wiodących modeli osadzeń bazuje obecnie na modelach LLM typu „tylko dekoder” z kauzalnym maskowaniem uwagi, gdzie każdy token może odnosić się tylko do poprzedzających go tokenów. W przypadku wyszukiwania jest to fundamentalne ograniczenie: zrozumienie fragmentu tekstu często wymaga kontekstu dwukierunkowego. Rozwiązujemy to poprzez dalsze trenowanie oparte na dyfuzji, które przekształca kauzalny model LLM w enkoder dwukierunkowy. Pełna dwukierunkowa atencja umożliwia uśrednianie (mean pooling) wszystkich reprezentacji tokenów i wspiera późne fragmentowanie (late chunking) dla osadzeń kontekstowych, gdzie osadzenie każdego fragmentu jest informowane przez pełny dokument, w którym występuje.

W skali internetowej przechowywanie osadzeń w formacie FP32 jest niezwykle kosztowne. Zamiast stosować kwantyzację jako kompresję post-hoc, nasze modele wykorzystują trenowanie uwzględniające kwantyzację, aby natywnie generować osadzenia INT8, redukując przestrzeń dyskową o 4x bez utraty wydajności. Kwantyzacja binarna redukuje zapotrzebowanie na pamięć o 32x przy minimalnej utracie jakości, szczególnie w skali 4B.

Wiele nowoczesnych modeli osadzeń wymaga instrukcji dodawanych jako prefiksy do każdego wejścia. Chociaż może to przynieść niewielką poprawę w wynikach benchmarków, w praktyce powoduje utrudnienia: niespójne instrukcje między czasem indeksowania a czasem zapytania mogą niepostrzeżenie pogarszać jakość wyszukiwania, a wybór odpowiedniego monitu dla każdego przypadku użycia staje się kolejnym wyzwaniem. Nasze modele nie wymagają instrukcji, co sprawia, że ich integracja jest prosta.

Trenowanie

Modele pplx-embed-v1 oraz pplx-embed-context-v1 są trenowane w ramach wieloetapowego procesu, który stopniowo kształtuje reprezentacje tekstowe na potrzeby wyszukiwania.

Wieloetapowy potok treningowy oparty na programie nauczania. Łączymy cztery odrębne paradygmaty treningowe w układzie rozgałęzionym, po czym następuje etap łączenia i selekcji.

Dalsze trenowanie dyfuzyjne

Rozpoczynamy od wstępnie wytrenowanych modeli bazowych Qwen3 (0,6 mld i 4 mld) i przekształcamy je z kauzalnych dekoderów w enkodery dwukierunkowe poprzez wyłączenie kauzalnej maski atencji i trenowanie z celem odszumiania dyfuzyjnego. W przeciwieństwie do modeli autoregresyjnych, które przewidują tokeny od lewej do prawej, trenowanie dyfuzyjne zmusza model do rekonstrukcji losowo zamaskowanych tokenów przy użyciu pełnego dwukierunkowego kontekstu wokół każdej zamaskowanej pozycji. Oznacza to, że zanim rozpocznie się kontrastowe dostrajanie, reprezentacje już kodują semantykę dwukierunkową, zapewniając solidniejszą podstawę do wyszukiwania niż punkt startowy kauzalny. Trenujemy wstępnie na około 250 miliardach tokenów tekstu wielojęzycznego obejmującego 30 języków. W badaniach ablacyjnych szkielety wytrenowane dyfuzyjnie osiągają znacznie niższą stratę w uczeniu kontrastowym niż ich kauzalne odpowiedniki, co przekłada się na około 1 punkt procentowy poprawy w zadaniach wyszukiwania.

Uczenie kontrastowe

Po wstępnym treningu przeprowadzamy trzy etapy uczenia kontrastowego. Trenowanie par ustala fundamentalne dopasowanie semantyczne między zapytaniami a dokumentami za pomocą funkcji straty InfoNCE z negatywami wewnątrz partii (in-batch). Przy dużych rozmiarach partii niektóre negatywy in-batch są w rzeczywistości bliskimi duplikatami pozytywów, dlatego stosujemy maskę opartą na podobieństwie, aby zapobiec korupcji sygnału treningowego przez te fałszywe negatywy. Trenowanie przebiega fazami — najpierw tylko w języku angielskim, potem międzyjęzykowo, a na końcu w pełni wielojęzycznie — stopniowo budując możliwości, a nie wszystko naraz. Następnie trenowanie kontekstowe uczy model semantyki na poziomie fragmentu w odniesieniu do kontekstu dokumentu, wykorzystując podwójną funkcję straty, która łączy kontrast sekwencyjny i in-batch zarówno na poziomie fragmentu, jak i dokumentu — ten etap prowadzi do powstania pplx-embed-context-v1. Ostatecznie trenowanie trójek (triplet training) z wydobytymi trudnymi negatywami doprecyzowuje granice między podobnymi, ale nieistotnymi dokumentami. Ostateczna wersja pplx-embed-v1 jest uzyskiwana poprzez łączenie punktów kontrolnych kontekstowych i trójek za pomocą sferycznej interpolacji liniowej (SLERP).

Natywna kwantyzacja

W trakcie wszystkich etapów kontrastowych osadzenia są kwantyzowane do INT8 zarówno podczas treningu, jak i wnioskowania. Stosujemy operację średniego poolingu opartego na funkcji tanh, po której następuje zaokrąglenie, oraz używamy estymacji gradientu typu straight-through, aby przeprowadzić wsteczną propagację przez nieróżniczkowalny krok kwantyzacji. Zapewnia to, że model od początku uczy się reprezentacji zoptymalizowanych pod kątem zredukowanej precyzji, zamiast cierpieć z powodu degradacji wynikającej z kompresji post-hoc. W przypadku kwantyzacji binarnej modele 4B są wyraźnie bardziej odporne niż 0,6B: ich większy wymiar osadzenia (2560 vs 1024) zachowuje więcej informacji po binaryzacji, ograniczając spadek wydajności do poniżej 1,6 punktu procentowego w porównaniu do 2–4 punktów w mniejszej skali.

Publiczne benchmarki

Wydajność wyszukiwania w MTEB (wielojęzyczny, v2). Modele pplx-embed pokazane w wariantach precyzji INT8 i BINARY. Nasz model 4B INT8 osiąga konkurencyjną jakość wyszukiwania, przechowując 4 razy więcej stron na GB niż alternatywy FP32. Wariant binarny przechowuje 32 razy więcej stron na GB przy zaledwie 1,5-punktowym spadku wydajności.

W benchmarku wyszukiwania MTEB (wielojęzycznym, v2), pplx-embed-v1-4B (INT8) osiąga średni wynik nDCG@10 na poziomie 69,66%, dorównując Qwen3-Embedding-4B (69,60%) i przewyższając gemini-embedding-001 (67,71%), jednocześnie wymagając znacznie mniej miejsca na osadzenie. Nasz model 0,6B przewyższa swój odpowiednik Qwen3 w tej samej skali parametrów.

Wyniki wyszukiwania kontekstowego w benchmarku ConTEB. Po lewej: modele kontekstowe. Po prawej: modele niekontekstowe. pplx-embed-context-v1-4B (INT8) osiąga najwyższy wynik 81,96, a za nim plasują się voyage-context-3 (79,45) i pplx-embed-context-v1-0.6B (INT8) z wynikiem 76,53.

W przypadku wyszukiwania kontekstowego pplx-embed-context-v1-4B wyznacza nowy standard w benchmarku ConTEB ze średnim wynikiem nDCG@10 na poziomie 81,96%, przewyższając voyage-context-3 (79,45%) oraz Anthropic Contextual (72,4%). Dzięki trenowaniu reprezentacji na poziomie fragmentu, które uwzględniają semantykę na poziomie dokumentu, nasze modele znajdują właściwy fragment, nawet gdy jego znaczenie zależy od otaczającego kontekstu.

Oceniamy również nasze modele w rozwiązaniach RAG typu end-to-end przy użyciu benchmarku BERGEN, gdzie wydobyte fragmenty są przekazywane do modelu językowego w celu wygenerowania odpowiedzi. pplx-embed-v1-4B przewyższa Qwen3-Embedding-4B w czterech z pięciu ocenianych zadań odpowiadania na pytania. Warto zauważyć, że pplx-embed-v1-0.6B przewyższa większy model Qwen3-Embedding-4B w trzech z pięciu zadań, pokazując, że nasz mniejszy model może dorównać lub przewyższyć konkurenta o znacznie większej skali parametrów w praktycznych ustawieniach RAG. Więcej szczegółów na temat tej ewaluacji znajduje się w raporcie technicznym.

Rzeczywiste wyszukiwanie na dużą skalę

Publiczne benchmarki są przydatne, ale nie w pełni oddają wyzwania związane z wyszukiwaniem w skali internetowej: zapytania długiego ogona, zaszumione dokumenty i zmiany dystrybucji, które charakteryzują środowiska produkcyjne. Aby zmierzyć to, co jest istotne w praktyce, zbudowaliśmy dwa wewnętrzne benchmarki z udziałem do 115 tys. rzeczywistych zapytań ocenianych względem ponad 30 milionów dokumentów pochodzących z ponad miliarda stron internetowych. PPLXQuery2Query ocenia, czy model osadzeń potrafi zidentyfikować semantycznie równoważne zapytania z rzeczywistego ruchu wyszukiwania; PPLXQuery2Doc mierzy wyszukiwanie dokumentów z korpusu 30 mln stron.

W benchmarku PPLXQuery2Query (korpus 2,4 mln) model pplx-embed-v1-4B osiąga 73,5% Recall@10, przewyższając Qwen3-Embedding-4B (67,9%) o 5,6 punktu procentowego. Nasz model 0,6B osiąga 71,1% Recall@10, znacznie przewyższając BGE-M3 (61,8%) i Qwen3-Embedding-0.6B (55,1%).

Wielojęzyczne benchmarki wyszukiwania PPLXQuery2Query (korpus 2,4 mln) i PPLXQuery2Doc (korpus 30 mln). pplx-embed-v1-4B (INT8) oraz pplx-embed-v1-0.6B (INT8) prowadzą w obu benchmarkach, demonstrując wysoką trafność na dużą skalę w wyszukiwaniu pierwszego etapu.

W wielojęzycznym zadaniu PPLXQuery2Doc (korpus 30 mln), pplx-embed-v1-4B osiąga 91,7% Recall@1000 w porównaniu do 88,6% dla Qwen3-Embedding-4B. Wysoki wskaźnik Recall przy dużych głębokościach wyszukiwania ma kluczowe znaczenie dla modeli osadzeń pełniących funkcję wstępnego wyszukiwania w wieloetapowych potokach rankingowych, gdzie maksymalizacja liczby istotnych kandydatów przekazywanych do kolejnych systemów rerankujących bezpośrednio wpływa na ostateczną jakość wyników.

Rozpoczęcie pracy

Wszystkie modele są dostępne na Hugging Face (na licencji MIT) oraz za pośrednictwem Perplexity API. Wspieramy wnioskowanie poprzez Transformers, SentenceTransformers, Text Embeddings Inference oraz ONNX. Pełne szczegóły dotyczące każdej z opcji można znaleźć w kolekcji modeli Hugging Face.

Pełne szczegóły techniczne i kompletne wyniki ewaluacji znajdują się w naszym raporcie technicznym.

Cytowanie

BibTeX
@online{perplexity2026PplxEmbedStateOfTheArtEmbeddingModelsForWebScaleRetrieval,
  author = {{Perplexity} and Sedigheh Eslami and Maksim Gaiduk and Markus Krimmel and Louis Milliken and Bo Wang and Denis Bykov},
  title = {{pplx-embed: State-of-the-art embedding models for web-scale retrieval}},
  date = {2026-02-26},
  url = {https://perplexity.coolkeypoint.com/hub/blog/pplx-embed-state-of-the-art-embedding-models-for-web-scale-retrieval}
}