VoyageAI by MongoDB: voyage-4-large
voyage-4-large je textový embeddingový model společnosti Voyage AI s architekturou směsi expertů pro obecné a vícejazyčné vyhledávání. Jeho vektory sdílejí prostor rodiny Voyage 4, takže embeddingy korpusu z Large lze prohledávat kompatibilními embeddingy dotazů z ostatních modelů této rodiny.
O modelu
Tento popis zahrnuje schopnosti modelu. Vstupy, výstupy a možnosti dostupné v Ailoot jsou uvedeny níže pro vybranou metodu.
voyage-4-large je vlajkový textový embeddingový model společnosti Voyage AI v rodině Voyage 4. Reprezentuje zdrojové pasáže a dotazy jako číselné vektory pro obecné a vícejazyčné vyhledávání. Dvěma rozlišujícími vlastnostmi jsou návrh modelu mixture-of-experts a společný embeddingový prostor používaný modely voyage-4-large, voyage-4, voyage-4-lite a voyage-4-nano.
Společný prostor: samostatný výběr pro korpus a dotazy
Výrobce popisuje asymetrické vyhledávání: dokumenty mohou být vloženy do vektorového prostoru pomocí voyage-4-large, zatímco dotazové vektory připravuje jiný model rodiny Voyage 4. Například korpus reprezentovaný modelem Large lze prohledávat dotazy z voyage-4. Obě strany vyhledávání tak mohou používat odlišné modely a přitom zůstat v dokumentovaném kompatibilním prostoru.
Praktická sbírka tedy může použít Large k přípravě stabilních dokumentových pasáží a nezávisle vybrat model na straně dotazů. Embeddingy dokumentů vznikají při vytvoření nebo aktualizaci korpusu, zatímco dotazy se vektorizují při vyhledávání uživatelů. Oznámení rodiny popisuje změnu dotazového modelu v rámci kompatibilní rodiny bez opětovné vektorizace dokumentového korpusu pouze kvůli této změně. Porovnávané vektory udržujte ve shodných rozměrech a v reprezentacích, které vyhledávací systém dokáže společně interpretovat.
Embeddingový návrh mixture-of-experts
Hustá dopředná vrstva zpracovává každý token celou sadou parametrů. Přístup MoE popsaný pro voyage-4-large používá router a expertní dopředné sítě a vybírá experty, kteří zpracují každý token. Odděluje tím celkovou kapacitu modelu od parametrů aktivních pro konkrétní token. Voyage uvádí u návrhu MoE tohoto modelu aktivační poměr 1/10 s routingem top-k.
Technické vysvětlení výrobce popisuje také dvě vývojové volby. Kapacita expertů ovlivňuje, zda nadbytečné tokeny obejdou expertní vrstvu reziduální cestou; tým vybral největší proveditelný kapacitní faktor, aby zabránil ztrátě kvality vyhledávání. V poslední fázi trénování se parametry routeru před sloučením modelů zmrazí, aby interpolace zdrojových modelů nezměnila naučené směrování výběru expertů. Jde o vlastnosti přípravy modelu, odlišné od nastavení délky textu nebo zkracování při přípravě vstupu.
Rozměry a výstupní reprezentace
Oficiální tabulka modelů určuje kontextové okno 32 000 tokenů a volitelné embeddingy o 256, 512, 1024 a 2048 rozměrech, přičemž výchozí hodnota je 1024. Rodina používá učení Matryoshka pro vnořené velikosti reprezentace a podporuje možnosti kvantizace: 32bitová čísla s plovoucí řádovou čárkou, 8bitová celá čísla se znaménkem nebo bez něj a zabalený binární výstup.
U binárního výstupu je délka vráceného seznamu bajtů jednou osminou vybraného rozměru, protože každý bajt obsahuje osm bitů embeddingu. Uchovejte volbu rozměru a datového typu s indexem a používejte porovnávací metodu podporující danou reprezentaci. Menší nebo komprimovaný vektor mění reprezentaci používanou k vyhledávání; před jeho výběrem pro sbírku posuďte relevantní pasáže vracené ke skutečným otázkám.
Připravte dokumentové a dotazové vstupy
Voyage doporučuje roli dokumentu pro pasáže korpusu a roli dotazu pro hledané znění. Volba role přidá před vytvořením embeddingu odpovídající vyhledávací instrukci. Zachovejte užitečný nadpis, podmínky a zdrojové umístění pasáže a pak uložte vrácený vektor s původním textem a stabilním identifikátorem.
U sbírky technických znalostí má otázka o režimu selhání vést k pasáži popisující tento režim a jeho příslušné podmínky. U vícejazyčné sbírky dokumentů uchovejte jazyk zdroje a hodnoťte otázky i terminologii, s nimiž budou uživatelé vyhledávat. Vydání pokrývá vyhledávaný materiál včetně technických dokumentů, konverzací, dlouhých dokumentů, kódu, práva, financí a webového textu. Embedding vyhledá kandidátní materiál; pozdější reranker nebo fáze odpovědi používá původní text.
Limity kontextu, dávkování a zkracování
Současný průvodce výrobce dovoluje v požadavku voyage-4-large až 1000 řetězců a celkem 120 000 vstupních tokenů. To se liší od dávkového limitu uvedeného pro voyage-4, ačkoli oba mají okno 32 000 tokenů na text. Výchozí zkracování zkrátí příliš dlouhý vstup, aby se vešel; vypnutí zkracování vrátí chybu pro příliš dlouhý text.
Hranice pasáží obsahujících odpověď vybírejte záměrně, aby dlouhý zdroj neztratil důležitou podmínku v odříznutém konci. Při vracení výsledků vyhledávání zachovejte vazbu na zdroj a prohlédněte skutečný kandidátní text, místo abyste blízkost vektorů považovali za ověření obsahu. Kompatibilita společného prostoru platí pro dokumentovanou textovou rodinu Voyage 4; kontextové zpracování bloků, embeddingy obrázků či videa a pozdější edice modelů zůstávají vlastními postupy konkrétních modelů.
Ailoot Ultra · Vektorové reprezentace POST /v1/embeddings voyageai/voyage-4-large
voyageai/voyage-4-largeÚvod
voyage-4-large je textový embeddingový model společnosti Voyage AI s architekturou směsi expertů pro obecné a vícejazyčné vyhledávání. Jeho vektory sdílejí prostor rodiny Voyage 4, takže embeddingy korpusu z Large lze prohledávat kompatibilními embeddingy dotazů z ostatních modelů této rodiny.
- Přijímané vstupy
- Text · token_ids
- Výsledky
- embedding
Dostupné v Ailoot · vstupy a metody
Ailoot Ultra · Vektorové reprezentace POST /v1/embeddings
- Vstup
text,token_ids- Výstup
embedding- Kontext
- 32 000 tokens
- Výstupní formát
- json
| Pole | Typ | Požadavek | Hodnoty a limity | Výchozí |
|---|---|---|---|---|
Polemodel | Typstring | PožadavekPovinné | Hodnoty a limity voyageai/voyage-4-large | Výchozí— |
Poleinput | Typstring|string[]|integer[]|integer[][] | PožadavekPovinné | Hodnoty a limity Minimální počet položek: 1 Podmínky: Neprázdná homogenní dávka. ID tokenů jsou nezáporná celá čísla. Rozpočet vstupu: Maximum: 32 000 · Jednotka textu: bajty UTF8 · Jednotka tokenů: prvky pole tokenů | Výchozí— |
Poleencoding_format | Typstring | PožadavekVolitelné | Hodnoty a limity float | Výchozífloat |
Poledimensions | Typinteger | PožadavekNepodporováno | Hodnoty a limity Minimum: 1 | Výchozí— |
Poleuser | Typjson_value | PožadavekVolitelné | Hodnoty a limity Podmínky: Zdroj povoluje toto pole metadat JSON; jeho přesný význam u poskytovatele závisí na konkrétním modelu. | Výchozí— |
Polesession_id | Typjson_value | PožadavekVolitelné | Hodnoty a limity Podmínky: Zdroj povoluje toto pole metadat JSON; jeho přesný význam u poskytovatele závisí na konkrétním modelu. | Výchozí— |
Poletrace | Typjson_value | PožadavekVolitelné | Hodnoty a limity Podmínky: Zdroj povoluje toto pole metadat JSON; jeho přesný význam u poskytovatele závisí na konkrétním modelu. | Výchozí— |
Poleprovider | Typobject | PožadavekVolitelné | Hodnoty a limity Podmínky: Parametr provider.options byl odmítnut | Výchozí— |
Kombinace vstupních materiálů
text_to_embedding
Parametry a životní cyklus metody
| Parametr | Kontrakt |
|---|---|
Parametrcontent_type | Kontraktapplication/json |
Parametrrequired | Kontraktmodel, input |
Parametrinput_shapes | Kontraktstring, string[], nonnegative_integer_token_array, nonnegative_integer_token_array[] |
Parametrencoding_format | Kontraktfloat |
Parametrdimensions_override | Kontraktfalse |
Parametrmax_input_budget_units | Kontrakt32000 |
Parametrmultimodal_objects | Kontraktfalse |
Parametrmaterial_types | Kontrakttext, token_ids |
Životní cyklus: synchronous_json
Uchovejte index i rozměr každého vektoru.
Multimodální název modelu neznamená, že tato konkrétní cesta přijímá obrazové objekty.
Tarify
Údaje o tarifech nepřidávají možnosti požadavku. Podporované parametry jsou uvedeny u vybrané metody.
- Rychlý režim
- Standardní sazba Při výběru rychlého režimu
- Režim flex
- Standardní sazba Při výběru režimu flex
- Maximální intenzita uvažování
- Standardní sazba Když se při maximální intenzitě uvažování použije výchozí úprava (default)
Sazby Ailoot
Ceny podle konfigurace
| Konfigurace | Tabulka sazeb | Poplatek |
|---|---|---|
| KonfiguraceZákladní sazby za tokeny | Tabulka sazebZákladní sazba | Poplatek Vstup · Vstupní tokeny $0.00024 / 1K tokenů Výstup · Výstupní tokeny $0 / 1K tokenů Vstup · Čtení z mezipaměti — / 1K tokenů Vstup · Zápis do mezipaměti — / 1K tokenů Vstup · Zápis do mezipaměti, 1 hodina — / 1K tokenů |
Ailoot před požadavkem rezervuje odhadovanou částku. Po výsledku vyúčtuje konečný poplatek podle naměřeného využití. Při streamování se účtování řídí konečným záznamem využití. Jak funguje rezervace a vyúčtování →
Příklady požadavků
Ailoot Ultra · Vektorové reprezentace
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "voyageai/voyage-4-large", "input": ["First document", "Second document"]}')
Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/embeddings \
-H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
--data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
r=json.loads(Path("result.json").read_text())
for x in r.get("data",[]): print(json.dumps({"index":x.get("index"),"embedding":x.get("embedding")}))
PY_RESULT
from openai import OpenAI
import os
client=OpenAI(base_url="https://api.ailoot.ai/v1",api_key=os.environ["AILOOT_API_KEY"],max_retries=0)
result=client.embeddings.create(model='voyageai/voyage-4-large',input=["First document","Second document"])
print(result)
for item in result.data:print(item.index,item.embedding)
Přijímání a ukládání výsledků
Ailoot Ultra · Vektorové reprezentace
json
Uchovejte všechny dokončené výsledky
Uchovejte každou úplnou vrácenou odpověď, soubor i část obsahu.
Uchovejte každý vektor spolu s jeho indexem. Počet vektorů musí odpovídat počtu vstupů; jejich rozměr musí být jednotný.
Pokud je nutné ověřit původní odpověď
Samostatný endpoint úloh pro embeddingy se nezavádí.
Pole odpovědi
| Pole | Typ |
|---|---|
Poleobject | Typstring |
Polemodel | Typstring |
Poledata[].index | Typinteger |
Poledata[].embedding | Typfinite float[] |
Poleusage | Typobject |
Chyby a další kroky
| Odpověď | Podmínka | Další krok |
|---|---|---|
Odpověď400 · invalid_request_error | PodmínkaNeplatná povinná pole, reprezentace podkladů nebo hodnota parametru | Další krokPřed novým požadavkem na vytvoření opravte uvedená pole. |
Aliasy
Aliasy modelu
Ailoot Ultra voyageai/voyage-4-large
Aliasy cest metod
Použijte cesty metod uvedené výše.
Související ID modelů
FAQ · VoyageAI by MongoDB: voyage-4-large
- Jaké vstupy a výsledky jsou dostupné?
POST /v1/embeddings·voyageai/voyage-4-large:text,token_ids→embedding- Jaká pole požadavek používá?
POST /v1/embeddings·voyageai/voyage-4-large:model,input,encoding_format,provider- Jaké limity platí?
POST /v1/embeddings·voyageai/voyage-4-large:ctx:32000;input.budget.maximum:32000(bajty UTF8);input.min_items:1