models

VoyageAI by MongoDB: voyage-code-4

Markdown · JSON

VoyageAI by MongoDB: voyage-code-4

Voyage AI voyage-code-4 yra kodo įterpinių modelis, skirtas aktualiam šaltinio kodui rasti pagal klausimus, problemų aprašymus ir programavimo agentų tikslus. Jis palaiko 32 000 žetonų įvestis ir 256, 512, 1024 arba 2048 matmenis, naudodamas slankiojo kablelio ir kvantuotas reprezentacijas.

Apie modelį

Šis aprašas apima modelio galimybes. Pasirinktam metodui Ailoot prieinamos įvestys, išvestys ir parinktys nurodytos toliau.

voyage-code-4 yra Voyage AI kodo įterpinių modelis, skirtas paieškai saugyklose ir programavimo agentų informacijos paieškai. Jis sukurtas padėti rasti aktualų šaltinio kodą, kai atspirties taškas yra klausimas, simptomas ar užduoties aprašymas, o ne žinomas identifikatorius. Kodą ir tekstinę informaciją jis atvaizduoja skaitiniais vektoriais paieškai; saugyklos neredaguoja ir pataisos negeneruoja.

Raskite kodą pagal tiriamą problemą

Gamintojas aprašo mokymo korpusą, atrinktą iš užbaigtų pull requestų, jungiantį natūraliosios kalbos užklausas su kodu. Tai reikšmingas skirtumas nuo mokymo pavyzdžių, daugiausia sudarytų iš šaltinio failų ir jų dokumentavimo eilučių: paieškos užduotis gali prasidėti nuo elgsenos, kurią reikia ištirti.

Paruoškite užklausą, pavyzdžiui, „Raskite vietą, kur tuščias rezultatas lemia, kad sėkminga operacija pranešama kaip nesėkmė“. Indeksuokite skaitomus šaltinio kodo skyrius su failų keliais ir aktualiais komentarais. Išsaugokite funkciją supančias sąlygas, kai jos paaiškina jos elgseną. Grąžintas kandidatas turėtų nuvesti skaitytoją ar agentą atgal į jo atvaizduojamą šaltinio skyrių.

Semantinė paieška gali papildyti tikslių identifikatorių ir viso teksto paiešką. Jei funkcijos pavadinimas jau žinomas, tiksli paieška išlieka naudinga. Jei žinomas tik simptomas, vektorinė paieška gali pateikti kandidatus, kuriuos galima patikrinti ir patikslinti kita užklausa.

Užklausos ir dokumento vaidmenys

Voyage paieškos gairės skiria užklausą nuo korpuso dokumento per query/document įvesties tipus. Ieškodami kodo problemos ar užduoties aprašymą naudokite kaip užklausą, o indeksuotą šaltinio kodą ar dokumentaciją – kaip dokumentą. Paskelbta procedūra kuriant įterpinius prideda vaidmeniui būdingas paieškos instrukcijas.

Originalų kodo formatavimą, pavadinimus ir aktualią dokumentaciją išlaikykite prieinamus už vektoriaus ribų. Šaltinio skyriui išsaugokite failo kelią ir vietą, o programavimo vadovui – antraštę. Po paieškos patikrinkite tikrąjį kodą ir jį iškviečiančias vietas prieš pasirinkdami redagavimą. Kandidato aktualumas neįrodo, kad jis yra vienintelė praneštos problemos priežastis.

Konteksto ir reprezentacijos pasirinkimai

Paskelbtas šio konkretaus modelio konteksto ilgis yra 32 000 žetonų. Jo numatytasis įterpinys turi 1024 matmenis, o Matryoshka mokymasis taip pat palaiko 256, 512 ir 2048 matmenis. Pranešime dokumentuojamos 32 bitų slankiojo kablelio, 8 bitų sveikųjų skaičių su ženklu ir be ženklo bei dvejetainės reprezentacijos.

Kolekcijai pasirinkite vieną matmenų skaičių ir reprezentaciją bei saugokite juos su jos metaduomenimis. Slankiojo kablelio vektoriams ir kvantuotoms reprezentacijoms reikia atitinkamo saugojimo ir palyginimo apdorojimo. Dvejetainė reprezentacija vektoriaus informaciją koduoja kitaip nei įprastų slankiojo kablelio koordinačių sąrašas; ruošdami rezultatus paieškai išsaugokite šį skirtumą.

Ilgame faile rinkitės rišlius skyrius, kurių vietas šaltinyje galima atkurti. Funkcijai gali reikėti gretimo tipo apibrėžimo ar komentaro sąlygai paaiškinti, o visas pernelyg didelis failas gali turėti nesusijusios medžiagos. Skyrių suderinkite su užduotimi, pagal kurią bus ieškoma, užuot didžiausią kontekstą laikę pageidaujamu fragmento dydžiu.

Rastą šaltinio kodą naudokite kaip pagrindimą

Praktinis programavimo agento procesas suranda kandidatinius šaltinio fragmentus, perskaito tuos failus, seka aktualias nuorodas ir siaurina paiešką tyrimui tęsiantis. Rastas tekstas tampa samprotavimo ar redagavimo etapo kontekstu. Išsaugokite jo ryšį su indeksuota saugyklos versija, kad kandidatas būtų tikrinamas pagal tinkamą šaltinį.

Konkrečios voyage-code-4 versijos indėlis yra dėmesys programavimo agentų naudojamam paieškos nuo problemos iki kodo etapui kartu su lanksčiais matmenimis ir reprezentacijomis. Jo išvestis yra paieškos vektorius, o diagnostika, redagavimas ir tikrinimas lieka atskiromis užduotimis, pagrįstomis tikrąja saugykla.

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

voyageai/voyage-code-4

VoyageAI by MongoDB /voyageai/voyage-code-4

Pradžia

Voyage AI voyage-code-4 yra kodo įterpinių modelis, skirtas aktualiam šaltinio kodui rasti pagal klausimus, problemų aprašymus ir programavimo agentų tikslus. Jis palaiko 32 000 žetonų įvestis ir 256, 512, 1024 arba 2048 matmenis, naudodamas slankiojo kablelio ir kvantuotas reprezentacijas.

Leidžiamos įvestys
Tekstas · token_ids
Rezultatai
embedding

Prieinama Ailoot · įvestys ir metodai

Ailoot Ultra · Įterpiniai POST /v1/embeddings
Įvestis
text, token_ids
Išvestis
embedding
Kontekstas
32 000 tokens
Išvesties formatas
json
LaukasTipasReikalavimasReikšmės ir ribosNumatyta
LaukasmodelTipasstringReikalavimasPrivalomaReikšmės ir ribos
voyageai/voyage-code-4
Numatyta—
LaukasinputTipasstring|string[]|integer[]|integer[][]ReikalavimasPrivalomaReikšmės ir ribos
Mažiausias elementų skaičius: 1
Sąlygos: Netuščias vienalyčių įvesčių paketas. Žetonų ID yra neneigiami sveikieji skaičiai.
Įvesties biudžetas: Didžiausia reikšmė: 32 000 · Teksto vienetas: UTF8 baitai · Tokenų vienetas: žetonų masyvo elementai
Numatyta—
Laukasencoding_formatTipasstringReikalavimasNeprivalomaReikšmės ir ribos
float
Numatytafloat
LaukasdimensionsTipasintegerReikalavimasNepalaikomaReikšmės ir ribos
Mažiausia reikšmė: 1
Numatyta—
LaukasuserTipasjson_valueReikalavimasNeprivalomaReikšmės ir ribos
Sąlygos: Šaltinis leidžia šį JSON metaduomenų lauką; tiksli jo reikšmė tiekėjo sistemoje priklauso nuo modelio.
Numatyta—
Laukassession_idTipasjson_valueReikalavimasNeprivalomaReikšmės ir ribos
Sąlygos: Šaltinis leidžia šį JSON metaduomenų lauką; tiksli jo reikšmė tiekėjo sistemoje priklauso nuo modelio.
Numatyta—
LaukastraceTipasjson_valueReikalavimasNeprivalomaReikšmės ir ribos
Sąlygos: Šaltinis leidžia šį JSON metaduomenų lauką; tiksli jo reikšmė tiekėjo sistemoje priklauso nuo modelio.
Numatyta—
LaukasproviderTipasobjectReikalavimasNeprivalomaReikšmės ir ribos
Sąlygos: provider.options atmetamas
Numatyta—
Įvesties medžiagos deriniai

text_to_embedding

Metodo parametrai ir gyvavimo ciklas
ParametrasSpecifikacija
Parametrascontent_typeSpecifikacijaapplication/json
ParametrasrequiredSpecifikacijamodel, input
Parametrasinput_shapesSpecifikacijastring, string[], nonnegative_integer_token_array, nonnegative_integer_token_array[]
Parametrasencoding_formatSpecifikacijafloat
Parametrasdimensions_overrideSpecifikacijafalse
Parametrasmax_input_budget_unitsSpecifikacija32000
Parametrasmultimodal_objectsSpecifikacijafalse
Parametrasmaterial_typesSpecifikacijatext, token_ids

Gyvavimo ciklas: synchronous_json

Išsaugokite kiekvieną vektoriaus indeksą ir matmenį.

Tai, kad modelio pavadinimas nurodo multimodalumą, nereiškia, jog šiuo konkrečiu keliu priimami vaizdų objektai.

Planai

Tarifų informacija neprideda užklausos parinkčių. Palaikomi parametrai nurodyti prie pasirinkto metodo.

Spartusis režimas
Standartinis įkainis Pasirinkus spartųjį režimą
Flex režimas
Standartinis įkainis Pasirinkus flex režimą
Didžiausios samprotavimo pastangos
Standartinis įkainis Kai didžiausioms samprotavimo pastangoms taikomas numatytasis koregavimas (default)

Ailoot įkainiai

Kainos pagal konfigūraciją

KonfigūracijaĮkainių lentelėMokestis
KonfigūracijaBaziniai žetonų įkainiaiĮkainių lentelėBazinis įkainisMokestis
Įvestis · Įvesties tokenai $0.00024 / 1K tokenų
Išvestis · Išvesties tokenai $0 / 1K tokenų
Įvestis · Talpyklos skaitymas — / 1K tokenų
Įvestis · Rašymas į talpyklą — / 1K tokenų
Įvestis · Rašymas į talpyklą, 1 val — / 1K tokenų

Ailoot prieš užklausą rezervuoja numatomą sumą. Gavus rezultatą, galutinis mokestis nuskaitomas pagal išmatuotą naudojimą. Srautinio atsakymo atsiskaitymui naudojamas galutinis naudojimo įrašas. Kaip veikia rezervavimas ir atsiskaitymas →

Užklausų pavyzdžiai

Ailoot Ultra · Įterpiniai

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)

Gauti ir išsaugoti rezultatus

Ailoot Ultra · Įterpiniai

json

Išsaugoti visus baigtus rezultatus

Išsaugokite kiekvieną visą grąžintą atsakymą, failą ir turinio dalį.

Išsaugokite kiekvieną vektorių su jo indeksu. Vektorių skaičius turi sutapti su įvesčių skaičiumi; jų matmenų skaičius turi būti vienodas.

Jei reikia patikrinti pradinį atsakymą

Vektorių generavimo užduotims atskiras API galinis taškas neįvedamas.

Atsakymo laukai
LaukasTipas
LaukasobjectTipasstring
LaukasmodelTipasstring
Laukasdata[].indexTipasinteger
Laukasdata[].embeddingTipasfinite float[]
LaukasusageTipasobject
Klaidos ir tolesni veiksmai
AtsakymasSąlygaKitas žingsnis
Atsakymas400 · invalid_request_errorSąlygaNetinkami privalomi laukai, medžiagos pateikimo forma arba parametro reikšmėKitas žingsnisPrieš naują kūrimo užklausą pataisykite nurodytus laukus.

Pseudonimai

Modelių pseudonimai

Ailoot Ultra voyageai/voyage-code-4

Metodų kelių pseudonimai

Naudokite aukščiau nurodytus metodų kelius.

Susiję ID iškvietimui

voyageai/voyage-code-4

FAQ · VoyageAI by MongoDB: voyage-code-4
Kokios įvestys ir rezultatai prieinami?

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

Kokius laukus naudoja užklausa?

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

Kokie apribojimai taikomi?

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

Išsamiau

Prijunkite Ailoot prie Claude Code, OpenCode, Hermes arba savo programos.

Įmonė ir jos projektų portfelis

Įmonė ir jos projektų portfelis: milijonai klientų; mėnesio pardavimai siekia milijardus.

Pirkite žetonus su nuolaida.

Prenumeratos nuolaida reguliariam darbui. Kodai — iki 50% žetonų pirkimui.

Prenumerata
Pasirinkite planą su nuolaida reguliarioms užklausoms.
Nuolaidos kodas iki 50%
Įveskite kodą perkant. Kaina perskaičiuojama pagal galiojančios akcijos sąlygas.
Išlaidos istorijoje
Kiekvienai užklausai išsaugomi modelis, žetonai ir suma.

Pasirinkti prenumeratą · Peržiūrėti modelių kainas

Prijunkite API prie produkto, kurį parduodate.

SaaS, programos ir botai pagal Ailoot ofertą bei licencijos sutartį. Perpardavimui paprašykite perpardavėjo licencijos.

Komercinė programa
Teksto, vaizdų, video ir garso kūrimą integruokite į mokamas paslaugos funkcijas.
Perpardavėjo licencija
Atsiųskite projekto aprašymą ir prieigos schemą. Paprašykite rašytinių naudojimo ir perpardavimo sąlygų.
Dokumentai svetainėje
Oferta, licencijos sutartis ir duomenų tvarkymo politika prieinamos prieš prisijungiant.

Paprašyti perpardavėjo licencijos · Oferta ir licencijos sutartis