VoyageAI by MongoDB: voyage-code-4
Voyage AI voyage-code-4 ialah model embedding kod untuk mencari sumber relevan daripada soalan, penerangan masalah dan matlamat ejen pengekodan. Ia menyokong input 32,000 token dan 256, 512, 1024 atau 2048 dimensi, dengan perwakilan titik terapung dan terkuantum.
Tentang model
Huraian ini merangkumi keupayaan model. Input, output dan pilihan yang tersedia di Ailoot disenaraikan di bawah untuk kaedah yang dipilih.
voyage-code-4 ialah model embedding khusus kod Voyage AI untuk carian repositori dan pemerolehan semula ejen pengekodan. Ia direka untuk membantu mencari sumber relevan apabila titik mula ialah soalan, gejala atau penerangan tugas, bukannya pengecam yang diketahui. Ia mewakili kod dan maklumat teks sebagai vektor berangka untuk pemerolehan semula; ia tidak menyunting repositori atau menjana pembetulan.
Dapatkan kod berdasarkan masalah yang disiasat
Pembuat menerangkan korpus latihan yang dikurasi daripada pull request yang telah diselesaikan, menghubungkan pertanyaan bahasa semula jadi dengan kod. Ini perbezaan bermakna daripada contoh latihan yang dibina terutamanya berdasarkan fail sumber dan docstringnya: tugas pemerolehan semula boleh bermula dengan tingkah laku yang perlu disiasat.
Sediakan pertanyaan seperti “Cari tempat hasil kosong menyebabkan operasi yang berjaya dilaporkan sebagai kegagalan.” Indeks bahagian sumber yang boleh dibaca bersama laluan fail dan komen berkaitan. Simpan syarat sekeliling fungsi apabila ia menerangkan tingkah lakunya. Calon yang dikembalikan patut membawa pembaca atau ejen kembali kepada bahagian sumber yang diwakilinya.
Pemerolehan semula semantik boleh melengkapi carian pengecam tepat dan teks penuh. Jika nama fungsi sudah diketahui, carian tepat masih berguna. Jika hanya gejala diketahui, carian vektor boleh menyediakan calon untuk diperiksa dan diperhalus dengan pertanyaan lain.
Peranan query dan document
Panduan pemerolehan semula Voyage membezakan pertanyaan daripada dokumen korpus melalui jenis input query/document. Untuk carian kod, gunakan penerangan masalah atau tugas sebagai query dan sumber atau dokumentasi berindeks sebagai document. Kaedah yang diterbitkan menambah arahan pemerolehan semula khusus peranan ketika menghasilkan embedding.
Simpan pemformatan asal kod, nama dan dokumentasi berkaitan di luar vektor. Untuk bahagian sumber, simpan laluan fail dan lokasinya; untuk panduan pengaturcaraan, simpan tajuknya. Selepas pemerolehan semula, periksa kod sebenar dan bahagian yang memanggilnya sebelum memilih suntingan. Kerelevanan calon tidak membuktikan bahawa ia satu-satunya punca masalah yang dilaporkan.
Pilihan konteks dan perwakilan
Panjang konteks model tepat yang diterbitkan ialah 32,000 token. Embedding lalainya mempunyai 1024 dimensi, dengan 256, 512 dan 2048 dimensi turut disokong melalui pembelajaran Matryoshka. Pengumuman mendokumenkan perwakilan titik terapung 32 bit, integer 8 bit bertanda dan tanpa tanda serta binari.
Pilih satu dimensi dan perwakilan untuk koleksi dan simpan bersama metadatanya. Vektor titik terapung dan perwakilan terkuantum memerlukan pengendalian penyimpanan serta perbandingan yang sepadan. Perwakilan binari mengekod maklumat vektor secara berbeza daripada senarai koordinat titik terapung biasa; kekalkan perbezaan itu ketika menyediakan hasil untuk carian.
Untuk fail panjang, pilih bahagian koheren dengan lokasi sumber yang dapat dijejaki semula. Fungsi mungkin memerlukan takrif jenis atau komen bersebelahan untuk menjelaskan syarat, manakala seluruh fail terlalu besar mungkin mengandungi bahan tidak berkaitan. Selaraskan bahagian dengan tugas yang akan dicari, bukannya menganggap konteks maksimum sebagai saiz segmen yang disyorkan.
Gunakan sumber yang diperoleh semula sebagai bukti
Aliran kerja ejen pengekodan praktikal mendapatkan sumber calon, membaca fail itu, mengikuti rujukan berkaitan dan mengecilkan skop carian sepanjang penyiasatan. Teks yang diperoleh semula menjadi konteks untuk peringkat penaakulan atau penyuntingan. Kekalkan perkaitannya dengan revisi repositori berindeks supaya calon diperiksa berdasarkan sumber yang betul.
Sumbangan khusus edisi voyage-code-4 ialah tumpuan pada langkah pemerolehan semula daripada masalah kepada kod yang digunakan ejen pengekodan, bersama dimensi dan perwakilan fleksibel. Outputnya ialah vektor pemerolehan semula, manakala diagnosis, penyuntingan dan pengesahan kekal tugas berasingan yang berasaskan repositori sebenar.
Ailoot Ultra · Pembenaman POST /v1/embeddings voyageai/voyage-code-4
voyageai/voyage-code-4Pengenalan
Voyage AI voyage-code-4 ialah model embedding kod untuk mencari sumber relevan daripada soalan, penerangan masalah dan matlamat ejen pengekodan. Ia menyokong input 32,000 token dan 256, 512, 1024 atau 2048 dimensi, dengan perwakilan titik terapung dan terkuantum.
- Input yang diterima
- Teks · token_ids
- Hasil
- embedding
Tersedia di Ailoot · input & kaedah
Ailoot Ultra · Pembenaman POST /v1/embeddings
- Input
text,token_ids- Output
embedding- Konteks
- 32,000 tokens
- Format output
- json
| Medan | Jenis | Keperluan | Nilai & had | Lalai |
|---|---|---|---|---|
Medanmodel | Jenisstring | KeperluanDiperlukan | Nilai & had voyageai/voyage-code-4 | Lalai— |
Medaninput | Jenisstring|string[]|integer[]|integer[][] | KeperluanDiperlukan | Nilai & had Item minimum: 1 Syarat: Kelompok homogen yang tidak kosong. ID token ialah integer bukan negatif. Bajet input: Maksimum: 32,000 · Unit teks: bait UTF8 · Unit token: elemen tatasusunan token | Lalai— |
Medanencoding_format | Jenisstring | KeperluanPilihan | Nilai & had float | Lalaifloat |
Medandimensions | Jenisinteger | KeperluanTidak disokong | Nilai & had Minimum: 1 | Lalai— |
Medanuser | Jenisjson_value | KeperluanPilihan | Nilai & had Syarat: Sumber membenarkan medan metadata JSON ini; semantik tepat di pihak huluan bergantung pada model. | Lalai— |
Medansession_id | Jenisjson_value | KeperluanPilihan | Nilai & had Syarat: Sumber membenarkan medan metadata JSON ini; semantik tepat di pihak huluan bergantung pada model. | Lalai— |
Medantrace | Jenisjson_value | KeperluanPilihan | Nilai & had Syarat: Sumber membenarkan medan metadata JSON ini; semantik tepat di pihak huluan bergantung pada model. | Lalai— |
Medanprovider | Jenisobject | KeperluanPilihan | Nilai & had Syarat: provider.options ditolak | Lalai— |
Gabungan bahan input
text_to_embedding
Parameter kaedah dan kitar hayat
| Parameter | Kontrak |
|---|---|
Parametercontent_type | Kontrakapplication/json |
Parameterrequired | Kontrakmodel, input |
Parameterinput_shapes | Kontrakstring, string[], nonnegative_integer_token_array, nonnegative_integer_token_array[] |
Parameterencoding_format | Kontrakfloat |
Parameterdimensions_override | Kontrakfalse |
Parametermax_input_budget_units | Kontrak32000 |
Parametermultimodal_objects | Kontrakfalse |
Parametermaterial_types | Kontraktext, token_ids |
Kitar hayat: synchronous_json
Simpan setiap indeks dan dimensi vektor.
Nama model multimodal tidak bermakna objek imej dibenarkan pada laluan khusus ini.
Pelan harga
Rujukan tarif tidak menambah pilihan permintaan. Parameter yang disokong disenaraikan untuk kaedah yang dipilih.
- Mod pantas
- Kadar standard Apabila mod pantas dipilih
- Mod flex
- Kadar standard Apabila mod flex dipilih
- Usaha penaakulan maksimum
- Kadar standard Apabila usaha penaakulan maksimum menggunakan pelarasan default
Kadar Ailoot
Harga mengikut konfigurasi
| Konfigurasi | Jadual kadar | Caj |
|---|---|---|
| KonfigurasiKadar asas token | Jadual kadarKadar asas | Caj Input · Token input $0.00024 / 1K token Output · Token output $0 / 1K token Input · Bacaan cache — / 1K token Input · Penulisan cache — / 1K token Input · Penulisan cache, 1 jam — / 1K token |
Ailoot merizabkan anggaran amaun sebelum permintaan. Selepas hasil diterima, caj akhir diselesaikan berdasarkan penggunaan terukur. Penyelesaian caj penstriman menggunakan rekod penggunaan akhir. Cara rizab dan penyelesaian caj berfungsi →
Contoh permintaan
Ailoot Ultra · Pembenaman
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)
Terima dan simpan hasil
Ailoot Ultra · Pembenaman
json
Simpan semua hasil yang selesai
Simpan setiap respons lengkap, fail dan bahagian kandungan yang dikembalikan.
Simpan setiap vektor bersama indeksnya. Bilangan vektor mesti sama dengan bilangan input; dimensi mesti konsisten.
Jika respons asal perlu disemak
Tiada titik akhir tugas pembenaman diperkenalkan.
Medan respons
| Medan | Jenis |
|---|---|
Medanobject | Jenisstring |
Medanmodel | Jenisstring |
Medandata[].index | Jenisinteger |
Medandata[].embedding | Jenisfinite float[] |
Medanusage | Jenisobject |
Ralat dan langkah seterusnya
| Respons | Syarat | Langkah seterusnya |
|---|---|---|
Respons400 · invalid_request_error | SyaratMedan wajib, perwakilan bahan atau nilai parameter tidak sah | Langkah seterusnyaBetulkan medan yang ditunjukkan sebelum permintaan penciptaan baharu. |
Alias
Alias model
Ailoot Ultra voyageai/voyage-code-4
Alias laluan kaedah
Gunakan laluan kaedah yang dipaparkan di atas.
ID pemanggil berkaitan
FAQ · VoyageAI by MongoDB: voyage-code-4
- Apakah input dan hasil yang tersedia?
POST /v1/embeddings·voyageai/voyage-code-4:text,token_ids→embedding- Apakah medan yang digunakan oleh permintaan?
POST /v1/embeddings·voyageai/voyage-code-4:model,input,encoding_format,provider- Apakah had yang terpakai?
POST /v1/embeddings·voyageai/voyage-code-4:ctx:32000;input.budget.maximum:32000(bait UTF8);input.min_items:1