BAAI: bge-base-en-v1.5
BAAI bge-base-en-v1.5 แปลงข้อความภาษาอังกฤษเป็นเวกเตอร์ 768 มิติสำหรับการค้นหาเชิงความหมายและงานความคล้าย หน้าต่างอินพุต 512 โทเคนและคำสั่งค้นคืนที่ใส่เฉพาะคำค้นเหมาะกับย่อหน้าที่ตรงประเด็นในดัชนีค้นหาเอกสารหรือความรู้
เกี่ยวกับโมเดล
คำอธิบายนี้ครอบคลุมความสามารถของโมเดล อินพุต เอาต์พุต และตัวเลือกที่ใช้ได้ใน Ailoot แสดงด้านล่างตามเมธอดที่เลือก
bge-base-en-v1.5 เป็นโมเดลเอ็มเบดดิงแบบหนาแน่นภาษาอังกฤษขนาด Base ของ BAAI แปลงข้อความแต่ละรายการเป็นตัวแทนเชิงตัวเลข 768 มิติสำหรับการค้นคืนและเปรียบเทียบความหมาย โมเดลอยู่ในสาย BGE v1.5 ซึ่งปรับปรุงการแจกแจงคะแนนความคล้ายของตระกูลก่อนหน้า และเพิ่มประสิทธิภาพค้นคืนเมื่อไม่ให้คำสั่ง เอาต์พุตคือเวกเตอร์ที่ใช้เปรียบเทียบข้อความหรือหาย่อหน้าที่เกี่ยวข้อง
เตรียมคำค้นและย่อหน้า
สำหรับคำค้นสั้นที่หาย่อหน้ายาว BAAI แนะนำให้เติม “Represent this sentence for searching relevant passages:” หน้าคำค้น ย่อหน้าในคลังไม่รับคำสั่งนั้น สำหรับงานอื่น สามารถเอ็มเบดข้อความต้นฉบับโดยตรง ผู้ผลิตระบุว่า v1.5 ทำงานได้โดยไม่มีคำสั่งด้วย จึงควรเลือกการเตรียมตามงาน แทนการถือคำนำหน้าเป็นอินพุตที่ถูกต้องเพียงแบบเดียว
คอลเล็กชันค้นหาจริงอาจมีบทความช่วยเหลือ คำอธิบายผลิตภัณฑ์ หรือคำแนะนำเทคนิค คำค้นอย่าง “ฉันจะเปลี่ยนรูปแบบส่งออกได้อย่างไร” ควรค้นคืนย่อหน้าที่อธิบายการกระทำนั้น เก็บหัวข้อส่วน เงื่อนไขที่เกี่ยวข้อง และข้อความต้นฉบับจริงไว้ด้วยกัน เก็บตัวระบุและตำแหน่งย่อหน้าข้างเวกเตอร์ เพื่อให้ผลค้นหาคืนสิ่งที่ผู้ใช้อ่านได้หรือขั้นตอนตอบภายหลังอ้างอิงได้
รูปแบบเวกเตอร์และการเปรียบเทียบ
ตัวแทนตามเอกสารใช้ hidden state สุดท้ายของโทเคนแรก หรือ CLS เป็นเอ็มเบดดิงประโยค ตัวอย่างผู้ผลิตทำ normalization กับเวกเตอร์และเปรียบเทียบเอ็มเบดดิงที่ผ่าน normalization ด้วยผลคูณจุด ซึ่งเทียบเท่าความคล้ายโคไซน์ 768 มิติคือขนาดตัวแทนเอาต์พุตของโมเดลนี้ ไม่ใช่ความยาวบริบทที่เลือกได้หรืองบสร้างข้อความ
ใช้โมเดลและข้อตกลงการเตรียมเดียวกันสำหรับเวกเตอร์คำค้นและคลังที่เปรียบเทียบ วิธีตรวจในทางปฏิบัติคือค้นคืนย่อหน้าที่ทราบว่ามีคำตอบสำหรับชุดคำถามผู้ใช้จริงขนาดเล็ก แล้วตรวจข้อความที่คืนมา รูปเวกเตอร์ที่เข้ากันได้ทำให้ดัชนีจัดเก็บตัวแทนได้ ขณะที่ย่อหน้าต้นฉบับแสดงว่าผลกล่าวอะไรจริง
ความยาวอินพุตและการเตรียมเอกสาร
ความยาวลำดับที่โมเดลระบุตามเอกสารคือ 512 โทเคน จึงควรแบ่งต้นฉบับยาวเป็นย่อหน้าที่เชื่อมโยงกันและมีคำตอบก่อนเอ็มเบด เก็บนิยามและข้อยกเว้นกับข้อความที่มันกำกับ และรักษาความเชื่อมโยงจากย่อหน้าไปยังเอกสารแม่ ข้อความที่จะเอ็มเบดรวมคำสั่งหรือหัวข้อที่เพิ่มด้วย การเตรียมกระชับจึงเหลือพื้นที่มากขึ้นให้เนื้อหาต้นฉบับที่มีประโยชน์
สำหรับรายงานหรือคู่มือ ให้เลือกขอบเขตตามส่วนหรือกลุ่มย่อหน้าที่สัมพันธ์กันจำนวนน้อย ย่อหน้าที่มีแต่ชื่อเรื่องหรือส่วนข้อความไม่มีหัวเรื่องอาจตีความยากเมื่อค้นคืน เก็บข้อความต้นฉบับและรุ่นแหล่งที่มา เพื่อให้การอัปเดตดัชนีแทนข้อมูลที่ตรงเมื่อเอกสารเปลี่ยน
คะแนนและเอาต์พุตที่มีประโยชน์
BAAI เตือนว่าค่าความคล้ายสัมบูรณ์ไม่ใช่เกณฑ์สากลสำหรับตัดสินว่าข้อความสองชิ้นมีความหมายเหมือนกัน อันดับสัมพัทธ์สำคัญ และควรเลือกเกณฑ์กรองจากการแจกแจงบนข้อมูลของงานเอง ความคล้ายเวกเตอร์สูงเป็นสัญญาณค้นคืน ไม่ใช่การตรวจยืนยันข้อเท็จจริงในย่อหน้า
สิ่งส่งมอบที่มีประโยชน์คือดัชนีย่อหน้าภาษาอังกฤษ ชุดเวกเตอร์คำค้น หรือคุณลักษณะเชิงตัวเลขเพื่อเปรียบเทียบความหมาย ตัวจัดอันดับซ้ำแยกต่างหากปรับตัวเลือกที่ค้นคืนได้ และขั้นตอนสร้างข้อความแยกต่างหากเขียนคำตอบจากข้อความเหล่านั้นได้ โมเดล Base English v1.5 ที่ตรงรุ่นนี้แยกจาก BGE Large รุ่นภาษาจีน และโปรไฟล์ค้นคืนหลายภาษาและไฮบริดของ BGE-M3
Ailoot Ultra · เอ็มเบดดิง POST /v1/embeddings baai/bge-base-en-v1.5
baai/bge-base-en-v1.5เริ่มต้น
BAAI bge-base-en-v1.5 แปลงข้อความภาษาอังกฤษเป็นเวกเตอร์ 768 มิติสำหรับการค้นหาเชิงความหมายและงานความคล้าย หน้าต่างอินพุต 512 โทเคนและคำสั่งค้นคืนที่ใส่เฉพาะคำค้นเหมาะกับย่อหน้าที่ตรงประเด็นในดัชนีค้นหาเอกสารหรือความรู้
- อินพุตที่รองรับ
- ข้อความ · token_ids
- ผลลัพธ์
- embedding
ใช้งานได้ใน Ailoot · อินพุตและเมธอด
Ailoot Ultra · เอ็มเบดดิง POST /v1/embeddings
- ขาเข้า
text,token_ids- ขาออก
embedding- รูปแบบเอาต์พุต
- json
| ฟิลด์ | ประเภท | ข้อกำหนด | ค่าและข้อจำกัด | ค่าเริ่มต้น |
|---|---|---|---|---|
ฟิลด์model | ประเภทstring | ข้อกำหนดจำเป็น | ค่าและข้อจำกัด baai/bge-base-en-v1.5 | ค่าเริ่มต้น— |
ฟิลด์input | ประเภทstring|string[]|integer[]|integer[][] | ข้อกำหนดจำเป็น | ค่าและข้อจำกัด จำนวนรายการขั้นต่ำ: 1 เงื่อนไข: ชุดข้อมูลต้องไม่ว่างและประกอบด้วยข้อมูลชนิดเดียวกัน ID โทเคนต้องเป็นจำนวนเต็มที่ไม่ติดลบ โควตาอินพุต: สูงสุด: 512 · หน่วยข้อความ: ไบต์ 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 | ข้อกำหนด512 |
พารามิเตอร์multimodal_objects | ข้อกำหนดfalse |
พารามิเตอร์material_types | ข้อกำหนดtext, token_ids |
วงจรการทำงาน: synchronous_json
เก็บดัชนีและจำนวนมิติของเวกเตอร์ทุกรายการ
ชื่อโมเดลที่สื่อว่ารองรับข้อมูลหลายรูปแบบไม่ได้ทำให้สามารถส่งออบเจ็กต์รูปภาพผ่านเส้นทางเฉพาะนี้ได้
ราคา
ข้อมูลอัตราราคาไม่ได้เพิ่มตัวเลือกคำขอ พารามิเตอร์ที่รองรับระบุไว้สำหรับเมธอดที่เลือก
- โหมดรวดเร็ว
- ไม่ได้ระบุ เมื่อเลือกโหมดรวดเร็ว
- โหมดยืดหยุ่น
- ไม่ได้ระบุ เมื่อเลือกโหมด flex
- ระดับการใช้เหตุผลสูงสุด
- ไม่ได้ระบุ เมื่อใช้การปรับตามค่าเริ่มต้น (default) สำหรับระดับการใช้เหตุผลสูงสุด
อัตราค่าบริการ Ailoot
ราคาตามการตั้งค่า
| การตั้งค่า | ตารางอัตราค่าบริการ | ค่าบริการ |
|---|---|---|
| การตั้งค่าอัตราราคาพื้นฐานของโทเคน | ตารางอัตราค่าบริการอัตราพื้นฐาน | ค่าบริการ ขาเข้า · โทเค็นอินพุต $0.00001 / 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": "baai/bge-base-en-v1.5", "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='baai/bge-base-en-v1.5',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 baai/bge-base-en-v1.5
ชื่อพาธเมธอดอื่น
ใช้พาธเมธอดที่แสดงด้านบน
ID ที่เกี่ยวข้องสำหรับเรียกใช้โมเดล
FAQ · BAAI: bge-base-en-v1.5
- มีอินพุตและผลลัพธ์ใดบ้าง?
POST /v1/embeddings·baai/bge-base-en-v1.5:text,token_ids→embedding- คำขอใช้ฟิลด์ใดบ้าง?
POST /v1/embeddings·baai/bge-base-en-v1.5:model,input,encoding_format,provider- มีข้อจำกัดใดบ้าง?
POST /v1/embeddings·baai/bge-base-en-v1.5:input.budget.maximum:512(ไบต์ UTF8);input.min_items:1