النماذج

Meta: Muse Spark 1.3

Markdown · JSON

Meta: Muse Spark 1.3

Muse Spark 1.3 هو نموذج الاستدلال متعدد الوسائط من Meta للوكلاء الذين يعملون لفترات طويلة ومسارات العمل البرمجية. يتتبّع المصادر والنتائج السابقة، ويدعم سياقًا معلنًا من الشركة المصنّعة يبلغ 1,048,576 توكن ومستويات استدلال تصل إلى max في إصدار Standard هذا، ويعيد نصًا وإجراءات أدوات مقترحة.

عن النموذج

يغطي هذا الوصف قدرات النموذج. وترد أدناه المدخلات والمخرجات والخيارات المتاحة في Ailoot للطريقة المحددة.

Muse Spark 1.3 هو نموذج الاستدلال من Meta للعمل المستمر بالوكلاء والبرمجة. تؤكد الشركة المصنّعة الحفاظ على السياق والنتائج السابقة عبر المهام الممتدة، والتعامل مع المصادر المتعارضة، وإنتاج مخرج مكتمل. هذا الإدراج لإصدار Standard 1.3، الذي تشمل إعدادات الاستدلال الموثقة له max؛ ولإصدار Contributor المسمّى بصورة منفصلة حدوده الخاصة للإعدادات.

عمل الوكلاء الممتد

يصف الإصدار نموذجًا تدرّب عبر بيئات وكلاء مختلفة لجمع المعلومات، وتنقيح الخطة عند تغير الأدلة، والحفاظ على المتطلبات التفصيلية خلال مهمة متعددة الخطوات. ويصف أيضًا تحسن التعامل مع عدة مسارات عمل في محادثة واحدة، مع ربط الطلبات الواردة بالمهمة المعنية. يجب أن يعرّف الطلب المفيد الهدف والمصادر والمتطلبات والمخرج الذي سيُعدّ إكمالاً.

لمهمة مستند مهني، قدّم التقارير المصدرية وحدد الحقائق التي يجب أن تبقى واطلب موجزًا منظمًا مع مواضع المصادر. إذا تعارضت المصادر، فاطلب العبارات المتعارضة منفصلة والمعلومات اللازمة لحسمها. ولمهمة برمجية، أدرج السلوك المقصود والوحدات المتأثرة والشيفرة ذات الصلة؛ واطلب التنفيذ المقترح والأدلة التي تميّز النتيجة المقصودة.

تقول الشركة المصنّعة إن 1.3 يطلب توضيحًا عندما يكون الطلب غامضًا ويطلب مساعدة المستخدم عند التعطل. وتصف أيضًا حكمًا أفضل بشأن الإجراءات ذات العواقب. هذه تحسينات لسلوك النموذج، ولا تحل محل ضوابط التنفيذ في التطبيق. أعطِ الوكيل المعلومات اللازمة لاتخاذ القرار واجعل النتيجة المطلوبة صريحة.

البرمجة والأدلة متعددة الوسائط

يركز الإصدار على المهام البرمجية الأطول، والناتج الأنظف، وعدد أقل من الأدوار غير الضرورية مقارنةً بـ1.2. يمكن لمسار وكيل برمجي فحص لقطة شاشة والعثور على الشيفرة المعنية واقتراح تصحيح واستخدام التغذية الراجعة من التنفيذ أو التصيير التي تعيدها أدواته. حدد الواجهة التي يجب أن تبقى متوافقة واطلب المخرج المعدّل منفصلاً عن افتراضاته وشرحه.

يسرد جدول النموذج الرسمي مدخلات النص والصور والفيديو وPDF، مع ناتج نصي وسياق يبلغ 1,048,576 توكن. يمكن للصور أو المقاطع تقديم دليل مرئي إلى جانب المهمة المكتوبة. ينبغي لسؤال عن مخطط الاحتفاظ بالمحاور والمفاتيح والوحدات؛ ولسؤال عن لقطة شاشة تحديد السلوك المطلوب إعادة إنتاجه أو فحصه. ويمكن لسؤال عن PDF طلب استخراج أو مقارنة مرتبطين بالمصادر، بدلاً من ملخص عام لكل صفحة.

تشير الشركة المصنّعة صراحةً إلى أن فهم الصوت في 1.3 غير مدعوم بالكامل وأن الإجابات التي تتضمن صوتًا قد تتدهور. يختلف ذلك عن القدرة السمعية البصرية الموثقة لـ1.2. كما أن نتيجة النموذج النصية لا تولّد بذاتها صورة أو تسجيلاً منطوقًا أو ملفًا مكتملًا دون أدوات التطبيق المحيط.

جهد الاستدلال والاستمرارية

المستويات الموثقة هي minimal وlow وmedium وhigh وxhigh وmax. يخص max إصدار Standard 1.3. لا يدعم Muse Spark تعطيل الاستدلال باستخدام none؛ وحذف الإعداد يترك مستوى الاستدلال ليحدده النموذج. اختر الجهد للمشكلة الفعلية واترك مساحة للاستدلال الداخلي والنتيجة المكتوبة المطلوبة معًا.

تشترك توكنات الاستدلال والتوكنات المرئية في ميزانية الناتج. يبقى الاستدلال الداخلي الخام خاصًا ولا يُعاد كنص مقروء عادي. تميّز الشركة المصنّعة بين سجل المحادثة المرئي واستمرارية الاستدلال الخاص: لا تكشف واجهة الدردشة لديها مسارًا يستطيع المستدعون الخارجيون إعادة تشغيله، بينما يدعم مسار المحادثة الآخر الموثق متابعة استدلال مُدارة أو مشفّرة. احتفظ بالمصادر والرسائل المرئية ونتائج الأدوات الفعلية اللازمة للمتابعة، بدلاً من افتراض احتفاظ جميع الواجهات بالاستدلال الخاص بالطريقة نفسها.

الأدوات والمخرجات المنظمة

يوفّر التطبيق أوصاف الدوال التي يعرّفها المطوّر، وينشئ النموذج وسائط الاستدعاء المطلوبة، وينفذ التطبيق كل استدعاء ويعيد النتيجة المرتبطة به. قد يطلب النموذج عدة دوال في دور واحد. أعد نتيجة كل عملية أصلية قبل طلب الاستنتاج التالي، كي تستخدم الإجابة المعلومات المسترجعة أو المحسوبة فعليًا.

توثق الشركة المصنّعة بصورة منفصلة أدوات بحث مدمجة تُنفّذ داخل خدمتها المتصلة. للدوال التي يعرّفها المطوّر ولهذه الأدوات المدمجة ترتيبات تنفيذ مختلفة. يستطيع النموذج الاستدلال على المعلومات التي يحتاجها، لكن اختيار النموذج وحده لا يوفّر وصولاً إلى مستودع أو متصفح أو مصدر معلومات خاص.

يمكن للناتج المنظم تقييد النتيجة بمخطط JSON مقدّم. عرّف الحقول والأنواع اللازمة للخطوة التالية وطريقة التعامل مع المعلومات المصدرية الناقصة. في وضع المخططات الصارم لدى الشركة المصنّعة، يكون الجذر كائنًا عاديًا، وتكون كل خاصية مطلوبة، وتُمنع الخصائص الإضافية؛ وتُرفض المخططات العودية. هذه قيود على واجهة الشركة المصنّعة المنظمة، وليست دليلاً على صحة الحقائق داخل سجل صحيح الشكل.

لمخرج نهائي مفيد، اطلب النتائج المدعومة بالمصادر والتغيير أو المستند المقترح والشروط غير المحسومة بصورة منفصلة. لا تعطي المصادر المقروءة حدًا أقصى صارمًا مستقلاً لسعة توكنات المدخلات أو المخرجات يتجاوز السياق الموثق. أبقِ هوية Standard 1.3 وخيار الاستدلال ونتائج التنفيذ المتصل صريحة طوال المهمة.

مهمة عملية

مهمة عملية

مثال تقني باللغة الإنجليزية

Resolve conflicting project reports

Prepare a decision brief from these reports. Engineering E: migration scripts passed staging checks. Operations O: production backup restoration has not been rehearsed. Release policy P: rehearsal must pass before migration approval. State what is established, what blocks approval and the next evidence needed. Keep staging success separate from production readiness and cite E, O or P beside each point.

النتيجة المتوقعة

A source-linked brief with established facts, the blocking condition and one concrete evidence request.

التحقق من النتيجة

Staging checks alone never satisfy the policy's restoration-rehearsal requirement.
Ailoot Ultra · محادثة OpenAI POST /v1/chat/completions meta/muse-spark-1.3

meta/muse-spark-1.3

Meta /meta/muse-spark-1.3

البداية

Muse Spark 1.3 هو نموذج الاستدلال متعدد الوسائط من Meta للوكلاء الذين يعملون لفترات طويلة ومسارات العمل البرمجية. يتتبّع المصادر والنتائج السابقة، ويدعم سياقًا معلنًا من الشركة المصنّعة يبلغ 1,048,576 توكن ومستويات استدلال تصل إلى max في إصدار Standard هذا، ويعيد نصًا وإجراءات أدوات مقترحة.

المدخلات المقبولة
النص
النتائج
النص

متاح في Ailoot · المدخلات والطرائق

Ailoot Ultra · محادثة OpenAI POST /v1/chat/completions
الإدخال
text
الإخراج
text
صيغة الإخراج
json أو SSE
الحقلالنوعالمتطلبالقيم والحدودالقيمة الافتراضية
الحقلmodelالنوعstringالمتطلبمطلوبالقيم والحدود
meta/muse-spark-1.3
القيمة الافتراضية—
الحقلmessagesالنوعmessage[]المتطلبمطلوبالقيم والحدود
الحد الأدنى للعناصر: ⁦1⁩
القيمة الافتراضية—
الحقلmessages[].roleالنوعstringالمتطلبمطلوبالقيم والحدود
أمثلة: system, user, assistant, tool, function
الشروط: تُمثَّل هذه الأدوار صراحةً بأنواع التوافق في الشيفرة المصدرية؛ وتظل مجموعة الأدوار الدقيقة خاصة بكل نموذج.
يعتمد على النموذج
القيمة الافتراضية—
الحقلmessages[].contentالنوعstring|content_part[]|nullالمتطلباختياريالقيم والحدودالقيمة الافتراضية—
الحقلmessages[].tool_callsالنوعtool_call[]المتطلباختياريالقيم والحدودالقيمة الافتراضية—
الحقلmessages[].tool_call_idالنوعstringالمتطلباختياريالقيم والحدود
ينطبق عندما: role=tool؛ استخدم المعرّف الفعلي المُرجع
القيمة الافتراضية—
الحقلmessages[].nameالنوعstringالمتطلباختياريالقيم والحدودالقيمة الافتراضية—
الحقلmessages[].reasoning_contentالنوعstringالمتطلباختياريالقيم والحدود
ينطبق عندما: أعِد تمرير الاستدلال الفعلي المُرجع حيث يستخدمه هذا النموذج
القيمة الافتراضية—
الحقلmessages[].reasoning_detailsالنوعobject|arrayالمتطلباختياريالقيم والحدود
يعتمد على النموذج
القيمة الافتراضية—
الحقلmax_tokensالنوعintegerالمتطلباختياريالقيم والحدود
الحد الأدنى: ⁦1⁩
يعتمد على النموذج
القيمة الافتراضية—
الحقلmax_completion_tokensالنوعintegerالمتطلباختياريالقيم والحدود
الحد الأدنى: ⁦1⁩
يعتمد على النموذج
القيمة الافتراضية—
الحقلstreamالنوعbooleanالمتطلباختياريالقيم والحدودالقيمة الافتراضيةfalse
الحقلstream_options.include_usageالنوعbooleanالمتطلباختياريالقيم والحدود
يعتمد على النموذج
القيمة الافتراضية—
الحقلtemperatureالنوعnumberالمتطلباختياريالقيم والحدود
يعتمد على النموذج
القيمة الافتراضية—
الحقلtop_pالنوعnumberالمتطلباختياريالقيم والحدود
يعتمد على النموذج
القيمة الافتراضية—
الحقلstopالنوعstring|string[]المتطلباختياريالقيم والحدود
يعتمد على النموذج
القيمة الافتراضية—
الحقلtoolsالنوعfunction_tool[]المتطلباختياريالقيم والحدود
يعتمد على النموذج
القيمة الافتراضية—
الحقلtools[].typeالنوعstringالمتطلباختياريالقيم والحدود
function
يعتمد على النموذج
القيمة الافتراضية—
الحقلtools[].function.nameالنوعstringالمتطلبمطلوبالقيم والحدود
ينطبق عندما: أداة دالة مقدّمة
القيمة الافتراضية—
الحقلtools[].function.descriptionالنوعstringالمتطلباختياريالقيم والحدودالقيمة الافتراضية—
الحقلtools[].function.parametersالنوعJSON_schemaالمتطلباختياريالقيم والحدودالقيمة الافتراضية—
الحقلtool_choiceالنوعstring|objectالمتطلباختياريالقيم والحدود
يعتمد على النموذج
القيمة الافتراضية—
الحقلparallel_tool_callsالنوعbooleanالمتطلباختياريالقيم والحدود
يعتمد على النموذج
القيمة الافتراضية—
الحقلresponse_formatالنوعobjectالمتطلباختياريالقيم والحدود
يعتمد على النموذج
القيمة الافتراضية—
الحقلreasoning_effortالنوعstringالمتطلباختياريالقيم والحدود
يعتمد على النموذج
القيمة الافتراضية—
الحقلreasoningالنوعobjectالمتطلباختياريالقيم والحدود
يعتمد على النموذج
القيمة الافتراضية—
الحقلservice_tierالنوعstringالمتطلباختياريالقيم والحدود
يعتمد على النموذج
القيمة الافتراضية—
الحقلinstructionsالنوعstringالمتطلباختياريالقيم والحدود
حقل للتوافق
القيمة الافتراضية—
الحقلfunctionsالنوعfunction[]المتطلباختياريالقيم والحدود
يعتمد على النموذج
القيمة الافتراضية—
الحقلfunction_callالنوعstring|objectالمتطلباختياريالقيم والحدود
يعتمد على النموذج
القيمة الافتراضية—
الحقلprompt_cache_optionsالنوعobjectالمتطلباختياريالقيم والحدود
يعتمد على النموذج
القيمة الافتراضية—
الحقلmodalitiesالنوعstring[]المتطلباختياريالقيم والحدود
text
القيمة الافتراضية—
الحقلproviderالنوعobjectالمتطلباختياريالقيم والحدود
الشروط: يُرفَض provider.options في مسار Ultra النصي هذا
القيمة الافتراضية—
الحقلcache_control.ttlالنوعstringالمتطلباختياريالقيم والحدود
الشروط: تُرفَض 1h في المواضع الفعلية للتخزين المؤقت للموجّه
القيمة الافتراضية—
تركيبات مواد الإدخال

النص · نص UTF8

messages[].content

معلمات الطريقة ودورة حياتها
المعلمةالمواصفات
المعلمةcontent_typeالمواصفاتapplication/json
المعلمةrequiredالمواصفاتmodel, messages
المعلمةmaterial_typesالمواصفاتtext
المعلمةmessagesالمواصفاتمصفوفة رسائل ببنية role/content
المعلمةfile_materialالمواصفاتمستند UTF-8 الفعلي مُدرج كنص حرفي؛ لا يُستنتَج معرّف ملف
المعلمةoptional_controlsالمواصفاتstream, temperature, top_p, stop, max_tokens, max_completion_tokens, reasoning, response_format, tools, tool_choice
المعلمةcontrol_scopeالمواصفاتخاص بالنموذج؛ أدوات الدوال التي يقدّمها المستخدم تختلف عن الأدوات المستضافة
المعلمةoutput_modalitiesالمواصفاتtext
المعلمةhosted_operationsالمواصفاتfalse
المعلمةmultimodal_input_bindingالمواصفاتnull

دورة الحياة: synchronous_or_streamed

أرسل معرّف النموذج الدقيق مع messages.

طول السياق ليس حدًا أقصى للإخراج.

يمكن لملف نصي تقديم نص حرفي؛ وتحتاج مدخلات الصور/الصوت/كائنات الملفات إلى ربط دقيق.

الباقات

مراجع التسعير لا تضيف خيارات للطلب. المعلمات المدعومة مذكورة للطريقة المحددة.

الوضع السريع
التعرفة القياسية عند اختيار الوضع السريع
الوضع المرن
التعرفة القياسية عند اختيار وضع flex
أقصى جهد للاستدلال
التعرفة القياسية عندما يُطبَّق الضبط الافتراضي default مع أقصى جهد للاستدلال
جهد الاستدلال · مرتفع
التعرفة القياسية عندما يكون جهد الاستدلال مرتفعًا
جهد الاستدلال · منخفض
التعرفة القياسية عندما يكون جهد الاستدلال منخفضًا
جهد الاستدلال · الحد الأقصى
التعرفة القياسية عندما يكون جهد الاستدلال عند الحد الأقصى
جهد الاستدلال · متوسط
التعرفة القياسية عندما يكون جهد الاستدلال متوسطًا
جهد الاستدلال · أدنى
التعرفة القياسية عندما يكون جهد الاستدلال في أدنى مستوياته
جهد الاستدلال · xhigh
التعرفة القياسية عندما يكون جهد الاستدلال xhigh

تعرفات Ailoot

الأسعار حسب الإعدادات

طابق كل رسم مع الشروط المعروضة. طبّق تعرفة واحدة لكل مجموعة من الإعدادات البديلة.

الإعداداتجدول التعرفةرموز السياق، أكثر منرموز السياق، حتى القيمة شاملةًالرسوم
الإعداداتالتعرفات الأساسية للرموزجدول التعرفةالتعرفة الأساسيةرموز السياق، أكثر من—رموز السياق، حتى القيمة شاملةًلا يوجد حد أقصىالرسوم
الإدخال · رموز الإدخال $0.0025 / 1K من الرموز
الإخراج · رموز الإخراج $0.0085 / 1K من الرموز
الإدخال · قراءة ذاكرة التخزين المؤقت $0.0003 / 1K من الرموز
الإدخال · الكتابة إلى ذاكرة التخزين المؤقت — / 1K من الرموز
الإدخال · الكتابة إلى ذاكرة التخزين المؤقت، 1 ساعة — / 1K من الرموز
الإعداداتالشريحة 1 لطول الطلبجدول التعرفة—رموز السياق، أكثر من⁦0⁩رموز السياق، حتى القيمة شاملةًلا يوجد حد أقصىالرسوم
الإدخال · رموز الإدخال $0.0025 / 1K من الرموز
الإخراج · رموز الإخراج $0.0085 / 1K من الرموز
الإدخال · قراءة ذاكرة التخزين المؤقت $0.0003 / 1K من الرموز
الإدخال · الكتابة إلى ذاكرة التخزين المؤقت — / 1K من الرموز
الإدخال · الكتابة إلى ذاكرة التخزين المؤقت، 1 ساعة — / 1K من الرموز

تحجز Ailoot مبلغًا تقديريًا قبل الطلب. وبعد ظهور النتيجة، تُسوّي الرسوم النهائية بناءً على الاستخدام المقاس. وتستخدم تسوية البث سجل الاستخدام النهائي. كيفية عمل حجز المبلغ وتسوية الرسوم →

أمثلة للطلبات

Ailoot Ultra · محادثة OpenAI

curlPython SDKالبث باستخدام Python
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "meta/muse-spark-1.3", "messages": [{"role": "user", "content": "Explain the difference between an observation and a hypothesis in three sentences."}]}')

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/chat/completions \
  -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("choices",[]):
    if x.get("message",{}).get("content"): print(x["message"]["content"])
PY_RESULT
from openai import OpenAI
import os

if not os.environ.get("AILOOT_API_KEY", "").strip(): raise SystemExit("Set AILOOT_API_KEY before making a request")
client=OpenAI(base_url="https://api.ailoot.ai/v1",api_key=os.environ["AILOOT_API_KEY"],max_retries=0)
result=client.chat.completions.create(model='meta/muse-spark-1.3',messages=[{"role":"user","content":"Explain observations and hypotheses in three sentences."}])
import base64, json
from pathlib import Path

def save_result(data, stem="result"):
    # Keep every field, including usage, IDs, reasoning and tool requests.
    Path(stem + ".json").write_text(json.dumps(data, ensure_ascii=False, indent=2), encoding="utf-8")
    print(json.dumps(data, ensure_ascii=False, indent=2))
    def save_blob(encoded, suffix, label):
        raw = base64.b64decode(encoded, altchars=b"-_", validate=True)
        ext = "png" if raw.startswith(b"\x89PNG\r\n\x1a\n") else "jpg" if raw.startswith(b"\xff\xd8") else "webp" if raw[:4] == b"RIFF" and raw[8:12] == b"WEBP" else suffix
        file = Path(stem + "-" + label + "." + ext)
        file.write_bytes(raw)
        print("Saved", file)
    for index, block in enumerate(data.get("content") or []):
        print("Content", index, json.dumps(block, ensure_ascii=False))
    for choice in data.get("choices") or []:
        print("Choice", choice.get("index"), json.dumps(choice.get("message", choice.get("delta", {})), ensure_ascii=False))
    for index, item in enumerate(data.get("output") or []):
        print("Output", index, json.dumps(item, ensure_ascii=False))
        if item.get("type") == "image_generation_call" and item.get("result"):
            save_blob(item["result"], item.get("output_format") or "bin", "output-" + str(index))
    for ci, candidate in enumerate(data.get("candidates") or []):
        for pi, part in enumerate((candidate.get("content") or {}).get("parts") or []):
            print("Candidate/part", ci, pi, json.dumps(part, ensure_ascii=False))
            blob = part.get("inlineData") or part.get("inline_data")
            if blob and blob.get("data"):
                mime = blob.get("mimeType") or blob.get("mime_type")
                suffix = {"image/png":"png", "image/jpeg":"jpg", "image/webp":"webp", "audio/wav":"wav", "audio/mpeg":"mp3", "video/mp4":"mp4"}.get(mime, "bin")
                save_blob(blob["data"], suffix, "candidate-" + str(ci) + "-part-" + str(pi))

save_result(result.to_dict(mode="json"))
from openai import OpenAI
import os
from pathlib import Path

if not os.environ.get("AILOOT_API_KEY", "").strip(): raise SystemExit("Set AILOOT_API_KEY before making a request")
client=OpenAI(base_url="https://api.ailoot.ai/v1",api_key=os.environ["AILOOT_API_KEY"],max_retries=0)
import base64, json
from pathlib import Path

def save_result(data, stem="result"):
    # Keep every field, including usage, IDs, reasoning and tool requests.
    Path(stem + ".json").write_text(json.dumps(data, ensure_ascii=False, indent=2), encoding="utf-8")
    print(json.dumps(data, ensure_ascii=False, indent=2))
    def save_blob(encoded, suffix, label):
        raw = base64.b64decode(encoded, altchars=b"-_", validate=True)
        ext = "png" if raw.startswith(b"\x89PNG\r\n\x1a\n") else "jpg" if raw.startswith(b"\xff\xd8") else "webp" if raw[:4] == b"RIFF" and raw[8:12] == b"WEBP" else suffix
        file = Path(stem + "-" + label + "." + ext)
        file.write_bytes(raw)
        print("Saved", file)
    for index, block in enumerate(data.get("content") or []):
        print("Content", index, json.dumps(block, ensure_ascii=False))
    for choice in data.get("choices") or []:
        print("Choice", choice.get("index"), json.dumps(choice.get("message", choice.get("delta", {})), ensure_ascii=False))
    for index, item in enumerate(data.get("output") or []):
        print("Output", index, json.dumps(item, ensure_ascii=False))
        if item.get("type") == "image_generation_call" and item.get("result"):
            save_blob(item["result"], item.get("output_format") or "bin", "output-" + str(index))
    for ci, candidate in enumerate(data.get("candidates") or []):
        for pi, part in enumerate((candidate.get("content") or {}).get("parts") or []):
            print("Candidate/part", ci, pi, json.dumps(part, ensure_ascii=False))
            blob = part.get("inlineData") or part.get("inline_data")
            if blob and blob.get("data"):
                mime = blob.get("mimeType") or blob.get("mime_type")
                suffix = {"image/png":"png", "image/jpeg":"jpg", "image/webp":"webp", "audio/wav":"wav", "audio/mpeg":"mp3", "video/mp4":"mp4"}.get(mime, "bin")
                save_blob(blob["data"], suffix, "candidate-" + str(ci) + "-part-" + str(pi))

with client.chat.completions.stream(model='meta/muse-spark-1.3',messages=[{"role":"user","content":"Explain observations and hypotheses in three sentences."}]) as stream:
    with Path("stream-events.jsonl").open("w",encoding="utf-8") as log:
        for event in stream:
            payload=event.to_dict(mode="json")
            log.write(json.dumps(payload,ensure_ascii=False)+"\n"); log.flush()
            print(json.dumps(payload,ensure_ascii=False))
    final=stream.get_final_completion()
    save_result(final.to_dict(mode="json"),"stream-result")

استلام النتائج وحفظها

Ailoot Ultra · محادثة OpenAI

json أو SSE

الاحتفاظ بكل النتائج المكتملة

احتفظ بكل استجابة كاملة وكل ملف وجزء محتوى تم إرجاعه.

احتفظ بكل اختيار ومحتواه واستدعاءات أدواته واستدلاله. في SSE، جمّع التحديثات بحسب فهرس الاختيار/الأداة، واحتفظ بسبب الإنهاء النهائي والاستخدام.

عند الحاجة إلى التحقق من الاستجابة الأصلية

احتفظ بمعرّفات الطلبات/الاستجابات والترويسات. لا يُقدَّم URL عام لاسترجاع مهمة نصية.

حقول الاستجابة
الحقلالنوع
الحقلchoices[].indexالنوعinteger
الحقلchoices[].message.contentالنوعstring|null
الحقلchoices[].message.tool_callsالنوعtool_call[]
الحقلchoices[].message.reasoning_contentالنوعstring
الحقلchoices[].message.reasoning_detailsالنوعobject|array
الحقلchoices[].finish_reasonالنوعstring|null
الحقلusageالنوعobject
الأخطاء والخطوات التالية
الاستجابةالشرطالخطوة التالية
الاستجابة⁦400⁩ · invalid_request_errorالشرطحقول مطلوبة أو تمثيل مادة أو قيمة معلمة غير صحيحةالخطوة التاليةصحّح الحقول المحددة قبل طلب إنشاء جديد.

الأسماء البديلة

الأسماء البديلة للنموذج

Ailoot Ultra meta/muse-spark-1.3

الأسماء البديلة لمسارات الطرائق

استخدم مسارات الطرائق المعروضة أعلاه.

معرّفات النماذج ذات الصلة IDs

meta/muse-spark-1.3

Ailoot Ultra · رسائل Anthropic POST /v1/messages meta/muse-spark-1.3

meta/muse-spark-1.3

Meta /meta/muse-spark-1.3

البداية

Muse Spark 1.3 هو نموذج الاستدلال متعدد الوسائط من Meta للوكلاء الذين يعملون لفترات طويلة ومسارات العمل البرمجية. يتتبّع المصادر والنتائج السابقة، ويدعم سياقًا معلنًا من الشركة المصنّعة يبلغ 1,048,576 توكن ومستويات استدلال تصل إلى max في إصدار Standard هذا، ويعيد نصًا وإجراءات أدوات مقترحة.

المدخلات المقبولة
النص
النتائج
json · sse

متاح في Ailoot · المدخلات والطرائق

Ailoot Ultra · رسائل Anthropic POST /v1/messages
الإدخال
text
الإخراج
json, sse
صيغة الإخراج
JSON أو SSE
الحقلالنوعالمتطلبالقيم والحدودالقيمة الافتراضية
الحقلmodelالنوعstringالمتطلبمطلوبالقيم والحدود
meta/muse-spark-1.3
القيمة الافتراضية—
الحقلmessagesالنوعmessage[]المتطلبمطلوبالقيم والحدودالقيمة الافتراضية—
الحقلmessages[].roleالنوعstringالمتطلبمطلوبالقيم والحدود
user, assistant
القيمة الافتراضية—
الحقلmessages[].contentالنوعstringالمتطلبمطلوبالقيم والحدودالقيمة الافتراضية—
الحقلmax_tokensالنوعintegerالمتطلبمطلوبالقيم والحدودالقيمة الافتراضية—
الحقلstreamالنوعbooleanالمتطلباختياريالقيم والحدودالقيمة الافتراضيةfalse
تركيبات مواد الإدخال

النص · نص UTF-8

سلسلة نصية messages[].content

معلمات الطريقة ودورة حياتها
المعلمةالمواصفات
المعلمةcontent_typeالمواصفاتapplication/json
المعلمةrequiredالمواصفاتmodel, messages, max_tokens
المعلمةoptional_controlsالمواصفاتstream
المعلمةmaterial_typesالمواصفاتtext
المعلمةtext_file_materialالمواصفاتاقرأ مستند UTF-8 الفعلي وضع نصه في الإدخال المحدد أو السلسلة النصية لمحتوى الرسالة.

دورة الحياة: synchronous_or_streamed

الباقات

مراجع التسعير لا تضيف خيارات للطلب. المعلمات المدعومة مذكورة للطريقة المحددة.

الوضع السريع
التعرفة القياسية عند اختيار الوضع السريع
الوضع المرن
التعرفة القياسية عند اختيار وضع flex
أقصى جهد للاستدلال
التعرفة القياسية عندما يُطبَّق الضبط الافتراضي default مع أقصى جهد للاستدلال
جهد الاستدلال · مرتفع
التعرفة القياسية عندما يكون جهد الاستدلال مرتفعًا
جهد الاستدلال · منخفض
التعرفة القياسية عندما يكون جهد الاستدلال منخفضًا
جهد الاستدلال · الحد الأقصى
التعرفة القياسية عندما يكون جهد الاستدلال عند الحد الأقصى
جهد الاستدلال · متوسط
التعرفة القياسية عندما يكون جهد الاستدلال متوسطًا
جهد الاستدلال · أدنى
التعرفة القياسية عندما يكون جهد الاستدلال في أدنى مستوياته
جهد الاستدلال · xhigh
التعرفة القياسية عندما يكون جهد الاستدلال xhigh

تعرفات Ailoot

الأسعار حسب الإعدادات

طابق كل رسم مع الشروط المعروضة. طبّق تعرفة واحدة لكل مجموعة من الإعدادات البديلة.

الإعداداتجدول التعرفةرموز السياق، أكثر منرموز السياق، حتى القيمة شاملةًالرسوم
الإعداداتالتعرفات الأساسية للرموزجدول التعرفةالتعرفة الأساسيةرموز السياق، أكثر من—رموز السياق، حتى القيمة شاملةًلا يوجد حد أقصىالرسوم
الإدخال · رموز الإدخال $0.0025 / 1K من الرموز
الإخراج · رموز الإخراج $0.0085 / 1K من الرموز
الإدخال · قراءة ذاكرة التخزين المؤقت $0.0003 / 1K من الرموز
الإدخال · الكتابة إلى ذاكرة التخزين المؤقت — / 1K من الرموز
الإدخال · الكتابة إلى ذاكرة التخزين المؤقت، 1 ساعة — / 1K من الرموز
الإعداداتالشريحة 1 لطول الطلبجدول التعرفة—رموز السياق، أكثر من⁦0⁩رموز السياق، حتى القيمة شاملةًلا يوجد حد أقصىالرسوم
الإدخال · رموز الإدخال $0.0025 / 1K من الرموز
الإخراج · رموز الإخراج $0.0085 / 1K من الرموز
الإدخال · قراءة ذاكرة التخزين المؤقت $0.0003 / 1K من الرموز
الإدخال · الكتابة إلى ذاكرة التخزين المؤقت — / 1K من الرموز
الإدخال · الكتابة إلى ذاكرة التخزين المؤقت، 1 ساعة — / 1K من الرموز

تحجز Ailoot مبلغًا تقديريًا قبل الطلب. وبعد ظهور النتيجة، تُسوّي الرسوم النهائية بناءً على الاستخدام المقاس. وتستخدم تسوية البث سجل الاستخدام النهائي. كيفية عمل حجز المبلغ وتسوية الرسوم →

أمثلة للطلبات

Ailoot Ultra · رسائل Anthropic

جسم طلب JSON مكتمل بالحد الأدنىcurl · استخدم مستندك بترميز UTF-8Python · احفظ النتيجة كاملة
{
  "model": "meta/muse-spark-1.3",
  "max_tokens": 128,
  "messages": [
    {
      "role": "user",
      "content": "Summarize the incident report."
    }
  ],
  "stream": false
}
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_TEXT_FILE:?Set your actual UTF-8 document}"
export AILOOT_TEXT_FILE
python3 - <<'PY_REQUEST'
import json, os
from pathlib import Path

source_file = Path(os.environ['AILOOT_TEXT_FILE'])
if not source_file.is_file():
    raise SystemExit('Set AILOOT_TEXT_FILE to your actual UTF-8 document')
text = source_file.read_text(encoding='utf-8')
if not text.strip():
    raise SystemExit('Choose a document containing text')
payload = {'model': 'meta/muse-spark-1.3', 'max_tokens': 128, 'messages': [{'role': 'user', 'content': 'Summarize the incident report.'}]}
payload['messages'][0]['content'] = 'Summarize this material and quote supporting source passages.\n\n' + text
Path('request.json').write_text(json.dumps(payload, ensure_ascii=False), encoding='utf-8')
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/messages \
  -H "x-api-key: $AILOOT_API_KEY" -H 'anthropic-version: 2023-06-01' -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

result = json.loads(Path('result.json').read_text(encoding='utf-8'))
print(json.dumps(result, ensure_ascii=False, indent=2))
PY_RESULT
import json, os
from pathlib import Path

source_file = Path(os.environ['AILOOT_TEXT_FILE'])
if not source_file.is_file():
    raise SystemExit('Set AILOOT_TEXT_FILE to your actual UTF-8 document')
text = source_file.read_text(encoding='utf-8')
if not text.strip():
    raise SystemExit('Choose a document containing text')
payload = {'model': 'meta/muse-spark-1.3', 'max_tokens': 128, 'messages': [{'role': 'user', 'content': 'Summarize the incident report.'}]}
payload['messages'][0]['content'] = 'Summarize this material and quote supporting source passages.\n\n' + text
from urllib.request import Request, urlopen
from urllib.error import HTTPError

api_key = os.environ['AILOOT_API_KEY']
if not api_key.strip():
    raise SystemExit('Set AILOOT_API_KEY before making a request')
headers = {'x-api-key': 'PLACEHOLDER_KEY', 'anthropic-version': '2023-06-01', 'Content-Type': 'application/json'}
headers['x-api-key'] = api_key
request = Request('https://api.ailoot.ai/v1/messages', data=json.dumps(payload, ensure_ascii=False).encode('utf-8'), headers=headers, method='POST')
try:
    with urlopen(request, timeout=120) as response:
        raw = response.read()
        Path('response-headers.txt').write_text(str(response.headers), encoding='utf-8')
except HTTPError as error:
    Path('result.json').write_bytes(error.read())
    Path('response-headers.txt').write_text(str(error.headers), encoding='utf-8')
    raise
Path('result.json').write_bytes(raw)
import json
from pathlib import Path

result = json.loads(Path('result.json').read_text(encoding='utf-8'))
print(json.dumps(result, ensure_ascii=False, indent=2))

استلام النتائج وحفظها

Ailoot Ultra · رسائل Anthropic

JSON أو SSE

الاحتفاظ بكل النتائج المكتملة

احتفظ بكل استجابة كاملة وكل ملف وجزء محتوى تم إرجاعه.

احتفظ بكل كتل المحتوى وتوقيعات التفكير ومعرّفات استخدام الأدوات الفعلية. جمّع جميع تحديثات كتل SSE؛ فأول كتلة نصية ليست الإخراج الكامل.

عند الحاجة إلى التحقق من الاستجابة الأصلية

احتفظ بمعرّفات الطلبات/الاستجابات والترويسات. لا يُقدَّم URL عام لاسترجاع مهمة نصية.

حقول الاستجابة
الحقلالنوع
الحقلidالنوعstring
الحقلmodelالنوعstring
الحقلcontent[]النوعtext|thinking|tool_use|other content block
الحقلstop_reasonالنوعstring|null
الحقلusageالنوعobject
الأخطاء والخطوات التالية
الاستجابةالشرطالخطوة التالية
الاستجابة⁦400⁩ · invalid_request_errorالشرطحقول مطلوبة أو تمثيل مادة أو قيمة معلمة غير صحيحةالخطوة التاليةصحّح الحقول المحددة قبل طلب إنشاء جديد.

الأسماء البديلة

الأسماء البديلة للنموذج

Ailoot Ultra meta/muse-spark-1.3

الأسماء البديلة لمسارات الطرائق

استخدم مسارات الطرائق المعروضة أعلاه.

معرّفات النماذج ذات الصلة IDs

meta/muse-spark-1.3

FAQ · Meta: Muse Spark 1.3
ما المدخلات والنتائج المتاحة؟

POST /v1/chat/completions · meta/muse-spark-1.3: text → text

POST /v1/messages · meta/muse-spark-1.3: text → json, sse

ما الحقول التي يستخدمها الطلب؟

POST /v1/chat/completions · meta/muse-spark-1.3: model, messages, stream, modalities, provider

POST /v1/messages · meta/muse-spark-1.3: model, messages, max_tokens, stream

ما الحدود المطبقة؟

POST /v1/chat/completions · meta/muse-spark-1.3: messages.min_items: 1

المزيد من التفاصيل

اربط Ailoot بخدمة Claude Code أوOpenCode أوHermes أوتطبيقك.

الشركة ومحفظة مشاريعها

الشركة ومحفظة مشاريعها: ملايين العملاء؛ مبيعات بالمليارات شهريًا.

اشتر الرموز بخصم.

خصم اشتراك للعمل المنتظم. الرموز الترويجية حتى 50% على شراء الرموز.

الاشتراك
اختر خطة بخصم لطلباتك المنتظمة.
رمز خصم حتى 50%
أدخل الرمز عند الشراء. يعاد حساب السعر وفق العرض الساري.
المصروفات في السجل
يحفظ النموذج والرموز والمبلغ لكل طلب.

اختر اشتراكا · اعرض أسعار النماذج

اربط API بالمنتج الذي تبيعه.

SaaS والتطبيقات والبوتات وفق العرض واتفاقية ترخيص Ailoot. لإعادة البيع، اطلب ترخيص موزع.

تطبيق تجاري
أضف توليد النص والصور والفيديو والصوت إلى ميزات خدمتك المدفوعة.
ترخيص إعادة البيع
أرسل وصف المشروع وطريقة توفير الوصول. اطلب شروط استخدام وإعادة بيع مكتوبة.
المستندات على الموقع
العرض واتفاقية الترخيص وسياسة معالجة البيانات متاحة قبل الربط.

اطلب ترخيص إعادة بيع · العرض واتفاقية الترخيص