VoyageAI by MongoDB: voyage-code-4
Voyage AI voyage-code-4 je model vektorskih vložitev kode za iskanje ustrezne izvorne kode na podlagi vprašanj, opisov težav in ciljev programerskih agentov. Podpira vhode do 32 000 žetonov ter 256, 512, 1024 ali 2048 dimenzij, s predstavitvami s plavajočo vejico in kvantiziranimi predstavitvami.
O modelu
Ta opis zajema zmožnosti modela. Vhodi, izhodi in možnosti, ki so na voljo v Ailoot, so spodaj navedeni za izbrano metodo.
voyage-code-4 je model vektorskih vložitev podjetja Voyage AI, specializiran za kodo, za iskanje po repozitorijih in pridobivanje gradiva za programerske agente. Namenjen je pomoči pri iskanju ustrezne izvorne kode, kadar je izhodišče vprašanje, simptom ali opis naloge namesto znanega identifikatorja. Kodo in besedilne informacije predstavi kot numerične vektorje za iskanje; ne ureja repozitorija in ne ustvari popravka.
Poiščite kodo na podlagi težave, ki jo preiskujete
Proizvajalec opisuje učni korpus, izbran iz zaključenih zahtev za združitev kode, ki povezuje poizvedbe v naravnem jeziku s kodo. To je pomembna razlika od učnih primerov, zgrajenih predvsem okoli izvornih datotek in njihovih dokumentacijskih nizov: iskalna naloga se lahko začne z vedenjem, ki ga je treba raziskati.
Pripravite poizvedbo, na primer: »Poišči, kje prazen rezultat povzroči, da je uspešna operacija označena kot neuspešna.« Indeksirajte berljive dele izvorne kode z njihovimi potmi do datotek in ustreznimi komentarji. Ohranite pogoje v okolici funkcije, kadar pojasnjujejo njeno vedenje. Vrnjeni kandidat mora bralca ali agenta pripeljati nazaj do dela izvorne kode, ki ga predstavlja.
Semantično iskanje lahko dopolni natančno iskanje po identifikatorjih in iskanje po celotnem besedilu. Če je ime funkcije že znano, ostaja neposredno iskanje koristno. Če je znan le simptom, lahko vektorsko iskanje ponudi kandidate za pregled in nadaljnjo zožitev z drugo poizvedbo.
Vlogi poizvedbe in dokumenta
Voyageova navodila za iskanje razlikujejo med poizvedbo in dokumentom korpusa z vhodnima tipoma query/document. Pri iskanju kode uporabite opis težave ali naloge kot poizvedbo, indeksirano izvorno kodo ali dokumentacijo pa kot dokument. Objavljeni postopek med izdelavo vektorskih vložitev doda iskalna navodila glede na vlogo.
Izvirno oblikovanje kode, imena in ustrezno dokumentacijo ohranite na voljo zunaj vektorja. Za del izvorne kode ohranite pot do datoteke in mesto v njej, za programerski vodnik pa naslov. Po iskanju preglejte dejansko kodo in njene klicatelje, preden izberete spremembo. Relevantnost kandidata ne dokazuje, da je edini vzrok prijavljene težave.
Kontekst in izbira predstavitve
Objavljena dolžina konteksta tega konkretnega modela je 32 000 žetonov. Privzeta vektorska vložitev ima 1024 dimenzij, z učenjem Matryoshka pa so podprte tudi dimenzije 256, 512 in 2048. Objava dokumentira 32-bitne predstavitve s plavajočo vejico, predznačene in nepredznačene 8-bitne celoštevilske ter binarne predstavitve.
Za zbirko izberite eno dimenzijo in predstavitev ter ju ohranite v njenih metapodatkih. Vektorji s plavajočo vejico in kvantizirane predstavitve zahtevajo ustrezno obravnavo pri shranjevanju in primerjanju. Binarna predstavitev kodira vektorske informacije drugače kot seznam običajnih koordinat s plavajočo vejico; to razliko ohranite pri pripravi rezultatov za iskanje.
Pri dolgi datoteki izberite smiselno povezane dele, katerih izvorno mesto je mogoče ponovno najti. Funkcija lahko za pojasnitev pogoja potrebuje sosednjo definicijo tipa ali komentar, celotna prevelika datoteka pa lahko vključuje nepovezano gradivo. Del prilagodite nalogi, za katero bo potekalo iskanje, namesto da največji kontekst obravnavate kot prednostno velikost odseka.
Uporabite najdeno izvorno kodo kot dokazno gradivo
Praktičen potek programerskega agenta poišče kandidate izvorne kode, prebere te datoteke, sledi ustreznim sklicem in med preiskavo zožuje iskanje. Najdeno besedilo postane kontekst za stopnjo sklepanja ali urejanja. Ohranite njegovo povezavo z indeksirano revizijo repozitorija, da kandidata pregledate glede na pravilno izvorno kodo.
Poseben prispevek različice voyage-code-4 je osredotočenost na iskanje kode na podlagi težav, ki ga uporabljajo programerski agenti, skupaj s prilagodljivimi dimenzijami in predstavitvami. Njen izhod je iskalni vektor, medtem ko diagnoza, urejanje in preverjanje ostajajo ločene naloge, utemeljene v dejanskem repozitoriju.
Ailoot Ultra · Vektorske predstavitve POST /v1/embeddings voyageai/voyage-code-4
voyageai/voyage-code-4Začetek
Voyage AI voyage-code-4 je model vektorskih vložitev kode za iskanje ustrezne izvorne kode na podlagi vprašanj, opisov težav in ciljev programerskih agentov. Podpira vhode do 32 000 žetonov ter 256, 512, 1024 ali 2048 dimenzij, s predstavitvami s plavajočo vejico in kvantiziranimi predstavitvami.
- Dovoljeni vhodi
- Besedilo · token_ids
- Rezultati
- embedding
Na voljo v Ailoot · vhodi in metode
Ailoot Ultra · Vektorske predstavitve POST /v1/embeddings
- Vhod
text,token_ids- Izhod
embedding- Kontekst
- 32.000 tokens
- Izhodni format
- json
| Polje | Vrsta | Zahteva | Vrednosti in omejitve | Privzeto |
|---|---|---|---|---|
Poljemodel | Vrstastring | ZahtevaObvezno | Vrednosti in omejitve voyageai/voyage-code-4 | Privzeto— |
Poljeinput | Vrstastring|string[]|integer[]|integer[][] | ZahtevaObvezno | Vrednosti in omejitve Najmanjše število elementov: 1 Pogoji: Neprazen paket istovrstnih vhodnih podatkov. Identifikatorji žetonov so nenegativna cela števila. Vhodni proračun: Največ: 32.000 · Besedilna enota: bajti UTF8 · Enota žetonov: elementi polja žetonov | Privzeto— |
Poljeencoding_format | Vrstastring | ZahtevaIzbirno | Vrednosti in omejitve float | Privzetofloat |
Poljedimensions | Vrstainteger | ZahtevaNi podprto | Vrednosti in omejitve Najmanj: 1 | Privzeto— |
Poljeuser | Vrstajson_value | ZahtevaIzbirno | Vrednosti in omejitve Pogoji: Izvor dovoljuje to polje metapodatkov JSON; natančen pomen pri ponudniku je odvisen od modela. | Privzeto— |
Poljesession_id | Vrstajson_value | ZahtevaIzbirno | Vrednosti in omejitve Pogoji: Izvor dovoljuje to polje metapodatkov JSON; natančen pomen pri ponudniku je odvisen od modela. | Privzeto— |
Poljetrace | Vrstajson_value | ZahtevaIzbirno | Vrednosti in omejitve Pogoji: Izvor dovoljuje to polje metapodatkov JSON; natančen pomen pri ponudniku je odvisen od modela. | Privzeto— |
Poljeprovider | Vrstaobject | ZahtevaIzbirno | Vrednosti in omejitve Pogoji: provider.options je zavrnjen | Privzeto— |
Kombinacije vhodnih gradiv
text_to_embedding
Parametri in življenjski cikel metode
| Parameter | Specifikacija |
|---|---|
Parametercontent_type | Specifikacijaapplication/json |
Parameterrequired | Specifikacijamodel, input |
Parameterinput_shapes | Specifikacijastring, string[], nonnegative_integer_token_array, nonnegative_integer_token_array[] |
Parameterencoding_format | Specifikacijafloat |
Parameterdimensions_override | Specifikacijafalse |
Parametermax_input_budget_units | Specifikacija32000 |
Parametermultimodal_objects | Specifikacijafalse |
Parametermaterial_types | Specifikacijatext, token_ids |
Življenjski cikel: synchronous_json
Shranite indeks in dimenzijo vsakega vektorja.
Ime multimodalnega modela ne pomeni, da so na tej točno določeni poti dovoljeni slikovni objekti.
Cenik
Tarifni podatki ne dodajajo možnosti zahteve. Podprti parametri so navedeni pri izbrani metodi.
- Hitri način
- Standardna tarifa Ko je izbran hitri način
- Način flex
- Standardna tarifa Ko je izbran način flex
- Najvišja raven razmišljanja
- Standardna tarifa Ko najvišja raven razmišljanja uporablja privzeto prilagoditev (default)
Cene Ailoot
Cene po nastavitvah
| Nastavitev | Cenovna lestvica | Strošek |
|---|---|---|
| NastavitevOsnovne cene za žetone | Cenovna lestvicaOsnovna cena | Strošek Vhod · Vhodni žetoni $0.00024 / 1K žetonov Izhod · Izhodni žetoni $0 / 1K žetonov Vhod · Branje predpomnilnika — / 1K žetonov Vhod · Zapis v predpomnilnik — / 1K žetonov Vhod · Zapis v predpomnilnik, 1 ura — / 1K žetonov |
Ailoot pred zahtevo rezervira ocenjeni znesek. Po rezultatu obračuna končni strošek na podlagi izmerjene porabe. Obračun pretakanja uporablja končni zapis porabe. Kako delujeta rezervacija in obračun →
Primeri zahtev
Ailoot Ultra · Vektorske predstavitve
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)
Prejmi in shrani rezultate
Ailoot Ultra · Vektorske predstavitve
json
Ohrani vse dokončane rezultate
Shranite vsak v celoti vrnjen odgovor, datoteko in del vsebine.
Shranite vsak vektor skupaj z njegovim indeksom. Število vektorjev mora biti enako številu vhodov; dimenzije morajo biti skladne.
Če je treba preveriti izvirni odgovor
Končna točka za opravila ustvarjanja vektorskih predstavitev se ne uvaja.
Polja odgovora
| Polje | Vrsta |
|---|---|
Poljeobject | Vrstastring |
Poljemodel | Vrstastring |
Poljedata[].index | Vrstainteger |
Poljedata[].embedding | Vrstafinite float[] |
Poljeusage | Vrstaobject |
Napake in naslednji koraki
| Odgovor | Pogoj | Naslednji korak |
|---|---|---|
Odgovor400 · invalid_request_error | PogojNeveljavna obvezna polja, predstavitev gradiva ali vrednost parametra | Naslednji korakPred novo zahtevo za ustvarjanje popravite navedena polja. |
Druga imena
Druga imena modelov
Ailoot Ultra voyageai/voyage-code-4
Druga imena poti metod
Uporabite zgoraj navedene poti metod.
Povezani ID-ji za klic
FAQ · VoyageAI by MongoDB: voyage-code-4
- Kateri vhodi in rezultati so na voljo?
POST /v1/embeddings·voyageai/voyage-code-4:text,token_ids→embedding- Katera polja uporablja zahteva?
POST /v1/embeddings·voyageai/voyage-code-4:model,input,encoding_format,provider- Katere omejitve veljajo?
POST /v1/embeddings·voyageai/voyage-code-4:ctx:32000;input.budget.maximum:32000(bajti UTF8);input.min_items:1