VoyageAI by MongoDB: voyage-4-large
voyage-4-large er Voyage AI’s mixture-of-experts-tekstembeddingmodel til generel og flersproget genfinding. Dens vektorer deler Voyage 4-familiens rum, så korpusembeddings fra Large kan gennemsøges med kompatible forespørgselsembeddings fra andre modeller i familien.
Om modellen
Denne beskrivelse dækker modellens funktioner. Tilgængelige input, output og indstillinger i Ailoot står nedenfor for den valgte metode.
voyage-4-large er Voyage AI’s førende tekstembeddingmodel i Voyage 4-familien. Den repræsenterer kildepassager og forespørgsler som numeriske vektorer til generel og flersproget søgning. De to særlige egenskaber er et mixture-of-experts-modeldesign og det fælles embeddingrum, som bruges af voyage-4-large, voyage-4, voyage-4-lite og voyage-4-nano.
Fælles rum: separate modelvalg til korpus og forespørgsler
Udvikleren beskriver asymmetrisk søgning: dokumenter kan indlejres med voyage-4-large, mens en anden model i Voyage 4-familien forbereder forespørgselsvektorerne. Et korpus repræsenteret af Large kan for eksempel gennemsøges med voyage-4-forespørgsler. Det lader søgningens to sider bruge forskellige modelvalg, mens de forbliver i det dokumenterede kompatible rum.
En praktisk samling kan derfor bruge Large til at forberede stabile dokumentpassager og vælge modellen på forespørgselssiden uafhængigt. Dokumenter får embeddings, når korpusset oprettes eller opdateres, mens forespørgsler vektoriseres, når brugere søger. Familieannonceringen beskriver skift af forespørgselsmodel inden for den kompatible familie uden at vektorisere dokumentkorpusset igen alene af den grund. Hold sammenlignede vektorer på samme dimensioner og i repræsentationer, som søgesystemet kan fortolke samlet.
Embeddingdesign med mixture of experts
Et tæt feedforwardlag behandler hvert token gennem hele sit parametersæt. Den MoE-tilgang, som beskrives for voyage-4-large, bruger en router og ekspert-feedforwardnetværk og vælger de eksperter, som behandler hvert token. Det adskiller den samlede modelkapacitet fra de parametre, som er aktive for et bestemt token. Voyage angiver et aktiveringsforhold på 1/10 for modellens MoE-design med top-k-routing.
Udviklerens tekniske forklaring beskriver også to udviklingsvalg. Ekspertkapacitet påvirker, om overskydende tokens springer et ekspertlag over gennem en residualsti; teamet valgte den størst mulige kapacitetsfaktor for at undgå tab af søgekvalitet. I sidste træningstrin fryses routerparametrene før sammenlægning af modeller, så interpolation af kildemodellerne ikke ændrer den indlærte routing til ekspertvalg. Det er egenskaber ved modelklargøringen, adskilt fra indstillinger for tekstlængde eller afkortning ved forberedelse af input.
Dimensioner og outputrepræsentation
Den officielle modeltabel angiver et kontekstvindue på 32.000 tokens og valgbare embeddings med 256, 512, 1024 og 2048 dimensioner med 1024 som standard. Familien bruger Matryoshka learning til indlejrede repræsentationsstørrelser og understøtter kvantiseringsvalg: 32-bit-flydende tal, 8-bit-heltal med eller uden fortegn og pakket binært output.
Ved binært output er længden af den returnerede byteliste en ottendedel af den valgte dimension, fordi hver byte indeholder otte embeddingbits. Gem dimensions- og datatypevalgene sammen med indekset, og brug en sammenligningsmetode, som understøtter repræsentationen. En mindre eller komprimeret vektor ændrer repræsentationen til søgning; vurder de relevante passager, som returneres på faktiske spørgsmål, før den vælges til en samling.
Forbered dokument- og forespørgselsinput
Voyage anbefaler rollen document til korpuspassager og rollen query til søgeformuleringer. Rolleindstillingen tilføjer den tilsvarende søgeinstruktion før embedding. Bevar passagens nyttige overskrift, betingelser og kildeplacering, og gem derefter den returnerede vektor sammen med originalteksten og en stabil identifikator.
I en teknisk videnssamling bør et spørgsmål om en fejltilstand føre til den passage, der beskriver tilstanden og dens relevante betingelser. Ved en dokumentsamling på tværs af sprog bevares kildesproget, og de spørgsmål og den terminologi, brugerne vil søge med, vurderes. Udgaven dækker søgemateriale som tekniske dokumenter, samtaler, lange dokumenter, kode, jura, økonomi og webtekst. Embeddingen lokaliserer kandidatmateriale; et senere reranker- eller svartrin bruger originalteksten.
Grænser for kontekst, batching og afkortning
Udviklerens aktuelle vejledning tillader op til 1.000 strenge og i alt 120.000 inputtokens i en voyage-4-large-anmodning. Dette adskiller sig fra den angivne batchgrænse for voyage-4, mens begge har et vindue på 32.000 tokens pr. tekst. Standardafkortning forkorter et for langt input, så det passer; deaktivering af afkortning returnerer en fejl ved en for lang tekst.
Vælg bevidst grænser for passager, som indeholder svaret, så en lang kilde ikke mister en relevant præcisering i en afkortet slutning. Bevar kildeforbindelsen ved returnering af søgeresultater, og undersøg den faktiske kandidattekst frem for at behandle vektornærhed som verificering af indholdet. Kompatibilitet i det fælles rum gælder den dokumenterede Voyage 4-tekstfamilie; behandling af kontekstualiserede tekststykker, billed- og videoembeddings samt senere modeludgaver forbliver egne modelspecifikke forløb.
Ailoot Ultra · Embeddings POST /v1/embeddings voyageai/voyage-4-large
voyageai/voyage-4-largeStart
voyage-4-large er Voyage AI’s mixture-of-experts-tekstembeddingmodel til generel og flersproget genfinding. Dens vektorer deler Voyage 4-familiens rum, så korpusembeddings fra Large kan gennemsøges med kompatible forespørgselsembeddings fra andre modeller i familien.
- Accepterede input
- Tekst · token_ids
- Resultater
- embedding
Tilgængelig i Ailoot · input og metoder
Ailoot Ultra · Embeddings POST /v1/embeddings
- Inputtyper
text,token_ids- Outputtyper
embedding- Kontekst
- 32.000 tokens
- Outputformat
- json
| Felt | Type | Krav | Værdier og grænser | Standard |
|---|---|---|---|---|
Feltmodel | Typestring | KravPåkrævet | Værdier og grænser voyageai/voyage-4-large | Standard— |
Feltinput | Typestring|string[]|integer[]|integer[][] | KravPåkrævet | Værdier og grænser Minimumsantal elementer: 1 Betingelser: Ikke-tom batch med ensartede elementer. Token-ID’er er ikke-negative heltal. Inputbudget: Maksimum: 32.000 · Tekstenhed: UTF8-bytes · Tokenenhed: elementer i et tokenarray | Standard— |
Feltencoding_format | Typestring | KravValgfrit | Værdier og grænser float | Standardfloat |
Feltdimensions | Typeinteger | KravIkke understøttet | Værdier og grænser Minimum: 1 | Standard— |
Feltuser | Typejson_value | KravValgfrit | Værdier og grænser Betingelser: Kilden tillader dette JSON-metadatafelt; den præcise betydning hos den bagvedliggende udbyder afhænger af modellen. | Standard— |
Feltsession_id | Typejson_value | KravValgfrit | Værdier og grænser Betingelser: Kilden tillader dette JSON-metadatafelt; den præcise betydning hos den bagvedliggende udbyder afhænger af modellen. | Standard— |
Felttrace | Typejson_value | KravValgfrit | Værdier og grænser Betingelser: Kilden tillader dette JSON-metadatafelt; den præcise betydning hos den bagvedliggende udbyder afhænger af modellen. | Standard— |
Feltprovider | Typeobject | KravValgfrit | Værdier og grænser Betingelser: provider.options afvist | Standard— |
Kombinationer af inputmaterialer
text_to_embedding
Metodeparametre og livscyklus
| Parameter | Kontrakt |
|---|---|
Parametercontent_type | Kontraktapplication/json |
Parameterrequired | Kontraktmodel, input |
Parameterinput_shapes | Kontraktstring, string[], nonnegative_integer_token_array, nonnegative_integer_token_array[] |
Parameterencoding_format | Kontraktfloat |
Parameterdimensions_override | Kontraktfalse |
Parametermax_input_budget_units | Kontrakt32000 |
Parametermultimodal_objects | Kontraktfalse |
Parametermaterial_types | Kontrakttext, token_ids |
Livscyklus: synchronous_json
Gem hver vektors indeks og dimension.
Et multimodalt modelnavn giver ikke adgang til at bruge billedobjekter på denne præcise sti.
Priser
Tarifoplysninger tilføjer ikke anmodningsmuligheder. Understøttede parametre står ved den valgte metode.
- Hurtig tilstand
- Standardpris Når hurtig tilstand er valgt
- flex-tilstand
- Standardpris Når flex-tilstanden er valgt
- Maksimal ræsonneringsindsats
- Standardpris Når default-justeringen anvendes ved maksimal ræsonneringsindsats
Ailoot-takster
Priser efter konfiguration
| Konfiguration | Takstplan | Beløb |
|---|---|---|
| KonfigurationGrundtakster for tokens | TakstplanGrundtakst | Beløb Input · Inputtokens $0.00024 / 1K tokens Output · Outputtokens $0 / 1K tokens Input · Cachelæsning — / 1K tokens Input · Cacheskrivning — / 1K tokens Input · Cacheskrivning, 1 time — / 1K tokens |
Ailoot reserverer et estimeret beløb før en anmodning. Efter resultatet afregnes det endelige beløb ud fra det målte forbrug. Ved streaming bruges den endelige forbrugsregistrering til afregningen. Sådan fungerer reservation og afregning →
Eksempelanmodninger
Ailoot Ultra · Embeddings
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)
Hent og gem resultater
Ailoot Ultra · Embeddings
json
Behold alle færdige resultater
Gem hvert fuldstændigt returneret svar, hver fil og hver indholdsdel.
Gem hver vektor med dens indeks. Antallet af vektorer skal svare til antallet af input; dimensionerne skal være ensartede.
Hvis det oprindelige svar skal kontrolleres
Der indføres intet endpoint til embedding-job.
Svarfelter
| Felt | Type |
|---|---|
Feltobject | Typestring |
Feltmodel | Typestring |
Feltdata[].index | Typeinteger |
Feltdata[].embedding | Typefinite float[] |
Feltusage | Typeobject |
Fejl og næste trin
| Svar | Betingelse | Næste trin |
|---|---|---|
Svar400 · invalid_request_error | BetingelseUgyldige obligatoriske felter, materialerepræsentation eller parameterværdi | Næste trinRet de angivne felter før en ny oprettelsesanmodning. |
Aliaser
Modelaliaser
Ailoot Ultra voyageai/voyage-4-large
Aliaser for metodestier
Brug metodestierne vist ovenfor.
Relaterede kalder-ID’er
FAQ · VoyageAI by MongoDB: voyage-4-large
- Hvilke input og resultater er tilgængelige?
POST /v1/embeddings·voyageai/voyage-4-large:text,token_ids→embedding- Hvilke felter bruger anmodningen?
POST /v1/embeddings·voyageai/voyage-4-large:model,input,encoding_format,provider- Hvilke grænser gælder?
POST /v1/embeddings·voyageai/voyage-4-large:ctx:32000;input.budget.maximum:32000(UTF8-bytes);input.min_items:1