VoyageAI by MongoDB: voyage-code-4
A Voyage AI voyage-code-4 modellje kódbeágyazással keresi meg a releváns forráskódot kérdések, hibajegy-leírások és programozóügynökök céljai alapján. 32 000 tokenes bemeneteket és 256, 512, 1024 vagy 2048 dimenziót támogat, lebegőpontos és kvantált reprezentációkkal.
A modellről
Ez a leírás a modell képességeit ismerteti. Az Ailootban elérhető bemenetek, kimenetek és lehetőségek alább, a kiválasztott metódusnál láthatók.
A voyage-code-4 a Voyage AI kódra specializált beágyazási modellje kódtárakban való kereséshez és programozóügynökök információkereséséhez. Akkor segít megtalálni a releváns forráskódot, amikor a kiindulópont egy kérdés, tünet vagy feladatleírás, nem pedig egy ismert azonosító. A kódot és a szöveges információt numerikus keresési vektorokként reprezentálja; nem szerkeszti a kódtárat, és nem generál javítást.
Keressen kódot a vizsgált probléma alapján
A gyártó lezárt pull requestekből összeállított tanítókorpuszt ismertet, amely természetes nyelvű lekérdezéseket kapcsol össze kóddal. Ez érdemi különbség a főként forrásfájlokra és azok dokumentációs karakterláncaira épülő tanítópéldákhoz képest: a keresési feladat a kivizsgálandó működésből indulhat ki.
Készítsen elő például ilyen lekérdezést: „Keresse meg, hol okozza egy üres eredmény azt, hogy egy sikeres műveletet sikertelenként jelentenek.” Indexeljen olvasható forráskódrészleteket a fájlútvonalukkal és a releváns megjegyzésekkel együtt. Őrizze meg a függvényt körülvevő feltételeket, ha azok magyarázzák a működését. A visszaadott találat vezesse vissza az olvasót vagy az ügynököt az általa reprezentált forráskódrészlethez.
A szemantikai keresés kiegészítheti a pontos azonosítóra keresést és a teljes szöveges keresést. Ha a függvénynév már ismert, a pontos keresés továbbra is hasznos. Ha csak egy tünet ismert, a vektorkeresés megvizsgálható találatokat adhat, amelyek egy újabb lekérdezéssel pontosíthatók.
Lekérdezési és dokumentumszerepek
A Voyage keresési útmutatója a query/document bemeneti típusokkal különbözteti meg a lekérdezést a korpusz dokumentumától. Kódkeresésnél használja a probléma vagy a feladat leírását lekérdezésként, az indexelt forráskódot vagy dokumentációt pedig dokumentumként. A közzétett eljárás a beágyazás során szerepspecifikus keresési utasításokat ad hozzá.
A kód eredeti formázását, neveit és releváns dokumentációját a vektoron kívül is tegye elérhetővé. Forráskódrészletnél őrizze meg a fájlútvonalat és a helyet; programozási útmutatónál a címsort. Keresés után a módosítás kiválasztása előtt vizsgálja meg a tényleges kódot és az azt hívó kódrészeket. Egy találat relevanciája nem bizonyítja, hogy az a jelentett probléma egyetlen oka.
Kontextus- és reprezentációs lehetőségek
Ennek a konkrét modellnek a közzétett kontextushossza 32 000 token. Az alapértelmezett beágyazás 1024 dimenziós, és a Matryoshka-tanulás révén 256, 512 és 2048 dimenzió is támogatott. A bejelentés 32 bites lebegőpontos, előjeles és előjel nélküli 8 bites egész számú, valamint bináris reprezentációkat dokumentál.
Válasszon egy dimenziót és reprezentációt a gyűjteményhez, és őrizze meg ezeket a metaadataiban. A lebegőpontos vektorok és a kvantált reprezentációk a nekik megfelelő tárolást és összehasonlítási kezelést igénylik. A bináris reprezentáció másként kódolja a vektorinformációt, mint a szokásos lebegőpontos koordináták listája; ezt a különbséget őrizze meg az eredmények keresésre való előkészítésekor.
Hosszú fájlnál válasszon összefüggő részleteket, amelyek forrásbeli helye visszakereshető. Egy függvénynek szüksége lehet egy szomszédos típusdefinícióra vagy megjegyzésre valamely feltétel magyarázatához, míg egy teljes, túlméretes fájl oda nem tartozó anyagot is tartalmazhat. A részletet a keresendő feladathoz igazítsa, és ne tekintse a maximális kontextushosszt az ajánlott darabméretnek.
Használja bizonyítékként a megtalált forráskódot
Egy gyakorlati programozóügynök-munkafolyamat forráskódjelölteket keres, elolvassa a fájlokat, követi a releváns hivatkozásokat, és a vizsgálat előrehaladtával szűkíti a keresést. A megtalált szöveg a következtetési vagy szerkesztési lépés kontextusává válik. Őrizze meg a kapcsolatát az indexelt kódtárverzióval, hogy a találatot a megfelelő forráskódhoz viszonyítva vizsgálják meg.
A voyage-code-4 kiadásspecifikus hozzájárulása a programozóügynökök által használt, problémától a kódig vezető keresési lépésre összpontosít, rugalmas dimenziókkal és reprezentációkkal együtt. Kimenete keresési vektor, míg a diagnózis, a szerkesztés és az ellenőrzés külön feladat marad, a tényleges kódtárra alapozva.
Ailoot Ultra · Beágyazások POST /v1/embeddings voyageai/voyage-code-4
voyageai/voyage-code-4Kezdő lépések
A Voyage AI voyage-code-4 modellje kódbeágyazással keresi meg a releváns forráskódot kérdések, hibajegy-leírások és programozóügynökök céljai alapján. 32 000 tokenes bemeneteket és 256, 512, 1024 vagy 2048 dimenziót támogat, lebegőpontos és kvantált reprezentációkkal.
- Elfogadott bemenetek
- Szöveg · token_ids
- Eredmények
- embedding
Elérhető az Ailootban · bemenetek és metódusok
Ailoot Ultra · Beágyazások POST /v1/embeddings
- Bemenet
text,token_ids- Kimenet
embedding- Kontextus
- 32 000 tokens
- Kimeneti formátum
- json
| Mező | Típus | Követelmény | Értékek és korlátok | Alapértelmezett |
|---|---|---|---|---|
Mezőmodel | Típusstring | KövetelményKötelező | Értékek és korlátok voyageai/voyage-code-4 | Alapértelmezett— |
Mezőinput | Típusstring|string[]|integer[]|integer[][] | KövetelményKötelező | Értékek és korlátok Minimális elemszám: 1 Feltételek: Nem üres, homogén köteg. A tokenazonosítók nemnegatív egész számok. Bemeneti keret: Maximum: 32 000 · Szövegegység: UTF8-bájtok · Tokenegység: tokentömb elemei | Alapértelmezett— |
Mezőencoding_format | Típusstring | KövetelményOpcionális | Értékek és korlátok float | Alapértelmezettfloat |
Meződimensions | Típusinteger | KövetelményNem támogatott | Értékek és korlátok Minimum: 1 | Alapértelmezett— |
Mezőuser | Típusjson_value | KövetelményOpcionális | Értékek és korlátok Feltételek: A forrás engedélyezi ezt a JSON-metaadatmezőt; a szolgáltatónál érvényes pontos jelentése modellenként eltér. | Alapértelmezett— |
Mezősession_id | Típusjson_value | KövetelményOpcionális | Értékek és korlátok Feltételek: A forrás engedélyezi ezt a JSON-metaadatmezőt; a szolgáltatónál érvényes pontos jelentése modellenként eltér. | Alapértelmezett— |
Mezőtrace | Típusjson_value | KövetelményOpcionális | Értékek és korlátok Feltételek: A forrás engedélyezi ezt a JSON-metaadatmezőt; a szolgáltatónál érvényes pontos jelentése modellenként eltér. | Alapértelmezett— |
Mezőprovider | Típusobject | KövetelményOpcionális | Értékek és korlátok Feltételek: A provider.options elutasítva | Alapértelmezett— |
Bemeneti anyagok kombinációi
text_to_embedding
Metódus paraméterei és életciklusa
| Paraméter | Szerződés |
|---|---|
Paramétercontent_type | Szerződésapplication/json |
Paraméterrequired | Szerződésmodel, input |
Paraméterinput_shapes | Szerződésstring, string[], nonnegative_integer_token_array, nonnegative_integer_token_array[] |
Paraméterencoding_format | Szerződésfloat |
Paraméterdimensions_override | Szerződésfalse |
Paramétermax_input_budget_units | Szerződés32000 |
Paramétermultimodal_objects | Szerződésfalse |
Paramétermaterial_types | Szerződéstext, token_ids |
Életciklus: synchronous_json
Őrizze meg minden vektor indexét és dimenzióját.
A multimodális modell neve ezen a pontos útvonalon nem teszi lehetővé képobjektumok használatát.
Díjcsomagok
A díjszabás nem ad új kérési lehetőségeket. A támogatott paraméterek a kiválasztott módszernél szerepelnek.
- Gyors mód
- Normál díjszabás Ha a gyors mód van kiválasztva
- Flex mód
- Normál díjszabás Ha a flex mód van kiválasztva
- Maximális gondolkodási ráfordítás
- Normál díjszabás Ha a maximális gondolkodási ráfordításra a default beállításhoz tartozó korrekció vonatkozik
Ailoot-díjak
Árak beállításonként
| Beállítás | Díjtáblázat | Díj |
|---|---|---|
| BeállításTokenenkénti alapárak | DíjtáblázatAlapdíj | Díj Bemenet · Bemeneti tokenek $0.00024 / 1K token Kimenet · Kimeneti tokenek $0 / 1K token Bemenet · Gyorsítótár olvasása — / 1K token Bemenet · Írás a gyorsítótárba — / 1K token Bemenet · Írás a gyorsítótárba, 1 óra — / 1K token |
Az Ailoot a kérés előtt becsült összeget foglal le. Az eredmény után a mért használat alapján elszámolja a végső díjat. Folyamatos átvitel esetén a végső használati rekordot használja. A foglalás és az elszámolás működése →
Példakérések
Ailoot Ultra · Beágyazások
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)
Eredmények fogadása és mentése
Ailoot Ultra · Beágyazások
json
Őrizzen meg minden elkészült eredményt
Őrizzen meg minden teljes visszaadott választ, fájlt és tartalomrészt.
Őrizzen meg minden vektort az indexével együtt. A vektorok számának meg kell egyeznie a bemenetek számával; a dimenzióknak egységesnek kell lenniük.
Ha az eredeti választ ellenőrizni kell
Nem kerül bevezetésre külön beágyazási feladatvégpont.
Válaszmezők
| Mező | Típus |
|---|---|
Mezőobject | Típusstring |
Mezőmodel | Típusstring |
Meződata[].index | Típusinteger |
Meződata[].embedding | Típusfinite float[] |
Mezőusage | Típusobject |
Hibák és következő lépések
| Válasz | Feltétel | Következő lépés |
|---|---|---|
Válasz400 · invalid_request_error | FeltételÉrvénytelen kötelező mezők, az anyag érvénytelen reprezentációja vagy érvénytelen paraméterérték | Következő lépésJavítsa a jelzett mezőket egy új létrehozási kérés előtt. |
Álnevek
Modell álnevei
Ailoot Ultra voyageai/voyage-code-4
Metódusútvonalak álnevei
Használja a fent látható metódusútvonalakat.
Kapcsolódó modellazonosítók
FAQ · VoyageAI by MongoDB: voyage-code-4
- Milyen bemenetek és eredmények érhetők el?
POST /v1/embeddings·voyageai/voyage-code-4:text,token_ids→embedding- Mely mezőket használja a kérés?
POST /v1/embeddings·voyageai/voyage-code-4:model,input,encoding_format,provider- Milyen korlátok érvényesek?
POST /v1/embeddings·voyageai/voyage-code-4:ctx:32000;input.budget.maximum:32000(UTF8-bájtok);input.min_items:1