Mistral: Codestral Embed 2505
Codestral Embed 2505 แทนโค้ดและคำค้นภาษาธรรมชาติเป็นเวกเตอร์สำหรับค้นในรีโพซิทอรีและค้นคืนให้ผู้ช่วยเขียนโค้ด ผู้ผลิตระบุบริบท 8,192 โทเคน มิติที่กำหนดได้สูงสุด 3,072 และรูปแบบเอาต์พุตเลขทศนิยมลอยตัว จำนวนเต็ม หรือแพ็กบิต
เกี่ยวกับโมเดล
คำอธิบายนี้ครอบคลุมความสามารถของโมเดล อินพุต เอาต์พุต และตัวเลือกที่ใช้ได้ใน Ailoot แสดงด้านล่างตามเมธอดที่เลือก
Codestral Embed 2505 เป็นโมเดลเอ็มเบดดิงของ Mistral AI ที่เชี่ยวชาญการค้นคืนโค้ด รับข้อความที่มีซอร์สโค้ดหรือคำค้นโค้ดภาษาธรรมชาติแล้วคืนเวกเตอร์เชิงตัวเลข ผู้ผลิตวางตำแหน่งสำหรับค้นรีโพซิทอรี ค้นคืนบริบทให้ผู้ช่วยเขียนโค้ด วิเคราะห์ความคล้ายและความซ้ำ และจัดกลุ่มโค้ดตามหน้าที่หรือโครงสร้าง ตัวระบุรุ่นคงที่คือ codestral-embed-2505
อินพุตและตัวแทน
อินพุตโค้ดอาจเป็นฟังก์ชัน ส่วนซอร์สที่เกี่ยวข้อง หรือหน่วยมีความหมายอื่นในรีโพซิทอรี คำค้นภาษาธรรมชาติอธิบายพฤติกรรมที่ต้องหาได้ แทนการบอกชื่อสัญลักษณ์ตรง ๆ เอ็มเบดดิงแทนอินพุตนั้นเพื่อเปรียบเทียบ โมเดลไม่สร้างการนำไปใช้ใหม่หรือรันโค้ดที่ได้รับ
ประกาศรุ่นอย่างเป็นทางการระบุบริบทอินพุตเต็ม 8,192 โทเคน สำหรับการค้นคืน ผู้ผลิตแนะนำชังก์ประมาณ 3,000 อักขระที่ซ้อนทับกัน 1,000 อักขระ และระบุว่าชังก์ใหญ่กว่าอาจทำให้ค้นคืนแย่ลง นี่คือคำแนะนำการเตรียมค้นคืน ไม่ใช่ขีดจำกัดโทเคน 3,000 อักขระ เก็บไฟล์ สัญลักษณ์ และตำแหน่งแหล่งที่มาสัมพันธ์กับแต่ละรายการ เพื่อให้แอปพลิเคชันคืนโค้ดที่เกี่ยวข้องหลังค้นหาได้
ความละเอียดเอาต์พุตและมิติ
คู่มือเอ็มเบดดิงโค้ดระบุชนิดเอาต์พุต float, int8, uint8, binary และ ubinary ชนิด float ใช้ค่าความละเอียดเดี่ยว 32 บิต int8 ใช้จำนวนเต็ม 8 บิตมีเครื่องหมายตั้งแต่ -128 ถึง 127 ส่วน uint8 ใช้ค่า 8 บิตไม่มีเครื่องหมายตั้งแต่ 0 ถึง 255 binary และ ubinary เก็บค่าบิตเดี่ยวที่ควอนไทซ์แล้วในองค์ประกอบ 8 บิตที่แพ็ก โดยใช้ภาชนะเก็บแบบมีเครื่องหมายและไม่มีเครื่องหมายตามลำดับ
ตัวแทนแบบแพ็กบิตเปลี่ยนความยาวรายการที่คืนมา คู่มืออธิบายว่ามีองค์ประกอบแพ็กหนึ่งตัวต่อทุกแปดมิติเอ็มเบดดิงเชิงตรรกะ การเปรียบเทียบที่เข้าใจรูปแบบจึงต่างจากการถือไบต์ที่แพ็กเป็นพิกัดเลขทศนิยมลอยตัวทั่วไป เก็บชนิดที่เลือกไว้กับเวกเตอร์ และใช้ตัวแทนเดียวกันสำหรับโค้ดในดัชนีกับคำค้น
เอกสารพารามิเตอร์ให้มิติเริ่มต้น 1,536 และสูงสุด 3,072 มิติเรียงตามความเกี่ยวข้อง และผู้ผลิตอธิบายว่าการเก็บจำนวนที่เลือกจากส่วนต้นเป็นวิธีเลือกขนาดตัวแทน เลือกมิติให้ตรงกันสำหรับคอลเล็กชันที่เก็บกับคำค้นใหม่ ตัวแทนสั้นลงหรือควอนไทซ์เปลี่ยนการจัดเก็บและการเปรียบเทียบ ไม่ได้เพิ่มบริบทอินพุตหรือเปลี่ยนโมเดลเป็นตัวสร้างโค้ด
การเขียนโค้ดที่เสริมด้วยการค้นคืน
กรณีใช้งานแรกในประกาศรุ่นคือค้นคืนบริบทสำหรับเติมโค้ด แก้ไข หรืออธิบาย เตรียมหน่วยโค้ดที่มีความหมายและเก็บ revision ของรีโพซิทอรีกับตัวระบุซอร์ส คำถามว่าจัดการข้อผิดพลาดเฉพาะอย่างไรอาจค้นคืนฟังก์ชันที่เกี่ยวข้อง แล้วแอปพลิเคชันส่งให้โมเดลเขียนโค้ดพร้อมคำขอเปลี่ยนจริง
ผลจริงที่มีประโยชน์คือชุดซอร์สสั้นที่จัดอันดับ มีพาธไฟล์ สัญลักษณ์ และเนื้อหาที่จำเป็นต่อการเข้าใจพฤติกรรม ผู้พัฒนาเปิดส่วนโค้ดที่ค้นคืนหรือส่งให้ผู้ช่วยได้ Codestral Embed ทำขั้นตอนแทนข้อมูล ส่วนประกอบอื่นเลือกผล และโมเดลสร้างข้อความเขียนคำอธิบายหรือโค้ดที่เสนอ
การค้นหาเชิงความหมายและความคล้าย
ผู้ผลิตอธิบายการค้นโค้ดด้วยคำค้นภาษาธรรมชาติหรือโค้ด ผู้พัฒนาขอหาการนำพฤติกรรมหนึ่งไปใช้ได้ แม้ชื่อฟังก์ชันต่างจากถ้อยคำคำขอ ใส่พฤติกรรมและเงื่อนไขที่แยกการนำไปใช้ที่ตั้งใจ คำค้นทั่วไปเกี่ยวกับระบบย่อยทั้งชุดอาจค้นคืนข้อมูลเกี่ยวข้องโดยไม่แก้คำถามเฉพาะ
ประกาศรุ่นยังอธิบายการหาความซ้ำใกล้เคียงหรือโค้ดหน้าที่คล้าย แม้คำที่ใช้ต่างกัน ผลเช่นนี้ช่วยหาการนำไปใช้ที่ใช้ซ้ำได้หรือระบุโค้ดที่ต้องตรวจเพิ่ม ความคล้ายในพื้นที่เอ็มเบดดิงเป็นสัญญาณให้ตรวจซอร์ส ไม่ได้ยืนยันว่าทั้งสองส่วนมีพฤติกรรมเหมือนกันสำหรับทุกอินพุต
การจัดกลุ่ม วิเคราะห์ และเปรียบเทียบ
ใช้เอ็มเบดดิงโค้ดเพื่อจัดกลุ่มตามหน้าที่หรือโครงสร้างและตรวจองค์ประกอบรีโพซิทอรีได้ เก็บส่วนโค้ดต้นฉบับและตัวระบุให้ใช้ได้ เพื่อให้คนหรือขั้นตอนแอปพลิเคชันภายหลังตีความกลุ่ม กลุ่มเป็นการรวมตามตัวแทน ไม่ใช่คำอธิบายสถาปัตยกรรมที่ตรวจยืนยันอัตโนมัติ
ตัวอย่างเวกเตอร์เลขทศนิยมลอยตัวของผู้ผลิตใช้เอ็มเบดดิงที่ปรับความยาวเป็นหนึ่งหน่วย ซึ่งความคล้ายโคไซน์ ผลคูณจุด และระยะห่างยูคลิดให้อันดับสอดคล้องกัน เอาต์พุตควอนไทซ์และแพ็กบิตควรรักษาการจัดการรูปแบบของตน แทนการยืมสมมติฐานเกี่ยวกับพิกัดเลขทศนิยมลอยตัวดิบ เอนด์พอยต์ที่เผยแพร่ยังเก็บดัชนีอินพุต ช่วยรักษาความเชื่อมโยงแต่ละเวกเตอร์กับรายการต้นฉบับ
รุ่นและขอบเขตในทางปฏิบัติ
หน้ารุ่นที่ตรงระบุเวิร์กโฟลว์เอ็มเบดดิงและแบตช์พร้อมป้ายบริบท 8k ขณะที่ประกาศรุ่นให้ค่า 8,192 โทเคน รักษาชื่อรุ่น 2505 มิติเอาต์พุตและชนิดที่เลือกตลอดเวิร์กโฟลว์คอลเล็กชันและคำค้น นี่คือเอาต์พุตเวกเตอร์ที่มุ่งโค้ด แยกจากการเติมข้อความของ Codestral และจากโมเดลข้อความ Mistral Embed ที่มีมิติคงที่
เตรียมหน่วยโค้ดที่มีพฤติกรรมเกี่ยวข้อง เก็บตำแหน่งซอร์ส และระบุคำถามที่จะหา สิ่งส่งมอบที่มีประโยชน์คือตัวแทนที่ค้นคืนได้และผูกกับโค้ดจริง เพื่อสนับสนุนขั้นตอนอธิบาย แก้ไข หรือตรวจของผู้พัฒนาถัดไป โดยไม่ได้ทำขั้นตอนนั้นเอง
Ailoot Ultra · เอ็มเบดดิง POST /v1/embeddings mistralai/codestral-embed-2505
mistralai/codestral-embed-2505
mistralai/codestral-embed-2505เริ่มต้น
Codestral Embed 2505 แทนโค้ดและคำค้นภาษาธรรมชาติเป็นเวกเตอร์สำหรับค้นในรีโพซิทอรีและค้นคืนให้ผู้ช่วยเขียนโค้ด ผู้ผลิตระบุบริบท 8,192 โทเคน มิติที่กำหนดได้สูงสุด 3,072 และรูปแบบเอาต์พุตเลขทศนิยมลอยตัว จำนวนเต็ม หรือแพ็กบิต
- อินพุตที่รองรับ
- ข้อความ · token_ids
- ผลลัพธ์
- embedding
ใช้งานได้ใน Ailoot · อินพุตและเมธอด
Ailoot Ultra · เอ็มเบดดิง POST /v1/embeddings
- ขาเข้า
text,token_ids- ขาออก
embedding- บริบท
- 8,192 tokens
- รูปแบบเอาต์พุต
- json
| ฟิลด์ | ประเภท | ข้อกำหนด | ค่าและข้อจำกัด | ค่าเริ่มต้น |
|---|---|---|---|---|
ฟิลด์model | ประเภทstring | ข้อกำหนดจำเป็น | ค่าและข้อจำกัด mistralai/codestral-embed-2505 | ค่าเริ่มต้น— |
ฟิลด์input | ประเภทstring|string[]|integer[]|integer[][] | ข้อกำหนดจำเป็น | ค่าและข้อจำกัด จำนวนรายการขั้นต่ำ: 1 เงื่อนไข: ชุดข้อมูลต้องไม่ว่างและประกอบด้วยข้อมูลชนิดเดียวกัน ID โทเคนต้องเป็นจำนวนเต็มที่ไม่ติดลบ โควตาอินพุต: สูงสุด: 8,192 · หน่วยข้อความ: ไบต์ UTF8 · หน่วยโทเค็น: องค์ประกอบในอาร์เรย์โทเค็น | ค่าเริ่มต้น— |
ฟิลด์encoding_format | ประเภทstring | ข้อกำหนดไม่บังคับ | ค่าและข้อจำกัด float | ค่าเริ่มต้นfloat |
ฟิลด์dimensions | ประเภทinteger | ข้อกำหนดไม่รองรับ | ค่าและข้อจำกัด ขั้นต่ำ: 1 | ค่าเริ่มต้น— |
ฟิลด์user | ประเภทjson_value | ข้อกำหนดไม่บังคับ | ค่าและข้อจำกัด เงื่อนไข: ต้นฉบับอนุญาตฟิลด์เมทาดาทา JSON นี้ โดยความหมายที่แน่นอนในระบบต้นทางขึ้นอยู่กับแต่ละโมเดล | ค่าเริ่มต้น— |
ฟิลด์session_id | ประเภทjson_value | ข้อกำหนดไม่บังคับ | ค่าและข้อจำกัด เงื่อนไข: ต้นฉบับอนุญาตฟิลด์เมทาดาทา JSON นี้ โดยความหมายที่แน่นอนในระบบต้นทางขึ้นอยู่กับแต่ละโมเดล | ค่าเริ่มต้น— |
ฟิลด์trace | ประเภทjson_value | ข้อกำหนดไม่บังคับ | ค่าและข้อจำกัด เงื่อนไข: ต้นฉบับอนุญาตฟิลด์เมทาดาทา JSON นี้ โดยความหมายที่แน่นอนในระบบต้นทางขึ้นอยู่กับแต่ละโมเดล | ค่าเริ่มต้น— |
ฟิลด์provider | ประเภทobject | ข้อกำหนดไม่บังคับ | ค่าและข้อจำกัด เงื่อนไข: provider.options ถูกปฏิเสธ | ค่าเริ่มต้น— |
ชุดผสมของสื่ออินพุต
text_to_embedding
พารามิเตอร์และวงจรการทำงานของเมธอด
| พารามิเตอร์ | ข้อกำหนด |
|---|---|
พารามิเตอร์content_type | ข้อกำหนดapplication/json |
พารามิเตอร์required | ข้อกำหนดmodel, input |
พารามิเตอร์input_shapes | ข้อกำหนดstring, string[], nonnegative_integer_token_array, nonnegative_integer_token_array[] |
พารามิเตอร์encoding_format | ข้อกำหนดfloat |
พารามิเตอร์dimensions_override | ข้อกำหนดfalse |
พารามิเตอร์max_input_budget_units | ข้อกำหนด8192 |
พารามิเตอร์multimodal_objects | ข้อกำหนดfalse |
พารามิเตอร์material_types | ข้อกำหนดtext, token_ids |
วงจรการทำงาน: synchronous_json
เก็บดัชนีและจำนวนมิติของเวกเตอร์ทุกรายการ
ชื่อโมเดลที่สื่อว่ารองรับข้อมูลหลายรูปแบบไม่ได้ทำให้สามารถส่งออบเจ็กต์รูปภาพผ่านเส้นทางเฉพาะนี้ได้
ราคา
ข้อมูลอัตราราคาไม่ได้เพิ่มตัวเลือกคำขอ พารามิเตอร์ที่รองรับระบุไว้สำหรับเมธอดที่เลือก
- โหมดรวดเร็ว
- อัตรามาตรฐาน เมื่อเลือกโหมดรวดเร็ว
- โหมดยืดหยุ่น
- อัตรามาตรฐาน เมื่อเลือกโหมด flex
- ระดับการใช้เหตุผลสูงสุด
- อัตรามาตรฐาน เมื่อใช้การปรับตามค่าเริ่มต้น (default) สำหรับระดับการใช้เหตุผลสูงสุด
อัตราค่าบริการ Ailoot
ราคาตามการตั้งค่า
| การตั้งค่า | ตารางอัตราค่าบริการ | ค่าบริการ |
|---|---|---|
| การตั้งค่าอัตราราคาพื้นฐานของโทเคน | ตารางอัตราค่าบริการอัตราพื้นฐาน | ค่าบริการ ขาเข้า · โทเค็นอินพุต $0.0003 / 1K โทเค็น ขาออก · โทเค็นเอาต์พุต $0 / 1K โทเค็น ขาเข้า · การอ่านแคช — / 1K โทเค็น ขาเข้า · การเขียนแคช — / 1K โทเค็น ขาเข้า · การเขียนแคช, 1 ชั่วโมง — / 1K โทเค็น |
Ailoot กันยอดเงินประมาณการไว้ก่อนส่งคำขอ หลังได้ผลลัพธ์ จะคิดค่าบริการสุดท้ายตามการใช้งานที่วัดได้ การคิดค่าบริการแบบสตรีมใช้บันทึกการใช้งานสุดท้าย วิธีกันยอดเงินและคิดค่าบริการสุดท้าย →
ตัวอย่างคำขอ
Ailoot Ultra · เอ็มเบดดิง
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)
รับและบันทึกผลลัพธ์
Ailoot Ultra · เอ็มเบดดิง
json
เก็บผลลัพธ์ที่เสร็จสมบูรณ์ทั้งหมด
เก็บทุกการตอบกลับ ไฟล์ และส่วนเนื้อหาที่ส่งกลับมาอย่างครบถ้วน
เก็บเวกเตอร์ทุกรายการพร้อมดัชนีของแต่ละรายการ จำนวนเวกเตอร์ต้องเท่ากับจำนวนข้อมูลนำเข้า และจำนวนมิติต้องสอดคล้องกัน
เมื่อต้องตรวจสอบการตอบกลับต้นฉบับ
ไม่มีการเพิ่มจุดเชื่อมต่อสำหรับงานสร้างเวกเตอร์ตัวแทนข้อมูล
ฟิลด์การตอบกลับ
| ฟิลด์ | ประเภท |
|---|---|
ฟิลด์object | ประเภทstring |
ฟิลด์model | ประเภทstring |
ฟิลด์data[].index | ประเภทinteger |
ฟิลด์data[].embedding | ประเภทfinite float[] |
ฟิลด์usage | ประเภทobject |
ข้อผิดพลาดและขั้นตอนถัดไป
| การตอบกลับ | เงื่อนไข | ขั้นตอนถัดไป |
|---|---|---|
การตอบกลับ400 · invalid_request_error | เงื่อนไขฟิลด์จำเป็น รูปแบบการแทนข้อมูล หรือค่าพารามิเตอร์ไม่ถูกต้อง | ขั้นตอนถัดไปแก้ฟิลด์ที่ระบุก่อนส่งคำขอสร้างครั้งใหม่ |
ชื่ออื่น
ชื่ออื่นของโมเดล
Ailoot Ultra mistralai/codestral-embed-2505
ชื่อพาธเมธอดอื่น
ใช้พาธเมธอดที่แสดงด้านบน
ID ที่เกี่ยวข้องสำหรับเรียกใช้โมเดล
FAQ · Mistral: Codestral Embed 2505
- มีอินพุตและผลลัพธ์ใดบ้าง?
POST /v1/embeddings·mistralai/codestral-embed-2505:text,token_ids→embedding- คำขอใช้ฟิลด์ใดบ้าง?
POST /v1/embeddings·mistralai/codestral-embed-2505:model,input,encoding_format,provider- มีข้อจำกัดใดบ้าง?
POST /v1/embeddings·mistralai/codestral-embed-2505:ctx:8192;input.budget.maximum:8192(ไบต์ UTF8);input.min_items:1