modeller

VoyageAI by MongoDB: voyage-code-4

Markdown · JSON

VoyageAI by MongoDB: voyage-code-4

Voyage AI voyage-code-4 är en kodinbäddningsmodell för att hitta relevant källkod från frågor, problembeskrivningar och kodagenters mål. Den stöder indata på 32 000 token och 256, 512, 1024 eller 2048 dimensioner, med flyttals- och kvantiserade representationer.

Om modellen

Den här beskrivningen omfattar modellens förmågor. Tillgängliga indata, utdata och alternativ i Ailoot anges nedan för den valda metoden.

voyage-code-4 är Voyage AI:s kodspecialiserade inbäddningsmodell för kodarkivssökning och informationssökning åt kodagenter. Den är utformad för att hjälpa till att hitta relevant källkod när utgångspunkten är en fråga, ett symptom eller en uppgiftsbeskrivning i stället för en känd identifierare. Den representerar kod och textinformation som numeriska vektorer för sökning; den redigerar inte kodarkivet eller genererar en rättning.

Hämta kod utifrån problemet som undersöks

Tillverkaren beskriver en träningskorpus utvald från slutförda pull requests som kopplar frågor på naturligt språk till kod. Detta är en meningsfull skillnad mot träningsexempel som främst bygger på källfiler och deras docstrings: Sökuppgiften kan börja med beteendet som behöver undersökas.

Förbered en fråga som ”Hitta var ett tomt resultat gör att en lyckad operation rapporteras som misslyckad.” Indexera läsbara källkodsavsnitt med filsökvägar och relevanta kommentarer. Behåll villkoren runt funktionen när de förklarar dess beteende. En returnerad kandidat bör leda läsaren eller agenten tillbaka till källkodsavsnittet den representerar.

Semantisk sökning kan komplettera exakt identifierarsökning och fulltextsökning. Om funktionsnamnet redan är känt är en exakt uppslagning fortfarande användbar. Om bara ett symptom är känt kan vektorsökning ge kandidater att granska och sökningen förfinas med en ny fråga.

Query- och document-roller

Voyages sökvägledning skiljer frågan från korpusdokumentet genom indatatyperna query/document. För kodsökning använder du problem- eller uppgiftsbeskrivningen på frågesidan och den indexerade källkoden eller dokumentationen på dokumentsidan. Det publicerade receptet lägger till rollspecifika sökinstruktioner när inbäddningen beräknas.

Håll kodens ursprungliga formatering, namn och relevanta dokumentation tillgängliga utanför vektorn. För ett källkodsavsnitt behåller du filsökvägen och platsen; för en programmeringsguide behåller du rubriken. Granska den faktiska koden och koden som anropar den efter sökning innan en ändring väljs. En kandidats relevans fastställer inte att den är den enda orsaken till ett rapporterat problem.

Kontext- och representationsval

Den exakta modellens publicerade kontextlängd är 32 000 token. Standardinbäddningen har 1024 dimensioner, med 256, 512 och 2048 också stödda genom Matryoshka-inlärning. Tillkännagivandet dokumenterar representationer med 32-bitars flyttal, 8-bitars heltal med eller utan tecken och binärrepresentationer.

Välj en dimension och representation för samlingen och behåll dem med dess metadata. Flyttalsvektorer och kvantiserade representationer kräver motsvarande lagrings- och jämförelsehantering. En binärrepresentation kodar vektorinformation annorlunda än en lista med vanliga flyttalskoordinater; bevara skillnaden när resultat förbereds för sökning.

För en lång fil väljer du sammanhängande avsnitt vars källplatser kan återfinnas. En funktion kan behöva en intilliggande typdefinition eller kommentar för att förklara ett villkor, medan en hel för stor fil kan innehålla ovidkommande material. Håll avsnittet anpassat till uppgiften som ska sökas efter i stället för att behandla maximal kontext som en föredragen delstorlek.

Använd hämtad källkod som evidens

Ett praktiskt kodagentarbetsflöde hämtar kandidatkällkod, läser filerna, följer relevanta hänvisningar och begränsar sökningen efter hand som undersökningen fortskrider. Den hämtade texten blir kontext för resonemangs- eller redigeringssteget. Behåll dess koppling till den indexerade kodarkivsrevisionen så att en kandidat granskas mot rätt källkod.

Det utgåvespecifika bidraget från voyage-code-4 är fokus på steget från problem till kodsökning som kodagenter använder, tillsammans med flexibla dimensioner och representationer. Resultatet är en sökvektor, medan diagnos, redigering och validering förblir separata uppgifter grundade i det faktiska kodarkivet.

Ailoot Ultra · Embeddings POST /v1/embeddings voyageai/voyage-code-4

voyageai/voyage-code-4

VoyageAI by MongoDB /voyageai/voyage-code-4

Start

Voyage AI voyage-code-4 är en kodinbäddningsmodell för att hitta relevant källkod från frågor, problembeskrivningar och kodagenters mål. Den stöder indata på 32 000 token och 256, 512, 1024 eller 2048 dimensioner, med flyttals- och kvantiserade representationer.

Godkända indata
Text · token_ids
Resultat
embedding

Tillgängligt i Ailoot · indata & metoder

Ailoot Ultra · Embeddings POST /v1/embeddings
Indatatyper
text, token_ids
Utdatatyper
embedding
Kontext
32 000 tokens
Utdataformat
json
FältTypKravVärden & gränserStandard
FältmodelTypstringKravObligatorisktVärden & gränser
voyageai/voyage-code-4
Standard—
FältinputTypstring|string[]|integer[]|integer[][]KravObligatorisktVärden & gränser
Minsta antal objekt: 1
Villkor: En homogen batch som inte är tom. Token-ID:n är heltal som är större än eller lika med noll.
Indatabudget: Maximum: 32 000 · Textenhet: UTF8-byte · Tokenenhet: element i en tokenarray
Standard—
Fältencoding_formatTypstringKravValfrittVärden & gränser
float
Standardfloat
FältdimensionsTypintegerKravStöds inteVärden & gränser
Minimum: 1
Standard—
FältuserTypjson_valueKravValfrittVärden & gränser
Villkor: Källan tillåter detta JSON-metadatafält; den exakta innebörden hos leverantören beror på modellen.
Standard—
Fältsession_idTypjson_valueKravValfrittVärden & gränser
Villkor: Källan tillåter detta JSON-metadatafält; den exakta innebörden hos leverantören beror på modellen.
Standard—
FälttraceTypjson_valueKravValfrittVärden & gränser
Villkor: Källan tillåter detta JSON-metadatafält; den exakta innebörden hos leverantören beror på modellen.
Standard—
FältproviderTypobjectKravValfrittVärden & gränser
Villkor: provider.options avvisades
Standard—
Kombinationer av indatamaterial

text_to_embedding

Metodparametrar och livscykel
ParameterAvtal
Parametercontent_typeAvtalapplication/json
ParameterrequiredAvtalmodel, input
Parameterinput_shapesAvtalstring, string[], nonnegative_integer_token_array, nonnegative_integer_token_array[]
Parameterencoding_formatAvtalfloat
Parameterdimensions_overrideAvtalfalse
Parametermax_input_budget_unitsAvtal32000
Parametermultimodal_objectsAvtalfalse
Parametermaterial_typesAvtaltext, token_ids

Livscykel: synchronous_json

Behåll varje vektorindex och dimension.

Att modellen har ett multimodalt namn innebär inte att bildobjekt tillåts på just denna anropsväg.

Priser

Tariffuppgifter lägger inte till begäransalternativ. Parametrar som stöds anges för den valda metoden.

Snabbt läge
Standardpris När snabbt läge är valt
Flex-läge
Standardpris När läget flex är valt
Högsta resonemangsnivå
Standardpris När den högsta resonemangsnivån använder standardjusteringen (default)

Ailoot-priser

Priser efter konfiguration

KonfigurationPrislistaAvgift
KonfigurationGrundpriser för tokenPrislistaGrundprisAvgift
Indata · Indatatoken $0.00024 / 1K token
Utdata · Utdatatoken $0 / 1K token
Indata · Cacheläsning — / 1K token
Indata · Skrivning till cache — / 1K token
Indata · Skrivning till cache, 1 tim — / 1K token

Ailoot reserverar ett uppskattat belopp före en begäran. Efter resultatet slutregleras avgiften utifrån uppmätt förbrukning. Slutreglering för strömning använder den slutliga förbrukningsposten. Så fungerar reservation och slutreglering →

Exempelbegäranden

Ailoot Ultra · Embeddings

curlPython SDK
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-code-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-code-4',input=["First document","Second document"])
print(result)
for item in result.data:print(item.index,item.embedding)

Ta emot och spara resultat

Ailoot Ultra · Embeddings

json

Behåll alla färdiga resultat

Behåll varje fullständigt returnerat svar, fil och innehållsdel.

Behåll varje vektor tillsammans med dess index. Antalet vektorer måste vara lika med antalet indataobjekt; dimensionerna måste vara konsekventa.

Om det ursprungliga svaret behöver kontrolleras

Ingen endpoint för inbäddningsjobb införs.

Svarsfält
FältTyp
FältobjectTypstring
FältmodelTypstring
Fältdata[].indexTypinteger
Fältdata[].embeddingTypfinite float[]
FältusageTypobject
Fel och nästa steg
SvarVillkorNästa steg
Svar400 · invalid_request_errorVillkorOgiltiga obligatoriska fält, ogiltig representation av underlaget eller ogiltigt parametervärdeNästa stegKorrigera de angivna fälten före en ny begäran om att skapa.

Alias

Modellalias

Ailoot Ultra voyageai/voyage-code-4

Alias för metodsökvägar

Använd metodsökvägarna som visas ovan.

Relaterade anropar-ID:n

voyageai/voyage-code-4

FAQ · VoyageAI by MongoDB: voyage-code-4
Vilka indata och resultat finns?

POST /v1/embeddings · voyageai/voyage-code-4: text, token_ids → embedding

Vilka fält använder begäran?

POST /v1/embeddings · voyageai/voyage-code-4: model, input, encoding_format, provider

Vilka gränser gäller?

POST /v1/embeddings · voyageai/voyage-code-4: ctx: 32000; input.budget.maximum: 32000 (UTF8-byte); input.min_items: 1

Fler detaljer

Anslut Ailoot till Claude Code, OpenCode, Hermes eller din app.

Företaget och dess projektportfölj

Företaget och dess projektportfölj: miljontals kunder; månatlig försäljning för miljarder.

Köp token med rabatt.

Prenumerationsrabatt för återkommande arbete. Kampanjkoder ger upp till 50% vid tokenköp.

Prenumeration
Välj en rabatterad plan för återkommande anrop.
Kampanjkod upp till 50%
Ange koden vid köpet. Priset räknas om enligt kampanjen.
Kostnader i historiken
Modell, token och belopp sparas för varje anrop.

Välj prenumeration · Se modellpriser

Anslut API till produkten som du säljer.

SaaS, appar och botar enligt Ailoots officiella villkor och licensavtal. Begär återförsäljarlicens för vidareförsäljning.

Kommersiell applikation
Bygg text-, bild-, video- och ljudgenerering i tjänstens betalda funktioner.
Återförsäljarlicens
Skicka projektbeskrivning och åtkomstupplägg. Begär skriftliga villkor för användning och vidareförsäljning.
Dokument på webbplatsen
Officiella villkor, licensavtal och databehandlingspolicy finns tillgängliga före anslutning.

Begär återförsäljarlicens · Officiella villkor och licensavtal