BAAI: bge-m3
BAAI BGE-M3 hỗ trợ truy xuất bằng biểu diễn vector dày đặc, truy xuất từ vựng thưa và truy xuất đa vector trên hơn 100 ngôn ngữ. Biểu diễn vector dày đặc đầu ra có 1024 chiều và cửa sổ 8192 token chứa được từ câu đến tài liệu dài hơn mà không bắt buộc có chỉ dẫn cho truy vấn.
Về mô hình
Mô tả này trình bày khả năng của mô hình. Đầu vào, đầu ra và tùy chọn có trên Ailoot được liệt kê bên dưới cho phương thức đã chọn.
BGE-M3 là mô hình truy xuất đa ngôn ngữ của BAAI, được thiết kế quanh ba dạng linh hoạt: nhiều chức năng truy xuất, nhiều ngôn ngữ và các độ dài đầu vào khác nhau. Nhà sản xuất mô tả hỗ trợ hơn một trăm ngôn ngữ và đầu vào đến 8192 token. Mô hình hợp nhất có thể cung cấp vector dense, trọng số từ vựng sparse và biểu diễn đa vector, cho phép thiết kế truy xuất chọn hoặc kết hợp nhiều loại bằng chứng.
Ba dạng biểu diễn cho truy xuất
Chế độ dense ánh xạ một văn bản thành một vector 1024 chiều. Nó hỗ trợ so sánh ý nghĩa được biểu diễn bởi truy vấn và đoạn văn. Chế độ sparse gán trọng số cho các token có trong văn bản để đối sánh từ vựng. Chế độ đa vector biểu diễn một văn bản bằng nhiều vector và dùng tương tác theo kiểu ColBERT để so sánh truy vấn với tài liệu ở mức chi tiết hơn.
Các đầu ra này có vai trò khác nhau trong chỉ mục tìm kiếm. Vector dense cung cấp một biểu diễn cho đoạn văn; ánh xạ trọng số token sparse giữ tín hiệu từ vựng; nhiều vector cung cấp cấu trúc so sánh khác. Ví dụ của nhà sản xuất cho thấy cách trả về những biểu diễn được chọn và tính điểm cho các cặp văn bản. Xem biểu diễn và phương pháp chấm điểm đã chọn là phần được xác định có chủ đích trong tác vụ truy xuất.
Văn bản đa ngôn ngữ và chuẩn bị đầu vào
BGE-M3 không yêu cầu thêm chỉ dẫn truy xuất như các mô hình BGE trước. Chuẩn bị trực tiếp truy vấn và các đoạn nguồn thực tế. Bộ sưu tập kiến thức đa ngôn ngữ có thể giữ từng đoạn bằng ngôn ngữ gốc, kèm định danh tài liệu và locale. Dùng câu hỏi thực tế của người dùng từ tập ngôn ngữ mục tiêu khi kiểm tra kết quả.
Một nhiệm vụ thực tế là tìm phần giải thích chính sách, trợ giúp sản phẩm hoặc tài liệu kỹ thuật được lưu bằng nhiều ngôn ngữ. Giữ tên, số hiệu mô hình và thuật ngữ quan trọng đối với câu hỏi. Biểu diễn từ vựng có thể giúp giữ đối sánh theo các thuật ngữ đó, còn biểu diễn dense cung cấp bằng chứng ngữ nghĩa. Đoạn truy xuất nên bao gồm văn bản và vị trí nguồn để người đọc có thể kiểm tra.
Tài liệu dài hơn và mức độ chia nhỏ
Cửa sổ đầu vào 8192 token cho phép mô hình biểu diễn từ câu ngắn đến tài liệu dài hơn. Chọn mức độ chia nhỏ dựa trên câu trả lời mà tìm kiếm cần trả về. Một phần hoàn chỉnh có thể giữ định nghĩa cùng các ngoại lệ; một đoạn nhỏ hơn có thể giúp tìm chỉ dẫn cụ thể dễ hơn. Cửa sổ dài cho phép những lựa chọn đó, nhưng vector vẫn gắn với tài liệu thực sự được mã hóa.
Giữ mỗi đoạn liên kết với tài liệu cha và phiên bản. Với báo cáo dài, giữ tiêu đề và phần giải thích xung quanh con số hoặc kết luận liên quan. Không chỉ dựa vào tiêu đề kết quả tìm kiếm khi bằng chứng nằm trong nội dung. Nếu nguồn thay đổi, giữ đủ siêu dữ liệu để cập nhật các biểu diễn truy xuất tương ứng.
Điểm kết hợp và sử dụng ở giai đoạn sau
Nhà sản xuất khuyến nghị truy xuất kết hợp, tiếp theo là giai đoạn xếp hạng lại riêng. Các ví dụ tính điểm dense, sparse và đa vector rồi tạo tổ hợp có trọng số. Chọn tổ hợp dựa trên câu hỏi và từ vựng của bộ sưu tập; trọng số trong ví dụ không phải thiết lập phổ quát cho mọi kho văn bản.
Kết quả hữu ích là tập ứng viên vẫn có các đoạn nguồn để sử dụng, với biểu diễn và phương pháp xếp hạng được ghi lại. Bộ xếp hạng lại riêng có thể tinh chỉnh tập đó và giai đoạn sinh văn bản riêng có thể dùng nội dung đoạn. Khả năng sparse và đa vector của BGE-M3 là các chế độ mô hình của nhà sản xuất; embedding dense, đầu ra từ vựng và điểm cặp là những sản phẩm khác nhau, không phải các mảng có thể thay thế cho nhau.
Ailoot Ultra · Biểu diễn nhúng POST /v1/embeddings baai/bge-m3
baai/bge-m3Bắt đầu
BAAI BGE-M3 hỗ trợ truy xuất bằng biểu diễn vector dày đặc, truy xuất từ vựng thưa và truy xuất đa vector trên hơn 100 ngôn ngữ. Biểu diễn vector dày đặc đầu ra có 1024 chiều và cửa sổ 8192 token chứa được từ câu đến tài liệu dài hơn mà không bắt buộc có chỉ dẫn cho truy vấn.
- Đầu vào được chấp nhận
- Văn bản · token_ids
- Kết quả
- embedding
Có trên Ailoot · đầu vào & phương thức
Ailoot Ultra · Biểu diễn nhúng POST /v1/embeddings
- Đầu vào
text,token_ids- Đầu ra
embedding- Ngữ cảnh
- 8.194 tokens
- Định dạng đầu ra
- json
| Trường | Loại | Yêu cầu | Giá trị & giới hạn | Mặc định |
|---|---|---|---|---|
Trườngmodel | Loạistring | Yêu cầuBắt buộc | Giá trị & giới hạn baai/bge-m3 | Mặc định— |
Trườnginput | Loạistring|string[]|integer[]|integer[][] | Yêu cầuBắt buộc | Giá trị & giới hạn Số mục tối thiểu: 1 Điều kiện: Lô không rỗng và đồng nhất. ID token là số nguyên không âm. Ngân sách đầu vào: Tối đa: 8.194 · Đơn vị văn bản: byte UTF8 · Đơn vị token: phần tử của mảng token | Mặc định— |
Trườngencoding_format | Loạistring | Yêu cầuKhông bắt buộc | Giá trị & giới hạn float | Mặc địnhfloat |
Trườngdimensions | Loạiinteger | Yêu cầuKhông hỗ trợ | Giá trị & giới hạn Tối thiểu: 1 | Mặc định— |
Trườnguser | Loạijson_value | Yêu cầuKhông bắt buộc | Giá trị & giới hạn Điều kiện: Nguồn tài liệu cho phép trường siêu dữ liệu JSON này; ý nghĩa chính xác tại hệ thống nguồn phụ thuộc vào từng mô hình. | Mặc định— |
Trườngsession_id | Loạijson_value | Yêu cầuKhông bắt buộc | Giá trị & giới hạn Điều kiện: Nguồn tài liệu cho phép trường siêu dữ liệu JSON này; ý nghĩa chính xác tại hệ thống nguồn phụ thuộc vào từng mô hình. | Mặc định— |
Trườngtrace | Loạijson_value | Yêu cầuKhông bắt buộc | Giá trị & giới hạn Điều kiện: Nguồn tài liệu cho phép trường siêu dữ liệu JSON này; ý nghĩa chính xác tại hệ thống nguồn phụ thuộc vào từng mô hình. | Mặc định— |
Trườngprovider | Loạiobject | Yêu cầuKhông bắt buộc | Giá trị & giới hạn Điều kiện: provider.options bị từ chối | Mặc định— |
Tổ hợp tư liệu đầu vào
text_to_embedding
Tham số phương thức và vòng đời
| Tham số | Hợp đồng |
|---|---|
Tham sốcontent_type | Hợp đồngapplication/json |
Tham sốrequired | Hợp đồngmodel, input |
Tham sốinput_shapes | Hợp đồngstring, string[], nonnegative_integer_token_array, nonnegative_integer_token_array[] |
Tham sốencoding_format | Hợp đồngfloat |
Tham sốdimensions_override | Hợp đồngfalse |
Tham sốmax_input_budget_units | Hợp đồng8194 |
Tham sốmultimodal_objects | Hợp đồngfalse |
Tham sốmaterial_types | Hợp đồngtext, token_ids |
Vòng đời: synchronous_json
Giữ lại chỉ mục và số chiều của mọi vector.
Việc mô hình mang tên đa phương thức không có nghĩa là đường dẫn cụ thể này chấp nhận đối tượng ảnh.
Bảng giá
Thông tin biểu giá không bổ sung tùy chọn yêu cầu. Các tham số được hỗ trợ nằm trong phương thức đã chọn.
- Chế độ nhanh
- Mức giá tiêu chuẩn Khi chọn chế độ nhanh
- Chế độ Flex
- Mức giá tiêu chuẩn Khi chọn chế độ flex
- Mức độ suy luận tối đa
- Mức giá tiêu chuẩn Khi áp dụng mức điều chỉnh mặc định (default) cho mức độ suy luận tối đa
Mức phí Ailoot
Giá theo cấu hình
| Cấu hình | Biểu mức phí | Phí |
|---|---|---|
| Cấu hìnhGiá cơ sở cho token | Biểu mức phíMức phí cơ bản | Phí Đầu vào · Token đầu vào $0.00004 / 1K token Đầu ra · Token đầu ra $0 / 1K token Đầu vào · Đọc bộ nhớ đệm — / 1K token Đầu vào · Ghi bộ nhớ đệm — / 1K token Đầu vào · Ghi bộ nhớ đệm, 1 giờ — / 1K token |
Ailoot tạm giữ một khoản ước tính trước yêu cầu. Sau khi có kết quả, phí cuối cùng được quyết toán theo mức sử dụng đo được. Việc quyết toán khi truyền luồng dùng bản ghi mức sử dụng cuối cùng. Cách hoạt động của cơ chế tạm giữ và quyết toán →
Ví dụ yêu cầu
Ailoot Ultra · Biểu diễn nhúng
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-m3", "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-m3',input=["First document","Second document"])
print(result)
for item in result.data:print(item.index,item.embedding)
Nhận và lưu kết quả
Ailoot Ultra · Biểu diễn nhúng
json
Lưu tất cả kết quả đã hoàn tất
Lưu mọi phản hồi hoàn chỉnh, tệp và phần nội dung được trả về.
Giữ lại mọi vector kèm chỉ mục của nó. Số lượng vector phải bằng số lượng đầu vào; số chiều phải nhất quán.
Nếu cần kiểm tra phản hồi gốc
Không có điểm cuối tác vụ embedding nào được bổ sung.
Trường phản hồi
| Trường | Loại |
|---|---|
Trườngobject | Loạistring |
Trườngmodel | Loạistring |
Trườngdata[].index | Loạiinteger |
Trườngdata[].embedding | Loạifinite float[] |
Trườngusage | Loạiobject |
Lỗi và bước tiếp theo
| Phản hồi | Điều kiện | Bước tiếp theo |
|---|---|---|
Phản hồi400 · invalid_request_error | Điều kiệnTrường bắt buộc, cách biểu diễn tài liệu hoặc giá trị tham số không hợp lệ | Bước tiếp theoSửa các trường được chỉ ra trước khi gửi yêu cầu tạo mới. |
Bí danh
Bí danh mô hình
Ailoot Ultra baai/bge-m3
Bí danh đường dẫn phương thức
Dùng các đường dẫn phương thức hiển thị ở trên.
ID gọi liên quan
FAQ · BAAI: bge-m3
- Có những đầu vào và kết quả nào?
POST /v1/embeddings·baai/bge-m3:text,token_ids→embedding- Yêu cầu sử dụng những trường nào?
POST /v1/embeddings·baai/bge-m3:model,input,encoding_format,provider- Áp dụng những giới hạn nào?
POST /v1/embeddings·baai/bge-m3:ctx:8194;input.budget.maximum:8194(byte UTF8);input.min_items:1