VoyageAI by MongoDB: voyage-4
يُنشئ voyage-4 تضمينات للنصوص من أجل الاسترجاع العام والمتعدد اللغات، ضمن فضاء متجهات مشترك بين نماذج عائلة Voyage 4. ويدعم مدخلات من 32,000 رمز، ومخرجات بأبعاد قابلة للاختيار من 256 إلى 2048، ودورَي query/document للبحث وRAG.
عن النموذج
يغطي هذا الوصف قدرات النموذج. وترد أدناه المدخلات والمخرجات والخيارات المتاحة في Ailoot للطريقة المحددة.
voyage-4 هو نموذج تضمين النصوص المتوسط الحجم من Voyage AI ضمن عائلة Voyage 4. ويحوّل نصوص الاستعلامات والمستندات إلى متجهات رقمية للاسترجاع العام والمتعدد اللغات. وتتمثّل قدرة العائلة المميزة في فضاء تضمين مشترك: إذ تُنتج voyage-4 وvoyage-4-large وvoyage-4-lite وvoyage-4-nano تمثيلات متوافقة، ما يتيح استخدام نموذجين مختلفين من هذه العائلة على جانبَي الاستعلام والمستند في مهمة البحث.
الفضاء المشترك والاسترجاع غير المتناظر
تسمّي الشركة المصنّعة استخدام نموذجين مختلفين للاستعلامات والمجموعة استرجاعًا غير متناظر. ومن الأنماط الموثّقة تجهيز المجموعة باستخدام voyage-4-large والبحث فيها بتضمينات استعلام من voyage-4. وتُنشأ تضمينات المجموعة مرة واحدة أو عندما تتغير مادتها المصدرية، بينما تُنشأ متجهات الاستعلام عند ورود عمليات البحث. ويتيح الفضاء المشترك تغيير اختيار نموذج جانب الاستعلام داخل العائلة، من دون الحاجة إلى إعادة إنشاء تضمينات المجموعة لمجرد هذا التبديل.
حافظ على توافق بُعد المخرجات والتمثيل بين المتجهات التي تُقارَن. ويتعلق التصريح بالفضاء المشترك بنماذج النصوص المسماة في Voyage 4؛ ولا يثبت ذلك لمجرد أن نموذجين غير مرتبطين يعيدان مصفوفتين بالطول نفسه. لذلك يمكن لمهمة عملية استخدام voyage-4 على جانبَي البحث، أو استخدام متجهات استعلامه مع فهرس مستندات قائم من voyage-4-large عندما تتطابق إعدادات التمثيل فيهما.
أدوار الاستعلام والمستند
للاسترجاع، توصي Voyage بتحديد نص المدخل بوصفه استعلامًا أو مستندًا. ويوفّر خيار دور المدخل تعليمات الاسترجاع المقابلة قبل تحويله إلى متجه. جهّز مقاطع المجموعة بوصفها مستندات، وصياغة بحث المستخدم بوصفها استعلامًا، مع الاحتفاظ بالنص المصدري الفعلي والمعرّفات إلى جانب كل متجه مخزّن.
يمكن مثلًا لمجموعة بحث في المعرفة فهرسة تعليمات تقنية وشروح منتجات. وينبغي لاستعلام عمّا يحدث بعد فشل الاستيراد أن يعيد مقطع المصدر الذي يصف ذلك السلوك. واحتفظ بالعناوين والشروط ذات الصلة وموضع المصدر مع المقطع، حتى يمكن فحص نتيجة البحث الناتجة أو استخدامها في مرحلة لاحقة لكتابة إجابة بأسلوب RAG. فالتضمين هو التمثيل الرقمي للاسترجاع؛ والمقطع الأصلي هو الدليل المستخدم في تلك المرحلة اللاحقة.
الأبعاد وأنواع بيانات المخرجات
نافذة السياق الموثّقة لكل نص هي 32,000 رمز. والأبعاد القابلة للاختيار هي 256 و512 و1024 و2048، مع 1024 بوصفه الافتراضي. ويوفّر تعلّم Matryoshka أحجام التمثيل المتداخلة هذه. ويمكن أن تستخدم المخرجات قيمًا بالفاصلة العائمة من 32 بت، أو أعدادًا صحيحة من 8 بت مع إشارة أو من دونها، أو قيمًا ثنائية محزّمة، بفضل تجهيز العائلة المراعي للتكميم.
في المخرجات الثنائية المحزّمة، يخزّن كل بايت مُعاد ثمانية بتات من التضمين، لذا يكون طول قائمة البايتات ثُمن البُعد المختار. ولعدد البايتات وبُعد التضمين معنيان مختلفان. اختر التمثيل الذي يستطيع فهرس البحث تفسيره، وافحص صلة المرشّحين بالأسئلة واللغات المستخدمة فعليًا في المجموعة قبل اختيار إعداد مضغوط.
طول المدخلات والدفعات والاقتطاع
يتيح دليل تضمين النصوص الحالي لدى الشركة المصنّعة ما يصل إلى 1,000 سلسلة نصية و320,000 رمز إجمالًا في طلب voyage-4. وحد الدفعة منفصل عن نافذة 32,000 رمز لكل مدخل. ويُفعَّل الاقتطاع افتراضيًا: فيُقصّر النص الذي يتجاوز الطول ليلائم الحد. وإذا عُطّل الاقتطاع، ينتج العنصر المتجاوز للطول خطأً بدلًا من ذلك.
بالنسبة إلى تقرير أو نص مفرّغ طويل، جهّز عن قصد مقاطع تتضمن الإجابة بدلًا من الاعتماد على القص عند حد المدخل. واحتفظ بارتباط كل مقطع بمستنده الأصلي وإصدار المصدر. ومدخلات تضمين voyage-4 العادية هي نصوص منفردة؛ أما المعالجة السياقية لمجموعات المقاطع فتخص نماذج التضمين السياقي الموثّقة على نحو مستقل.
استخدم نتيجة الاسترجاع
خزّن المتجهات مع نص المقاطع ومعرّفات المصادر الثابتة، وقارن كل متجه استعلام بمتجهات المستندات المتوافقة، وأرجع مقاطع مرشّحة. ويقيّم إصدار العائلة الاسترجاع عبر مواد تشمل المستندات التقنية والمحادثات والمستندات الطويلة والشيفرة والقانون والتمويل ونصوص الويب. ويمكن لنموذج منفصل لإعادة الترتيب تحسين المرشّحين، ولمرحلة إجابة لاحقة استخدام نصوصهم. قيّم المقاطع المُعادة وفق المهمة؛ فتوافق الفضاء المشترك يتيح الجمع بين النماذج، بينما تظل فائدة النتيجة معتمدة على المادة المصدرية والسؤال.
Ailoot Ultra · التضمينات POST /v1/embeddings voyageai/voyage-4
voyageai/voyage-4البداية
يُنشئ voyage-4 تضمينات للنصوص من أجل الاسترجاع العام والمتعدد اللغات، ضمن فضاء متجهات مشترك بين نماذج عائلة Voyage 4. ويدعم مدخلات من 32,000 رمز، ومخرجات بأبعاد قابلة للاختيار من 256 إلى 2048، ودورَي query/document للبحث وRAG.
- المدخلات المقبولة
- النص · token_ids
- النتائج
- embedding
متاح في Ailoot · المدخلات والطرائق
Ailoot Ultra · التضمينات POST /v1/embeddings
- الإدخال
text,token_ids- الإخراج
embedding- السياق
- 32,000 tokens
- صيغة الإخراج
- json
| الحقل | النوع | المتطلب | القيم والحدود | القيمة الافتراضية |
|---|---|---|---|---|
الحقلmodel | النوعstring | المتطلبمطلوب | القيم والحدود voyageai/voyage-4 | القيمة الافتراضية— |
الحقلinput | النوعstring|string[]|integer[]|integer[][] | المتطلبمطلوب | القيم والحدود الحد الأدنى للعناصر: 1 الشروط: دفعة متجانسة غير فارغة. معرّفات التوكنات أعداد صحيحة غير سالبة. سعة الإدخال: الحد الأقصى: 32,000 · وحدة النص: بايتات 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 | المواصفات32000 |
المعلمةmultimodal_objects | المواصفاتfalse |
المعلمةmaterial_types | المواصفاتtext, token_ids |
دورة الحياة: synchronous_json
احتفظ بفهرس كل متجه وبُعده.
اسم النموذج متعدد الوسائط لا يتيح استخدام كائنات الصور على هذا المسار المحدد.
الباقات
مراجع التسعير لا تضيف خيارات للطلب. المعلمات المدعومة مذكورة للطريقة المحددة.
- الوضع السريع
- التعرفة القياسية عند اختيار الوضع السريع
- الوضع المرن
- التعرفة القياسية عند اختيار وضع flex
- أقصى جهد للاستدلال
- التعرفة القياسية عندما يُطبَّق الضبط الافتراضي default مع أقصى جهد للاستدلال
تعرفات Ailoot
الأسعار حسب الإعدادات
| الإعدادات | جدول التعرفة | الرسوم |
|---|---|---|
| الإعداداتالتعرفات الأساسية للرموز | جدول التعرفةالتعرفة الأساسية | الرسوم الإدخال · رموز الإدخال $0.00012 / 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": "voyageai/voyage-4", "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',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 voyageai/voyage-4
الأسماء البديلة لمسارات الطرائق
استخدم مسارات الطرائق المعروضة أعلاه.
معرّفات النماذج ذات الصلة IDs
FAQ · VoyageAI by MongoDB: voyage-4
- ما المدخلات والنتائج المتاحة؟
POST /v1/embeddings·voyageai/voyage-4:text,token_ids→embedding- ما الحقول التي يستخدمها الطلب؟
POST /v1/embeddings·voyageai/voyage-4:model,input,encoding_format,provider- ما الحدود المطبقة؟
POST /v1/embeddings·voyageai/voyage-4:ctx:32000;input.budget.maximum:32000(بايتات UTF8);input.min_items:1