Mistral: Codestral Embed 2505
Codestral Embed 2505 merepresentasikan kode dan kueri bahasa alami sebagai vektor untuk pencarian repositori serta temu kembali asisten pemrograman. Pembuat mendokumentasikan konteks 8.192 token, dimensi yang dapat dikonfigurasi hingga 3.072, dan format keluaran floating-point, integer, atau bit terkemas.
Tentang model
Deskripsi ini mencakup kemampuan model. Masukan, keluaran, dan opsi yang tersedia di Ailoot tercantum di bawah untuk metode yang dipilih.
Codestral Embed 2505 adalah model embedding Mistral AI yang dikhususkan untuk temu kembali kode. Model menerima teks berisi kode sumber atau kueri kode dalam bahasa alami, lalu mengembalikan vektor numerik. Pembuat memosisikannya untuk pencarian repositori, temu kembali konteks asisten pemrograman, analisis kemiripan dan duplikasi, serta pengelompokan kode berdasarkan fungsi atau strukturnya. Pengenal rilis tetapnya adalah codestral-embed-2505.
Masukan dan representasi
Masukan kode dapat berupa fungsi, fragmen sumber terkait, atau unit repositori lain yang bermakna. Kueri bahasa alami dapat menjelaskan perilaku yang ingin ditemukan, bukan menyebut simbol tepat. Embedding merepresentasikan masukan untuk perbandingan; model tidak menghasilkan implementasi baru atau menjalankan kode yang diterimanya.
Rilis resmi mendokumentasikan konteks masukan lengkap 8.192 token. Untuk temu kembali, pembuat menyarankan potongan sekitar 3.000 karakter dengan tumpang tindih 1.000 karakter, serta mencatat bahwa potongan lebih besar dapat menurunkan kinerja temu kembali. Ini adalah rekomendasi persiapan temu kembali; 3.000 karakter bukan batas token. Simpan hubungan berkas, simbol, dan lokasi sumber dengan setiap item yang disiapkan agar aplikasi dapat mengembalikan kode relevan setelah pencarian.
Presisi keluaran dan dimensi
Panduan embedding kode mendokumentasikan jenis keluaran float, int8, uint8, binary, dan ubinary. Float menggunakan nilai presisi tunggal 32 bit. Int8 menggunakan integer bertanda 8 bit dari -128 hingga 127, sedangkan uint8 menggunakan nilai tanpa tanda 8 bit dari 0 hingga 255. Binary dan ubinary menyimpan nilai satu bit terkuantisasi dalam elemen 8 bit terkemas, masing-masing menggunakan wadah bertanda atau tanpa tanda.
Representasi bit terkemas mengubah panjang daftar yang dikembalikan: panduan menjelaskan satu elemen terkemas untuk setiap delapan dimensi embedding logis. Karena itu, perbandingan yang memahami format berbeda dari memperlakukan byte terkemas sebagai koordinat floating-point biasa. Simpan jenis yang dipilih bersama vektor dan gunakan representasi yang sama untuk kode terindeks serta kuerinya.
Dokumentasi parameter memberikan dimensi bawaan 1.536 dan maksimum 3.072. Dimensi diurutkan berdasarkan relevansi, dan pembuat menjelaskan penyimpanan sejumlah dimensi awal sesuai jumlah yang dipilih sebagai cara memilih ukuran representasi. Pilih dimensi secara konsisten untuk koleksi tersimpan dan kueri baru. Representasi lebih pendek atau terkuantisasi mengubah perilaku penyimpanan dan perbandingan; representasi tersebut tidak memperbesar konteks masukan atau menjadikan model pembangkit kode.
Pemrograman berbantuan temu kembali
Kasus penggunaan pertama rilis ini adalah menemukan konteks untuk pelengkapan, penyuntingan, atau penjelasan kode. Siapkan unit kode yang bermakna dan simpan revisi repositori serta pengenal sumber. Pertanyaan tentang penanganan galat tertentu dapat menemukan fungsi terkait, yang kemudian diberikan aplikasi kepada model pemrograman bersama permintaan perubahan sebenarnya.
Hasil praktisnya adalah himpunan cuplikan sumber berperingkat dengan jalur berkas, simbol, dan konten yang diperlukan untuk memahami perilakunya. Cuplikan yang ditemukan dapat dibuka pengembang atau diteruskan kepada asisten. Codestral Embed melakukan tahap representasi; komponen terpisah memilih hasil, dan model pembangkitan menulis penjelasan atau kode usulan.
Pencarian semantik dan kemiripan
Pembuat menjelaskan pencarian kode menggunakan kueri bahasa alami atau kode. Pengembang dapat meminta implementasi suatu perilaku meskipun nama fungsi berbeda dari pilihan kata permintaan. Sertakan perilaku dan kondisi yang membedakan implementasi tujuan; kueri umum tentang seluruh subsistem dapat menemukan materi terkait tanpa menjawab pertanyaan spesifik.
Rilis ini juga menjelaskan pencarian kode yang hampir duplikat atau serupa secara fungsional meskipun memiliki perbedaan leksikal. Hasil tersebut dapat membantu menemukan implementasi yang dapat digunakan kembali atau mengidentifikasi kode yang perlu ditinjau lebih lanjut. Kemiripan dalam ruang embedding adalah sinyal untuk memeriksa sumber; bukan bukti bahwa dua fragmen berperilaku identik untuk setiap masukan.
Pengelompokan, analitik, dan perbandingan
Embedding kode dapat digunakan untuk mengelompokkan kode berdasarkan fungsi atau struktur dan memeriksa komposisi repositori. Pastikan cuplikan serta pengenal asli tetap tersedia agar kelompok dapat ditafsirkan manusia atau tahap aplikasi berikutnya. Kelompok adalah pengelompokan berbasis representasi, bukan deskripsi arsitektur yang otomatis terverifikasi.
Contoh vektor floating-point pembuat menggunakan embedding yang dinormalisasi ke panjang satu, dengan kemiripan kosinus, hasil kali titik, dan jarak Euclidean memberikan peringkat yang konsisten. Keluaran terkuantisasi dan bit terkemas harus mempertahankan penanganan formatnya sendiri, bukan mewarisi asumsi tentang koordinat floating-point mentah. Endpoint yang diterbitkan juga mempertahankan indeks masukan, sehingga membantu menjaga hubungan setiap vektor dengan item sumber.
Edisi dan batas praktis
Halaman model yang tepat mencantumkan alur embedding dan batch dengan label konteks 8k, sedangkan rilis memberikan nilai 8.192 token. Pertahankan edisi bernama 2505, dimensi keluaran, dan jenis yang dipilih sepanjang alur koleksi serta kueri. Ini adalah keluaran vektor berorientasi kode, berbeda dari pelengkapan teks Codestral dan model embedding teks Mistral Embed berdimensi tetap.
Siapkan unit kode yang memuat perilaku relevan, simpan lokasi sumbernya, dan nyatakan pertanyaan yang ingin ditemukan jawabannya. Artefak yang berguna adalah representasi yang dapat ditemukan kembali dan terikat pada kode sebenarnya, yang mendukung tahap penjelasan, penyuntingan, atau peninjauan pengembang berikutnya tanpa menjalankan tahap itu sendiri.
Ailoot Ultra · Embedding POST /v1/embeddings mistralai/codestral-embed-2505
mistralai/codestral-embed-2505
mistralai/codestral-embed-2505Mulai
Codestral Embed 2505 merepresentasikan kode dan kueri bahasa alami sebagai vektor untuk pencarian repositori serta temu kembali asisten pemrograman. Pembuat mendokumentasikan konteks 8.192 token, dimensi yang dapat dikonfigurasi hingga 3.072, dan format keluaran floating-point, integer, atau bit terkemas.
- Masukan yang diterima
- Teks · token_ids
- Hasil
- embedding
Tersedia di Ailoot · masukan & metode
Ailoot Ultra · Embedding POST /v1/embeddings
- Masukan
text,token_ids- Keluaran
embedding- Konteks
- 8.192 tokens
- Format keluaran
- json
| Kolom | Jenis | Persyaratan | Nilai & batasan | Bawaan |
|---|---|---|---|---|
Kolommodel | Jenisstring | PersyaratanWajib | Nilai & batasan mistralai/codestral-embed-2505 | Bawaan— |
Kolominput | Jenisstring|string[]|integer[]|integer[][] | PersyaratanWajib | Nilai & batasan Item minimum: 1 Kondisi: Batch homogen yang tidak kosong. ID token berupa bilangan bulat nonnegatif. Anggaran masukan: Maksimum: 8.192 · Satuan teks: byte UTF8 · Satuan token: elemen array token | Bawaan— |
Kolomencoding_format | Jenisstring | PersyaratanOpsional | Nilai & batasan float | Bawaanfloat |
Kolomdimensions | Jenisinteger | PersyaratanTidak didukung | Nilai & batasan Minimum: 1 | Bawaan— |
Kolomuser | Jenisjson_value | PersyaratanOpsional | Nilai & batasan Kondisi: Sumber mengizinkan kolom metadata JSON ini; makna tepatnya pada layanan hulu bergantung pada model. | Bawaan— |
Kolomsession_id | Jenisjson_value | PersyaratanOpsional | Nilai & batasan Kondisi: Sumber mengizinkan kolom metadata JSON ini; makna tepatnya pada layanan hulu bergantung pada model. | Bawaan— |
Kolomtrace | Jenisjson_value | PersyaratanOpsional | Nilai & batasan Kondisi: Sumber mengizinkan kolom metadata JSON ini; makna tepatnya pada layanan hulu bergantung pada model. | Bawaan— |
Kolomprovider | Jenisobject | PersyaratanOpsional | Nilai & batasan Kondisi: provider.options ditolak | Bawaan— |
Kombinasi bahan masukan
text_to_embedding
Parameter metode dan siklus hidup
| 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 | Kontrak8192 |
Parametermultimodal_objects | Kontrakfalse |
Parametermaterial_types | Kontraktext, token_ids |
Siklus hidup: synchronous_json
Pertahankan index dan dimensi setiap vektor.
Nama model multimodal tidak mengizinkan objek gambar pada jalur persis ini.
Paket
Referensi tarif tidak menambah opsi permintaan. Parameter yang didukung tercantum pada metode yang dipilih.
- Mode Fast
- Tarif standar Saat mode fast dipilih
- Mode Flex
- Tarif standar Saat mode flex dipilih
- Upaya penalaran maksimum
- Tarif standar Saat upaya penalaran maksimum menggunakan penyesuaian default
Tarif Ailoot
Harga menurut konfigurasi
| Konfigurasi | Jadwal tarif | Biaya |
|---|---|---|
| KonfigurasiTarif dasar token | Jadwal tarifTarif dasar | Biaya Masukan · Token masukan $0.0003 / 1K token Keluaran · Token keluaran $0 / 1K token Masukan · Pembacaan cache — / 1K token Masukan · Penulisan cache — / 1K token Masukan · Penulisan cache, 1 jam — / 1K token |
Ailoot mencadangkan perkiraan dana sebelum permintaan. Setelah hasil diterima, tagihan akhir diselesaikan berdasarkan penggunaan yang terukur. Penyelesaian tagihan streaming menggunakan catatan penggunaan akhir. Cara kerja cadangan dan penyelesaian tagihan →
Contoh permintaan
Ailoot Ultra · Embedding
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "mistralai/codestral-embed-2505", "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='mistralai/codestral-embed-2505',input=["First document","Second document"])
print(result)
for item in result.data:print(item.index,item.embedding)
Terima dan simpan hasil
Ailoot Ultra · Embedding
json
Simpan semua hasil yang selesai
Simpan setiap respons lengkap, berkas, dan bagian konten yang dikembalikan.
Simpan setiap vektor beserta index masing-masing. Jumlah vektor harus sama dengan jumlah input; dimensinya harus konsisten.
Jika respons asli perlu diperiksa
Endpoint untuk tugas embedding tidak ditambahkan.
Kolom respons
| Kolom | Jenis |
|---|---|
Kolomobject | Jenisstring |
Kolommodel | Jenisstring |
Kolomdata[].index | Jenisinteger |
Kolomdata[].embedding | Jenisfinite float[] |
Kolomusage | Jenisobject |
Kesalahan dan langkah berikutnya
| Respons | Kondisi | Langkah berikutnya |
|---|---|---|
Respons400 · invalid_request_error | KondisiBidang wajib, representasi materi, atau nilai parameter tidak valid | Langkah berikutnyaPerbaiki bidang yang ditunjukkan sebelum permintaan pembuatan baru. |
Alias
Alias model
Ailoot Ultra mistralai/codestral-embed-2505
Alias jalur metode
Gunakan jalur metode yang ditampilkan di atas.
ID pemanggil terkait
FAQ · Mistral: Codestral Embed 2505
- Input dan hasil apa yang tersedia?
POST /v1/embeddings·mistralai/codestral-embed-2505:text,token_ids→embedding- Kolom apa yang digunakan permintaan?
POST /v1/embeddings·mistralai/codestral-embed-2505:model,input,encoding_format,provider- Batasan apa yang berlaku?
POST /v1/embeddings·mistralai/codestral-embed-2505:ctx:8192;input.budget.maximum:8192(byte UTF8);input.min_items:1