Multimodální embeddingy za hranicí jediného vektoru
Nová rodina modelů late interaction pro textové a obrazové vyhledávání se sdíleným embeddingovým prostorem napříč velikostmi modelů.
Od vydání pplx-embed-v1 v únoru pracujeme na nové generaci embeddingových modelů. Minulý týden jsme představili náš nový kontextový embeddingový model, pplx-embed-v2-context. Dnes rozšiřujeme tuto rodinu o pplx-embed-v2-late, soubor modelů typu late interaction. Vedle silnějších možností vyhledávání jsou tyto modely první, které kombinují tři klíčové vlastnosti:
- Multi-vektorové reprezentace. Místo toho, aby tyto modely každou vstupní položku komprimovaly do jediného vektoru, uchovávají vektory na úrovni tokenů pro jemnější porovnávání dotazu a dokumentu. To umožňuje, aby různé části dotazu odpovídaly různým částem dokumentu, a zachovává detaily, které jsou obzvlášť cenné pro multimodální vyhledávání.
- Podpora textové i obrazové modality. Kromě textově-textových možností vyhledávání našich předchozích modelů tyto nové modely zvládají i textově-obrazové vyhledávání, takže mohou přímo prohledávat rendrované stránky PDF bez nutnosti OCR nebo parsovaného textu.
- Sdílený embeddingový prostor. Uvádíme dvě velikosti modelu, 0,6B a 9B, abychom podpořili různé požadavky na kvalitu, latenci a výpočetní výkon. Každý lze používat samostatně, ale sdílený embeddingový prostor také umožňuje menšímu modelu dotazovat index vytvořený větším modelem, čímž se kombinuje kvalitnější embedding dokumentů s levným a rychlým inferenčním výpočtem při dotazu.
Tyto nové modely dosahují špičkových výsledků v řadě benchmarků pro vizuální a textové vyhledávání i v úlohách agentního zodpovídání otázek. Za zmínku stojí, že v ViDoRe (V3), předním benchmarku pro vyhledávání vizuálních dokumentů, se náš model 0.6B vyrovná modelům s pětinásobným počtem aktivních parametrů. Oba modely jsou veřejně dostupné na Hugging Face. Podrobnější informace o metodice a výsledcích hodnocení najdete v naší technické zprávě.
Od jediného vektoru k late interaction
Systémy pro vyhledávání musí najít rovnováhu mezi efektivitou a mírou interakce mezi dotazy a dokumenty. Dense embeddingové modely kódují každý dotaz i dokument nezávisle, což umožňuje jejich porovnání pomocí levného skalárního součinu. To činí praktickým přibližné vyhledávání nejbližších sousedů (ANN) nad miliardami dokumentů. Na opačném konci spektra cross-encodery zpracovávají dotaz a dokument společně, což umožňuje bohatší interakci, ale vyžaduje samostatný forward pass pro každý kandidát. Použití tohoto výpočtu na celý velký korpus dokumentů pro každé vyhledávání je neúměrně nákladné, takže cross-encodery se obvykle vyhrazují pro přerovnání malé sady získaných kandidátů.
Omezení hustých embeddingů
Reprezentovat celý dokument jediným vektorem pevné velikosti vytváří informační úzké hrdlo. Jak dokumenty rostou a pokrývají více témat, model musí stlačit více obsahu do stejného vektoru, což ztěžuje zachování všeho, co je pro dotaz relevantní. Dělení na úseky může tento tlak zmírnit, ale fragmentuje dokument a může oddělit informace, které dávají smysl jen dohromady; tento problém řešíme také v našem kontextovém embeddingovém modelu. Toto úzké hrdlo se v multimodálních nastaveních zhoršuje, protože informační hustota obrázků vyžaduje ještě větší kompresi.
Single-vector dense retrieval také redukuje každé porovnání na skalární součin dvou vektorů, čímž omezuje expresivitu skórovací funkce. Pro pevnou embeddingovou dimenzi a dostatečně velký korpus jsou některé vzory skóre napříč dvojicemi dotaz–dokument nemožné vytvořit bez ohledu na trénink. Benchmark LIMIT převádí tuto teoretickou obavu na konkrétní zátěžový test pro vyhledávání s jediným vektorem.
Vyhledávání s pozdní interakcí
Modely late interaction zaujímají prostor mezi levnějšími hustými embeddingovými modely a expresivnějšími cross-encodery. Stejně jako husté modely kódují dokumenty nezávisle na dotazu, což umožňuje vypočítat reprezentace dokumentů offline. Místo toho, aby každý vstup redukovaly na jediný vektor, však uchovávají více vektorů a při porovnávání dotazu s dokumentem používají bohatší skórovací funkci.
Naše modely pplx-embed-v2-late používají architekturu ve stylu ColBERT a pro každý token ve vstupu vracejí embeddingy o 128 dimenzích. Skórujeme dvojice dotaz–dokument pomocí MaxSim; pro každý token dotazu model vybere dokumentový token s nejvyšším skórem a sečte maxima podobnosti na úrovni tokenů, aby vzniklo výsledné skóre. To umožňuje, aby různé části dotazu odpovídaly různým částem dokumentu, přičemž silnější shody tokenů přispívají k výslednému skóre více.
Tato dodatečná expresivita s sebou přináší vyšší náklady na úložiště i na skórování kandidátů. Dense retrieval ukládá jeden vektor na dokument a kandidáta hodnotí jedním skalárním součinem; late interaction ukládá vektory pro tokeny dokumentu a vyhodnocuje mnoho token-to-token podobností. Náklady rostou s délkou dokumentu, takže late interaction vyžaduje jiné kompromisy v indexování a servírování než ANN retrieval s jedním vektorem. Na oplátku poskytuje bohatší první fázi vyhledávání pro korpusy citlivé na kvalitu a může také sloužit jako pozdější fáze ve větším vyhledávacím pipeline na webové škále.
Jeden model, více modalit
Ukázalo se, že tato lepší hloubka interakce je velmi užitečná pro různé úlohy, včetně vyhledávání v dlouhém kontextu, agentického vyhledávání a vyhledávání mimo doménu. Tento rozdíl je zvlášť patrný v multimodálním vyhledávání, jak ukazuje velký náskok modelů ColPali v leaderboardu ViDoRe(V3).
Reálné korpusy nejsou tvořeny jen čistým textem. Přicházejí jako PDF, prezentace, screenshoty, naskenované stránky, grafy a tabulky. Konvenční pipeline tyto dokumenty parsuje, aplikuje OCR nebo generování popisků a vyhledává v výsledném textu, což je nákladné a ztrátové: může to zavádět chyby OCR a zahazuje to rozvržení, strukturu tabulek, obrázky i prostorové vztahy. Vizuální vyhledávání dokumentů tento krok přeskočí a promítne rendrovanou stránku přímo do reprezentančního prostoru, kde ji mohou prohledávat textové dotazy.
Naše nová rodina modelů navazuje na silný výkon multi-vector modelů pro multimodální vyhledávání a posouvá Pareto hranici pro malé modely na nejpoužívanějším benchmarku pro vyhledávání dokumentů, ViDoRe(V3). I když očekáváme, že rendery dokumentů budou nejběžnější formou vizuálního vstupu, naše modely podporují také sémantické vyhledávání obrazů v přirozených fotografiích, například krajinářských snímcích.
Trénování rodiny interoperabilních modelů
Vyhledávání je ze své podstaty asymetrické: indexace a kódování dotazu mají odlišné provozní požadavky. Indexace běží offline a lze ji paralelizovat, takže její výpočetní náklady se rozprostřou na mnoho budoucích vyhledávání. Kódování dotazu běží online pro každý požadavek, takže je citlivé na latenci a někdy podléhá omezením servírování nebo edge zařízení. Naše rodina modelů této asymetrie využívá a nabízí velikosti přizpůsobené každé straně vyhledávací pipeline.
Nejprve kontrastivně trénujeme učitele o velikosti 18B a poté ho zvlášť distilujeme do studentů 9B a 0,6B. Místo trénování každého studenta jen k reprodukci distribuce pořadí učitele používáme reprezentační distilaci ve stylu LEAF: pro každý vstupní token zarovnáváme výstupní embedding studenta s embeddingem učitele. Přestože se reprezentace-space distilace dříve používala pro husté modely s jediným vektorem, rozšiřujeme ji na late interaction, kde je cílem zarovnání vektor pro každý uchovaný token.
Výsledkem je, že oba zveřejněné checkpointy sdílejí stejný multi-vektorový embeddingový prostor. To umožňuje cross-model retrieval a otevírá další možnosti nasazení.
- Maximální kvalita: kódujte dokumenty i dotazy modelem 9B.
- Maximální efektivita: kódujte dokumenty i dotazy modelem 0,6B pro 100% lokální inferenci
- Vyhledávání s nízkou latencí: vytvořte index korpusu modelem 9B a poté kódujte živé dotazy modelem 0,6B, abyste využili výpočet provedený při indexování a zároveň zachovali rychlé vyhledávání.
- Lokální–cloudové vyhledávání: kódujte soukromé lokální dokumenty nebo živé dotazy modelem 0,6B přímo na zařízení a porovnávejte nebo slučujte tyto reprezentace s výsledky z indexu 9B hostovaného v cloudu.
Pro prostředí citlivá na latenci jsme model 0,6B navrhli jako lehký kodér dotazů, který může běžet i na edge zařízeních. Vycházeli jsme z Qwen3.5-0.8B, jehož 24vrstvou textovou věž jsme zredukovali na 12 vrstev, čímž jsme tuto věž zmenšili z 498 milionů na 240 milionů neembedovacích parametrů. Výsledný model má celkem 594 milionů parametrů, ale jeho nominální velikost nadhodnocuje náklady na servírování: 100 milionů se používá pro kódování obrázků a 254 milionů je v tabulce tokenových embeddingů, což má na runtime malý vliv. Pro kódování textu je aktivních jen asi 240 milionů parametrů a pro kódování obrázků 340 milionů, takže model má náklady na servírování podstatně menšího modelu a přitom zůstává kompatibilní s indexem 9B.
Stejný postup jsme použili i při budování našeho učitele 18B z backbone o velikosti 27B, což učitele činilo výrazně levnějším na distilaci, aniž by se oslabil signál, který poskytuje.
Multijazyčná, multimodální, nekontaminovaná trénovací data
Oba modely trénujeme na datové sadě 186 milionů dvojic dotaz–dokument, pocházejících z 594 datových sad ve 46 jazycích. Z těchto dvojic je 88,3 % textově-textových, 8,3 % textově-obrazových a 3,4 % textově-vizuálně-dokumentových. Namísto vzorkování úměrného velikosti datové sady přiřazujeme každé datové sadě váhu výběru, což dává vyváženější trénovací směs 56,5 %, 30,9 % a 12,6 %.
Při sestavování trénovacích dat vylučujeme všechny datové sady spojené s benchmarky, na kterých nás následně vyhodnocujeme, abychom věrně reprezentovali naše výsledky bez umělého navyšování skóre benchmarků. Toto rozhodnutí přináší kompromis v tom, že některé datové sady, které jsme se rozhodli vyloučit, obsahují kvalitní data, jež by mohla zlepšit výkon našeho modelu v úlohách mimo benchmark, z něhož pocházejí. Nakonec jsme se rozhodli tento náklad akceptovat: spolehlivá čísla jsou pro nás užitečnější při vývoji i pro uživatele při porovnávání modelů.
Vyhodnocení
Oba modely vyhodnocujeme napříč textovým, vizuálně-dokumentovým, smíšeným obrazovým a agentickým vyhledáváním. Oba modely převyšují hodnocené baseline na Q2D-Web a BrowseComp+ a dosahují silných výsledků ve vizuálně-dokumentovém vyhledávání i v MADQA.
Textové vyhledávání
Textově-textové vyhledávání vyhodnocujeme na třech benchmarcích:
- Doménově specifické benchmarky: Soubor 72 úloh ve stylu MTEB, z toho 55 napříč pěti doménami (finance, právo, zdraví, konverzace, technologie) a dalších 17 různorodých vícejazyčných úloh. Soubor zahrnuje například úlohy FinQA, AILACasedocs a XLSum. Žádná z těchto datových sad se podle výše uvedeného neobjevuje v našich trénovacích datech.
- Q2D-Web: náš benchmark webového vyhledávání ve velkém měřítku založený na přibližně 70 000 vyhledávacích dotazech přeformulovaných agentem, odvozených z produkčního vyhledávacího provozu, nad korpusem 190 milionů webových dokumentů. Tento benchmark měří výkonnost vyhledávání v prostředí mnohem bližším skutečnému webovému vyhledávání než jiné dostupné benchmarky díky dotazům podobným produkčním a rozsáhlému korpusu.
- ViDoRe(V3) Markdown: ViDoRe(V3) je obvykle úloha textově-vizuálně-dokumentového vyhledávání, ale lze ji hodnotit i jako textovou úlohu pomocí verze korpusu převedené do Markdownu, což nám umožňuje hodnotit vyhledávání dokumentů bohatých na informace v obrazové i textové modalitě.
Výkon měříme pomocí nDCG@10, s výjimkou Q2D-Web, kde uvádíme Recall@1000 kvůli zaměření benchmarku na první fázi webového vyhledávání. V průběhu všech našich evaluací porovnáváme s předními embeddingovými modely napříč různými velikostními třídami. Pro textové vyhledávání představují nejsilnější a nejpoužívanější husté konkurenty nemotron-embed-8b, gemini-embedding-2, voyage-large-4 a qwen3-embed-8b, zatímco voyage-4-nano a qwen3-embed-0.6b slouží jako husté baseline pod hranicí jedné miliardy parametrů. Dále srovnáváme s nedávno vydanými modely TopK topk-embed-v1 typu late interaction na benchmarcích, pro které TopK zveřejnil výsledky. Skóre ViDoRe(V3) pochází z jejich model cards při 128 dimenzích, což odpovídá šířce našich tokenových embeddingů; skóre Q2D-Web pochází z našeho leaderboardu.
Na doménově specifických benchmarcích dosahují naše modely 9B a 0,6B v průměru 81,3 % a 78,0 %. Náš model 9B dosahuje nejvyššího skóre ze všech modelů, které jsme vyhodnotili, a překonává další nejlepší model o 1,6 procentního bodu. Náš model 0,6B je konkurenceschopný s ostatními modely s nejvyšším skóre a za gemini-embedding-2 zaostává jen o 0,3 procentního bodu. Důležité je, že protože jsme netrénovali na žádných datech pro tyto benchmarkové úlohy, doménově specifické benchmarky ukazují, že naše embeddingové modely dokážou generalizovat do nových domén.
Relativní síla našeho modelu 0,6B je ještě větší na úloze ViDoRe(V3) Markdown; jeho skóre 61,2 % překonává všechny ostatní modely kromě našeho modelu 9B, který dosáhl 64,7 %. Další nejlepší externí model dosáhl 60,6 % a další nejlepší model s méně než 1 miliardou parametrů, topk-embed-v1-0.8b, za naším modelem 0,6B zaostal o 4,3 procentního bodu.
Na Q2D-Web pochází relevance ze tří sad hodnocení: dokumentů, které agent citoval (Citation), dokumentů zařazených naším produkčním systémem pro vyhledávání na webu (Web) a unie obou rozšířená o LLM hodnocení neoznačených dokumentů (Combined). Oba modely pplx-embed-v2-late vedou mezi všemi baseline ve všech třech sadách hodnocení. Zaměřujeme se na kombinovaná hodnocení, protože sady Citation a Web jsou odvozeny z toho, co už vybraly naše vlastní systémy, a proto zvýhodňují modely, které řadí dokumenty podobně jako ony; LLM hodnocení přidaná v Combined pokrývají dokumenty, které nezískal ani jeden z těchto systémů. V této sadě oba naše modely 9B a 0,6B překonávají všechny konkurenty a dosahují skóre 74,8 % a 73,6 %, oproti předchozímu nejlepšímu skóre 69,3 %.
Vizuální vyhledávání
Naším hlavním benchmarkem pro vizuální vyhledávání je standardní veřejná podmnožina ViDoRe(V3), kde korpus tvoří rendrované obrázky stránek, nikoli převod do Markdownu. Srovnáváme se dvěma předními hustými vision-language modely, qwen3-vl-embed-8b a gemini-embedding-2, a také s modely topk-embed-v1 typu late interaction. Kromě toho slouží modely EVIE od Tencentu a modely Nemotron ColEmbed V2 od NVIDIA jako „vision-only“ multi-vektorové baseline trénované specificky pro úlohy vyhledávání obrázků.
Oba naše modely dosahují špičkového výkonu mezi vision-language modely. Náš model 9B dosahuje v průměru 65,2 %, hned za EVIE. Náš model 0,6B dosahuje skóre 62,3 %, před topk-embed-v1-2b a hned za výrazně většími modely EVIE a nemotron-colembed-v2-8b mezi externími baseline.
Náš model 0,6B je obzvlášť konkurenceschopný vzhledem ke své velikosti. Je před všemi srovnatelnými modely a za nemotron-colembed-v2-8b zaostává jen o 1,2 procentního bodu, přičemž pro obrazové vstupy aktivuje pouze 340 milionů parametrů. Naše modely vytvářejí pro každý token embeddingy o 128 dimenzích, ve srovnání s 2 048 u EVIE-4.5B a 4 096 u EVIE-8B a nemotron-colembed-v2-8b. Tento rozdíl v nárocích na úložiště může zásadně ovlivnit scénáře, ve kterých je praktické tyto modely používat.
Hodnotíme také vizuální vyhledávání na MIRACL-Vision, benchmarku, jehož korpus tvoří screenshoty článků na Wikipedii, a PPLX-Q2I, interním benchmarku pokrývajícím jak vizuální dokumenty, tak přirozené obrázky. PPLX-Q2I je vytvořen z produkčních logů vyhledávání obrázků v Perplexity a navržen tak, aby odrážel rozmanitost použití obrazového vyhledávání. Používáme vzorek o 10 000 dotazech, stratifikovaný podle jazyka a domény, nad korpusem 100 000 obrázků; relevantními dokumenty pro každý dotaz jsou obrázky, které pro něj byly zobrazeny. Nevyhodnocovali jsme EVIE-8B ani Nemotron ColEmbed na PPLX-Q2I, protože indexace korpusu této velikosti při jejich výchozích výstupních dimenzionalitách (2 560 pro Nemotron ColEmbed 4B a 4 096 pro Nemotron ColEmbed 8B a EVIE-8B) byla nepraktická.
Podobně jako u výkonu na ViDoRe(V3) je náš model 0,6B konkurenceschopný s mnohem většími modely a za qwen3-vl-embed-8b na MIRACL-Vision zaostává jen o 1 procentní bod. Náš model 9B překonává všechny ostatní modely kromě gemini-embedding-2.
Na PPLX-Q2I oba naše modely překonávají qwen3-vl-embedding-8b o více než 9 procentních bodů a náš model 9B za gemini-embedding-2 zaostává jen o 2 procentní body. Naše výsledky zůstávají konkurenceschopné i na korpusech, které obsahují přirozené obrazy i vizuální dokumenty, takže multi-vektorové reprezentace, které se osvědčují na ViDoRe(V3), nepřicházejí na úkor obecného vyhledávání obrázků.
Cross-model retrieval
Výsledky v předchozích sekcích hodnotí každý model proti korpusu, který si sám embedoval. Sdílený embeddingový prostor znamená, že to není nutný požadavek: korpus indexovaný modelem 9B lze prohledávat dotazy embedovanými modelem 0,6B. To je konfigurace, kterou očekáváme u většiny produkčních nasazení, protože indexace je jednorázový náklad rozprostřený po celé životnosti korpusu, zatímco embedding dotazu běží na latencí kritické cestě každého požadavku.
Nasazení, které nemůže při dotazu spustit model 9B, by jinak indexovalo také modelem 0,6B, takže tato symetrická konfigurace 0,6B je relevantním srovnávacím bodem. Vyhodnocujeme proti 72 doménově specifickým benchmarkům uvedeným výše a na obrazovém vyhledávání ViDoRe v3. Dotazy se embedují pomocí pplx-embed-v2-late-0.6b a měníme pouze to, čím byl embedován korpus.
Indexace modelem 9B je jednoznačné zlepšení. Na doménově specifických benchmarcích dává asymetrická konfigurace v průměru zisk 1,6 procentního bodu. Na obrazovém vyhledávání ViDoRe v3 dosahuje 63,5 %, oproti 62,3 % při použití modelu 0,6B na obou stranách, což je zisk 1,2 procentního bodu. Náklady na kódování dotazů jsou mezi symetrickou konfigurací 0,6B a asymetrickou konfigurací stejné, protože v obou případech dotaz kóduje stejný model 0,6B; dodatečné náklady na kódování dokumentů vznikají při indexaci.
Použití modelu 9B na obou stranách je stále ještě lepší a na doménově specifických benchmarcích dosahuje průměru 81,3 %. Asymetrická konfigurace tedy získává zpět zhruba polovinu kvalitativního rozdílu mezi oběma modely v textu, a to bez dalších nákladů na kódování dotazů. To, kterou konfiguraci zvolit, závisí na tom, zda je model 9B při dotazu cenově dostupný; tam, kde není, asymetrické nastavení zachytí podstatnou část jeho přínosu.
Agentické vyhledávání
Agentické vyhledávání je dalším nastavením, kde jsou multi-vektorové embeddingy obzvlášť silné. V BrowseComp+ používá LLM (GPT-OSS-120B v našem případě) embeddingový model k prohledání korpusu kvůli informacím relevantním pro složitý uživatelský dotaz a druhý LLM posuzuje, zda výsledná odpověď odpovídá ground truth. Náš model 9B dosahuje přesnosti 64,0 %, překonává další nejlepší ColBERT model o 4,9 procentního bodu a další nejlepší dense model o 8,7 procentního bodu, přičemž vydává méně vyhledávání než jakýkoli jiný model kromě našeho 0,6B. Model 0,6B je také před všemi modely mimo naši rodinu.
MADQA testuje agentické otázky a odpovědi nad 800 heterogenními reálnými PDF o více než 18 000 stránkách, s 500 lidsky napsanými otázkami, na které nelze odpovědět z obecných znalostí. Agent (v našem případě Gemini 3.5 Flash) prohledává sbírku pomocí testovaného retrieveru a je hodnocen podle přesnosti odpovědi a podle F1 na úrovni stránky vůči anotovaným důkazním stránkám. Náš model 9B stanovuje nový state of the art mezi retrievery s přesností 92,4 %, o 3,5 procentního bodu před stejným agentem používajícím retriever od Mixedbread; náš model 0,6B dosahuje 90,1 %. Také upozorňujeme, že náš retriever dosahuje konkurenceschopných výsledků proti Mixedbread Agentic Search, který ve svém vyhledávacím systému používá vyhledávacího podagenta, jenž plánuje a spouští několik vyhledávání na jedno volání hlavního agenta (93,4 %, v rámci našeho intervalu spolehlivosti).
Začínáme
Oba naše modely 0,6B a 9B jsou dostupné na Hugging Face a jsou ihned kompatibilní s sentence-transformers >= 6.0.0 a transformers >= 5.4.0. Další technické podrobnosti a kompletní výsledky evaluace budou později letos zveřejněny v technické zprávě.
V současné době trénujeme další generaci našich modelů hustých embeddingů a na platformě Perplexity API budeme postupně zavádět podporu embeddingů s pozdní interakcí, hustých i kontextových embeddingů.
Citace
@online{perplexity2026MultimodalEmbeddingsBeyondASingleVector,
author = {{Perplexity} and Markus Krimmel and Louis Milliken and Antoine Chaffin and Sarah Eslami and Ekaterina Glazkova and Maximilian Schall and Bo Wang and Denis Bykov and Jarrod Bryan and Claire Beamer and Jeremy Yang},
title = {{Multimodal embeddings beyond a single vector}},
date = {2026-10-07},
url = {https://www.perplexity.ai/hub/blog/multimodal-embeddings-beyond-a-single-vector}
}