VoyageAI by MongoDB: voyage-4
voyage-4 embedder tekst til generel og flersproget genfinding med et fælles vektorrum på tværs af Voyage 4-familien. Den understøtter input på 32.000 tokens, valgbart output på 256–2048 dimensioner og query/document-roller til søgning og RAG.
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 er Voyage AI’s mellemstore tekstembeddingmodel i Voyage 4-familien. Den omdanner forespørgsels- og dokumenttekst til numeriske vektorer til generel og flersproget genfinding. Familiens definerende evne er et fælles embeddingrum: voyage-4, voyage-4-large, voyage-4-lite og voyage-4-nano producerer kompatible repræsentationer, så forespørgsels- og dokumentsiden af en søgeopgave kan bruge forskellige modeller i familien.
Fælles rum og asymmetrisk genfinding
Producenten kalder brugen af forskellige forespørgsels- og korpusmodeller asymmetrisk genfinding. Et dokumenteret mønster er at forberede korpusset med voyage-4-large og søge i det med forespørgselsembeddings fra voyage-4. Korpussets embeddings beregnes én gang eller ved ændring af kildematerialet, mens forespørgselsvektorer oprettes, når søgninger kommer ind. Det fælles rum lader modelvalget på forespørgselssiden ændres inden for familien uden at kræve ny embedding af korpusset alene på grund af skiftet.
Hold outputdimensionen og repræsentationen kompatible på tværs af de sammenlignede vektorer. Erklæringen om fælles rum vedrører de navngivne Voyage 4-tekstmodeller; den fastslås ikke blot ved, at to ubeslægtede modeller returnerer arrays med samme længde. En praktisk opgave kan derfor bruge voyage-4 på begge sider af søgningen eller bruge dens forespørgselsvektorer med et eksisterende voyage-4-large-dokumentindeks, når deres repræsentationsindstillinger passer sammen.
Query- og document-roller
Til genfinding anbefaler Voyage at angive inputtekst som typen query eller document. Inputrollevalget tilføjer den tilsvarende genfindingsinstruktion før vektorisering. Forbered korpuspassager som dokumenter og brugerens søgeordlyd som en forespørgsel, og gem den faktiske kildetekst og identifikatorerne sammen med hver lagret vektor.
En samling til videnssøgning kan eksempelvis indeksere tekniske instruktioner og produktforklaringer. En forespørgsel om, hvad der sker efter en mislykket import, bør returnere kildepassagen, som beskriver denne adfærd. Bevar overskrifter, relevante betingelser og kildeplaceringen sammen med passagen, så det resulterende søgetræf kan undersøges eller bruges af et senere RAG-svartrin. Embeddingvektoren er den numeriske genfindingsrepræsentation; den underliggende passage er evidensen til det senere trin.
Dimensioner og outputdatatyper
Det dokumenterede kontekstvindue pr. tekst er 32.000 tokens. De valgbare dimensioner er 256, 512, 1024 og 2048 med 1024 som standard. Matryoshka-læring giver disse indlejrede repræsentationsstørrelser. Output kan bruge 32-bit-flydende tal, 8-bit-heltal med eller uden fortegn eller pakkede binære værdier, muliggjort af familiens kvantiseringsbevidste forberedelse.
Ved pakket binært output lagrer hver returneret byte otte embeddingbits, så bytelistens længde er en ottendedel af den valgte dimension. Byteantal og embeddingdimension har forskellig betydning. Vælg den repræsentation, dit søgeindeks kan fortolke, og undersøg kandidatrelevansen på de spørgsmål og sprog, samlingen faktisk bruger, før en komprimeret konfiguration vælges.
Inputlængde, batchbehandling og afkortning
Producentens aktuelle tekstembeddingvejledning tillader op til 1000 strenge og 320.000 tokens samlet i en voyage-4-anmodning. Batchbudgettet er adskilt fra vinduet på 32.000 tokens for hvert input. Afkortning er aktiveret som standard: For lang tekst forkortes til at passe. Hvis afkortning deaktiveres, giver et for langt element i stedet en fejl.
Ved en lang rapport eller transskription skal du bevidst forberede passager med svarindhold frem for at stole på et snit ved inputgrænsen. Hold hver passage knyttet til det overordnede dokument og kildeversionen. Almindelige voyage-4-embeddinginput er individuelle tekster; kontekstualiseret behandling af grupper af dokumentstykker tilhører de særskilt dokumenterede kontekstuelle embeddingmodeller.
Brug genfindingsresultatet
Gem vektorerne sammen med passageteksten og stabile kildeidentifikatorer, sammenlign hver forespørgselsvektor med kompatible dokumentvektorer, og returnér kandidatpassager. Familieudgivelsen evaluerer genfinding på materiale, som omfatter tekniske dokumenter, samtaler, lange dokumenter, kode, jura, finans og webtekst. En separat reranker kan forfine kandidaterne, og et senere svartrin kan bruge deres tekst. Vurdér de returnerede passager ud fra opgaven; kompatibilitet i fælles rum muliggør modelkombinationen, mens resultatets nytte stadig afhænger af kildematerialet og spørgsmålet.
Ailoot Ultra · Embeddings POST /v1/embeddings voyageai/voyage-4
voyageai/voyage-4Start
voyage-4 embedder tekst til generel og flersproget genfinding med et fælles vektorrum på tværs af Voyage 4-familien. Den understøtter input på 32.000 tokens, valgbart output på 256–2048 dimensioner og query/document-roller til søgning og RAG.
- 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 | 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.00012 / 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", "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',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
Aliaser for metodestier
Brug metodestierne vist ovenfor.
Relaterede kalder-ID’er
FAQ · VoyageAI by MongoDB: voyage-4
- Hvilke input og resultater er tilgængelige?
POST /v1/embeddings·voyageai/voyage-4:text,token_ids→embedding- Hvilke felter bruger anmodningen?
POST /v1/embeddings·voyageai/voyage-4:model,input,encoding_format,provider- Hvilke grænser gælder?
POST /v1/embeddings·voyageai/voyage-4:ctx:32000;input.budget.maximum:32000(UTF8-bytes);input.min_items:1