VoyageAI by MongoDB: voyage-code-4
Voyage AI voyage-code-4 je model embeddingov kódu na hľadanie relevantného zdrojového kódu podľa otázok, opisov problémov a cieľov programovacích agentov. Podporuje vstupy s 32 000 tokenmi a rozmery 256, 512, 1024 alebo 2048 s reprezentáciami s pohyblivou rádovou čiarkou aj kvantovanými reprezentáciami.
O modeli
Tento opis pokrýva možnosti modelu. Dostupné vstupy, výstupy a voľby v Ailoot sú uvedené nižšie pre vybranú metódu.
voyage-code-4 je model embeddingov od Voyage AI špecializovaný na kód pre vyhľadávanie v repozitároch a získavanie zdrojov pre programovacích agentov. Má pomáhať nájsť relevantný zdrojový kód, keď východiskom je otázka, príznak alebo opis úlohy namiesto známeho identifikátora. Kód a textové informácie reprezentuje ako číselné vektory na vyhľadávanie; neupravuje repozitár ani negeneruje opravu.
Vyhľadajte kód podľa skúmaného problému
Výrobca opisuje tréningový korpus zostavený výberom z dokončených pull requestov, ktorý prepája dopyty v prirodzenom jazyku s kódom. To je významný rozdiel oproti tréningovým príkladom založeným najmä na zdrojových súboroch a ich docstringoch: vyhľadávacia úloha môže začať správaním, ktoré treba preskúmať.
Pripravte dopyt, napríklad „Nájdite, kde prázdny výsledok spôsobuje hlásenie úspešnej operácie ako zlyhania.“ Indexujte čitateľné časti zdrojového kódu s cestami k súborom a relevantnými komentármi. Okolité podmienky funkcie zachovajte tam, kde vysvetľujú jej správanie. Vrátený kandidát má viesť čitateľa alebo agenta späť k zdrojovej časti, ktorú reprezentuje.
Sémantické vyhľadávanie môže doplniť presné vyhľadávanie identifikátorov a plnotextové vyhľadávanie. Ak je názov funkcie už známy, presné vyhľadanie zostáva užitočné. Ak je známy iba príznak, vektorové vyhľadávanie môže poskytnúť kandidátov na preskúmanie a spresnenie ďalším dopytom.
Roly dopytu a dokumentu
Pokyny Voyage pre vyhľadávanie rozlišujú dopyt od dokumentu korpusu typmi vstupu query/document. Pri vyhľadávaní kódu použite opis problému alebo úlohy ako dopyt a indexovaný zdrojový kód či dokumentáciu ako dokument. Zverejnený postup pri vytváraní embeddingov pridáva vyhľadávacie inštrukcie špecifické pre rolu.
Pôvodné formátovanie kódu, názvy a relevantnú dokumentáciu ponechajte dostupné mimo vektora. Pri zdrojovej časti zachovajte cestu k súboru a umiestnenie, pri programovacej príručke nadpis. Po vyhľadaní preskúmajte skutočný kód a miesta, ktoré ho volajú, pred výberom úpravy. Relevantnosť kandidáta nepreukazuje, že je jedinou príčinou nahláseného problému.
Kontext a možnosti reprezentácie
Zverejnená dĺžka kontextu tohto konkrétneho modelu je 32 000 tokenov. Predvolený embedding má 1024 rozmerov a učenie Matryoshka podporuje aj rozmery 256, 512 a 2048. Oznámenie dokumentuje reprezentácie s 32-bitovou pohyblivou rádovou čiarkou, 8-bitovými celými číslami so znamienkom i bez znamienka a binárne reprezentácie.
Pre kolekciu vyberte jeden rozmer a reprezentáciu a uchovajte ich s metadátami. Vektory s pohyblivou rádovou čiarkou a kvantované reprezentácie potrebujú zodpovedajúce spracovanie pri ukladaní a porovnávaní. Binárna reprezentácia kóduje vektorové informácie inak než zoznam bežných súradníc s pohyblivou rádovou čiarkou; tento rozdiel zachovajte pri príprave výsledkov na vyhľadávanie.
Pri dlhom súbore vyberte ucelené časti, ktorých zdrojové umiestnenia možno spätne nájsť. Funkcia môže potrebovať susednú definíciu typu alebo komentár na vysvetlenie podmienky, zatiaľ čo celý nadmerný súbor môže obsahovať nesúvisiaci materiál. Časť prispôsobte hľadanej úlohe namiesto považovania maximálneho kontextu za uprednostňovanú veľkosť časti.
Použite vyhľadaný zdrojový kód ako dôkaz
Praktický postup programovacieho agenta vyhľadá kandidátsky zdrojový kód, prečíta súbory, sleduje relevantné odkazy a zužuje vyhľadávanie počas skúmania. Vyhľadaný text sa stáva kontextom pre fázu uvažovania alebo úprav. Zachovajte jeho spojenie s indexovanou revíziou repozitára, aby bol kandidát posudzovaný voči správnemu zdrojovému kódu.
Prínosom konkrétnej edície voyage-code-4 je zameranie na krok vyhľadávania kódu podľa problému, ktorý používajú programovací agenti, spolu s flexibilnými rozmermi a reprezentáciami. Jej výstupom je vyhľadávací vektor; diagnostika, úpravy a overovanie zostávajú samostatnými úlohami založenými na skutočnom repozitári.
Ailoot Ultra · Embeddingy POST /v1/embeddings voyageai/voyage-code-4
voyageai/voyage-code-4Úvod
Voyage AI voyage-code-4 je model embeddingov kódu na hľadanie relevantného zdrojového kódu podľa otázok, opisov problémov a cieľov programovacích agentov. Podporuje vstupy s 32 000 tokenmi a rozmery 256, 512, 1024 alebo 2048 s reprezentáciami s pohyblivou rádovou čiarkou aj kvantovanými reprezentáciami.
- Povolené vstupy
- Text · token_ids
- Výsledky
- embedding
Dostupné v Ailoot · vstupy a metódy
Ailoot Ultra · Embeddingy POST /v1/embeddings
- Vstup
text,token_ids- Výstup
embedding- Kontext
- 32 000 tokens
- Výstupný formát
- json
| Pole | Typ | Požiadavka | Hodnoty a limity | Predvolené |
|---|---|---|---|---|
Polemodel | Typstring | PožiadavkaPovinné | Hodnoty a limity voyageai/voyage-code-4 | Predvolené— |
Poleinput | Typstring|string[]|integer[]|integer[][] | PožiadavkaPovinné | Hodnoty a limity Minimálny počet položiek: 1 Podmienky: Neprázdna homogénna dávka. ID tokenov sú nezáporné celé čísla. Vstupný rozpočet: Maximum: 32 000 · Textová jednotka: bajty UTF8 · Jednotka tokenov: prvky poľa tokenov | Predvolené— |
Poleencoding_format | Typstring | PožiadavkaVoliteľné | Hodnoty a limity float | Predvolenéfloat |
Poledimensions | Typinteger | PožiadavkaNepodporované | Hodnoty a limity Minimum: 1 | Predvolené— |
Poleuser | Typjson_value | PožiadavkaVoliteľné | Hodnoty a limity Podmienky: Zdroj povoľuje toto pole metadát vo formáte JSON; presný význam na strane dodávateľa sa líši podľa modelu. | Predvolené— |
Polesession_id | Typjson_value | PožiadavkaVoliteľné | Hodnoty a limity Podmienky: Zdroj povoľuje toto pole metadát vo formáte JSON; presný význam na strane dodávateľa sa líši podľa modelu. | Predvolené— |
Poletrace | Typjson_value | PožiadavkaVoliteľné | Hodnoty a limity Podmienky: Zdroj povoľuje toto pole metadát vo formáte JSON; presný význam na strane dodávateľa sa líši podľa modelu. | Predvolené— |
Poleprovider | Typobject | PožiadavkaVoliteľné | Hodnoty a limity Podmienky: provider.options sa odmieta | Predvolené— |
Kombinácie vstupných podkladov
text_to_embedding
Parametre a životný cyklus metódy
| Parameter | Špecifikácia |
|---|---|
Parametercontent_type | Špecifikáciaapplication/json |
Parameterrequired | Špecifikáciamodel, input |
Parameterinput_shapes | Špecifikáciastring, string[], nonnegative_integer_token_array, nonnegative_integer_token_array[] |
Parameterencoding_format | Špecifikáciafloat |
Parameterdimensions_override | Špecifikáciafalse |
Parametermax_input_budget_units | Špecifikácia32000 |
Parametermultimodal_objects | Špecifikáciafalse |
Parametermaterial_types | Špecifikáciatext, token_ids |
Životný cyklus: synchronous_json
Uchovajte každý index a rozmer vektora.
Názov multimodálneho modelu neznamená, že na tejto konkrétnej trase možno použiť objekty obrázkov.
Cenník
Tarifné údaje nepridávajú možnosti požiadavky. Podporované parametre sú uvedené pri vybranej metóde.
- Rýchly režim
- Štandardná sadzba Keď je zvolený rýchly režim
- Režim Flex
- Štandardná sadzba Keď je zvolený režim flex
- Maximálna úroveň uvažovania
- Štandardná sadzba Keď sa pri maximálnej úrovni uvažovania používa predvolená úprava (default)
Sadzby Ailoot
Ceny podľa konfigurácie
| Konfigurácia | Sadzobník | Poplatok |
|---|---|---|
| KonfiguráciaZákladné sadzby za tokeny | SadzobníkZákladná sadzba | Poplatok Vstup · Vstupné tokeny $0.00024 / 1K tokenov Výstup · Výstupné tokeny $0 / 1K tokenov Vstup · Čítanie cache — / 1K tokenov Vstup · Zápis do cache — / 1K tokenov Vstup · Zápis do cache, 1 hod — / 1K tokenov |
Ailoot pred požiadavkou rezervuje odhadovanú sumu. Po získaní výsledku vyúčtuje konečný poplatok podľa nameraného využitia. Pri streamovaní sa vyúčtovanie riadi konečným záznamom využitia. Ako funguje rezervácia a vyúčtovanie →
Príklady požiadaviek
Ailoot Ultra · Embeddingy
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)
Prijať a uložiť výsledky
Ailoot Ultra · Embeddingy
json
Uchovať všetky dokončené výsledky
Uložte každú úplnú vrátenú odpoveď, súbor a časť obsahu.
Uchovajte každý vektor spolu s jeho indexom. Počet vektorov sa musí rovnať počtu vstupov; rozmery musia byť konzistentné.
Ak treba overiť pôvodnú odpoveď
Nezavádza sa žiadny koncový bod pre úlohy tvorby embeddingov.
Polia odpovede
| Pole | Typ |
|---|---|
Poleobject | Typstring |
Polemodel | Typstring |
Poledata[].index | Typinteger |
Poledata[].embedding | Typfinite float[] |
Poleusage | Typobject |
Chyby a ďalšie kroky
| Odpoveď | Podmienka | Ďalší krok |
|---|---|---|
Odpoveď400 · invalid_request_error | PodmienkaNeplatné povinné polia, reprezentácia materiálu alebo hodnota parametra | Ďalší krokPred novou požiadavkou na vytvorenie opravte uvedené polia. |
Aliasy
Aliasy modelov
Ailoot Ultra voyageai/voyage-code-4
Aliasy ciest metód
Použite cesty metód uvedené vyššie.
Súvisiace ID na volanie
FAQ · VoyageAI by MongoDB: voyage-code-4
- Aké vstupy a výsledky sú dostupné?
POST /v1/embeddings·voyageai/voyage-code-4:text,token_ids→embedding- Aké polia používa požiadavka?
POST /v1/embeddings·voyageai/voyage-code-4:model,input,encoding_format,provider- Aké limity platia?
POST /v1/embeddings·voyageai/voyage-code-4:ctx:32000;input.budget.maximum:32000(bajty UTF8);input.min_items:1