VoyageAI by MongoDB: voyage-4-large
voyage-4-large là mô hình embedding văn bản mixture-of-experts của Voyage AI cho truy xuất đa dụng và đa ngôn ngữ. Vector dùng chung không gian họ Voyage 4, cho phép tìm embedding kho tài liệu từ Large bằng embedding truy vấn tương thích từ các mô hình khác trong cùng họ.
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.
voyage-4-large là mô hình embedding văn bản chủ lực của Voyage AI trong họ Voyage 4. Mô hình biểu diễn đoạn nguồn và truy vấn thành vector số cho truy xuất đa dụng và đa ngôn ngữ. Hai đặc điểm phân biệt là thiết kế mixture-of-experts và không gian embedding chung của voyage-4-large, voyage-4, voyage-4-lite và voyage-4-nano.
Không gian chung: chọn riêng kho tài liệu và truy vấn
Nhà sản xuất mô tả truy xuất bất đối xứng: tài liệu có thể được tạo embedding bằng voyage-4-large, trong khi mô hình khác thuộc họ Voyage 4 chuẩn bị vector truy vấn. Ví dụ, kho tài liệu được Large biểu diễn có thể được tìm bằng truy vấn voyage-4. Điều này cho phép chọn mô hình khác nhau cho hai phía tìm kiếm mà vẫn ở trong không gian tương thích được mô tả.
Vì vậy, bộ sưu tập thực tế có thể dùng Large để chuẩn bị các đoạn tài liệu ổn định và chọn mô hình phía truy vấn độc lập. Tài liệu được tạo embedding khi tạo hoặc cập nhật kho, còn truy vấn được vector hóa khi người dùng tìm. Thông báo của họ mô tả thay mô hình truy vấn trong họ tương thích mà không cần vector hóa lại kho tài liệu chỉ vì thay đổi đó. Giữ các vector so sánh có số chiều khớp và biểu diễn mà hệ thống tìm kiếm có thể diễn giải cùng nhau.
Thiết kế embedding mixture-of-experts
Lớp feed-forward dense xử lý mỗi token bằng toàn bộ tập tham số. Cách MoE được mô tả cho voyage-4-large dùng bộ định tuyến và các mạng feed-forward chuyên gia, chọn những chuyên gia xử lý mỗi token. Điều này tách tổng năng lực mô hình khỏi các tham số hoạt động cho một token cụ thể. Voyage báo cáo tỷ lệ kích hoạt 1/10 cho thiết kế MoE của mô hình, dùng định tuyến top-k.
Giải thích kỹ thuật của nhà sản xuất còn mô tả hai lựa chọn phát triển. Dung lượng chuyên gia ảnh hưởng việc token vượt mức có bỏ qua lớp chuyên gia bằng đường residual không; nhóm chọn hệ số dung lượng lớn nhất khả thi để tránh giảm chất lượng truy xuất. Ở giai đoạn huấn luyện cuối, tham số bộ định tuyến được đóng băng trước khi gộp mô hình để nội suy các mô hình nguồn không thay đổi định tuyến chọn chuyên gia đã học. Đây là đặc điểm chuẩn bị mô hình, khác với thiết lập độ dài văn bản hoặc cắt khi chuẩn bị đầu vào.
Số chiều và biểu diễn đầu ra
Bảng mô hình chính thức quy định cửa sổ ngữ cảnh 32.000 token và các embedding 256, 512, 1024, 2048 chiều có thể chọn, mặc định 1024. Họ dùng học Matryoshka cho kích thước biểu diễn lồng nhau và hỗ trợ các lựa chọn lượng tử hóa: dấu phẩy động 32 bit, số nguyên 8 bit có dấu hoặc không dấu và đầu ra nhị phân đóng gói.
Với đầu ra nhị phân, độ dài danh sách byte trả về bằng một phần tám số chiều đã chọn vì mỗi byte chứa tám bit embedding. Lưu lựa chọn số chiều và kiểu dữ liệu cùng chỉ mục, dùng phương pháp so sánh hỗ trợ biểu diễn đó. Vector nhỏ hơn hoặc nén thay đổi biểu diễn dùng cho tìm kiếm; đánh giá các đoạn liên quan trả về cho câu hỏi thực tế trước khi chọn cho bộ sưu tập.
Chuẩn bị đầu vào document và query
Voyage khuyến nghị vai trò document cho đoạn trong kho và vai trò query cho cách diễn đạt tìm kiếm. Lựa chọn vai trò thêm chỉ dẫn truy xuất tương ứng trước khi tạo embedding. Giữ tiêu đề hữu ích, điều kiện và vị trí nguồn của đoạn, rồi lưu vector trả về cùng văn bản gốc và định danh ổn định.
Với bộ sưu tập kiến thức kỹ thuật, câu hỏi về dạng lỗi nên dẫn tới đoạn mô tả dạng đó và điều kiện liên quan. Với bộ sưu tập tài liệu nhiều ngôn ngữ, giữ ngôn ngữ nguồn và đánh giá các câu hỏi, thuật ngữ người dùng sẽ tìm. Bản phát hành bao quát tài liệu truy xuất gồm tài liệu kỹ thuật, hội thoại, tài liệu dài, mã, luật, tài chính và văn bản web. Embedding tìm tài liệu ứng viên; bộ xếp hạng lại hoặc giai đoạn trả lời sau dùng văn bản gốc.
Giới hạn ngữ cảnh, batch và cắt
Hướng dẫn hiện tại của nhà sản xuất cho phép tối đa 1.000 chuỗi và tổng 120.000 token đầu vào trong yêu cầu voyage-4-large. Điều này khác hạn mức batch của voyage-4, dù cả hai có cửa sổ 32.000 token cho từng văn bản. Mặc định cắt rút ngắn đầu vào quá dài để vừa; tắt cắt trả về lỗi cho văn bản quá dài.
Chọn ranh giới đoạn có câu trả lời một cách có chủ đích để nguồn dài không mất điều kiện hoặc giới hạn liên quan ở phần cuối bị cắt. Giữ liên kết nguồn khi trả về kết quả tìm kiếm và kiểm tra văn bản ứng viên thực tế thay vì coi khoảng cách vector gần là xác minh nội dung. Tương thích không gian chung áp dụng cho họ văn bản Voyage 4 được mô tả; xử lý đoạn theo ngữ cảnh, embedding ảnh/video và các phiên bản mô hình sau vẫn có quy trình riêng của từng mô hình.
Ailoot Ultra · Biểu diễn nhúng POST /v1/embeddings voyageai/voyage-4-large
voyageai/voyage-4-largeBắt đầu
voyage-4-large là mô hình embedding văn bản mixture-of-experts của Voyage AI cho truy xuất đa dụng và đa ngôn ngữ. Vector dùng chung không gian họ Voyage 4, cho phép tìm embedding kho tài liệu từ Large bằng embedding truy vấn tương thích từ các mô hình khác trong cùng họ.
- Đầ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
- 32.000 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 voyageai/voyage-4-large | 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: 32.000 · Đơ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 đồng32000 |
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.00024 / 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": "voyageai/voyage-4-large", "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-4-large',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 voyageai/voyage-4-large
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 · VoyageAI by MongoDB: voyage-4-large
- Có những đầu vào và kết quả nào?
POST /v1/embeddings·voyageai/voyage-4-large:text,token_ids→embedding- Yêu cầu sử dụng những trường nào?
POST /v1/embeddings·voyageai/voyage-4-large:model,input,encoding_format,provider- Áp dụng những giới hạn nào?
POST /v1/embeddings·voyageai/voyage-4-large:ctx:32000;input.budget.maximum:32000(byte UTF8);input.min_items:1