qwen-max
Qwen-Max نموذج نصي للمحادثات متعددة اللغات والاستدلال المنطقي والبرمجة وإنشاء المحتوى. يجمع اتباع التعليمات التفصيلية مع إخراج موجّه إلى JSON وتحكم في أسلوب الرد.
- Ailoot Ultra · محادثة OpenAI
POST /v1/chat/completionsqwen-max-latest - Ailoot Ultra · رسائل Anthropic
POST /v1/messagesqwen-max-latest
عن النموذج
يغطي هذا الوصف قدرات النموذج. وترد أدناه المدخلات والمخرجات والخيارات المتاحة في Ailoot للطريقة المحددة.
Qwen-Max نموذج نصي كبير في عائلة Qwen للمهام التي تجمع فهم اللغة والاستدلال المنطقي ونتيجة مكتوبة موسّعة. يبرز المنتج البرمجة بالصينية والإنجليزية والعمل متعدد اللغات والكتابة الإبداعية والمحادثة القائمة على الأدوار. صُمّم النموذج لإنتاج إجابات أوضح وأكثر تفصيلًا مع اتباع أسلوب الرد المطلوب.
يُحدَّث اسم النموذج بصورة مستمرة. يصف المنتج حاليًا qwen-max بأنه مكافئ وظيفيًا للقطة الإصدار qwen-max-2025-01-25. للاسم المتجدد واللقطة المؤرخة غرضان مختلفان: يتبع الأول تطوّر السلسلة، ويحدّد الثاني إصدارًا معينًا. حافظ على هذا التمييز عند مقارنة المهام المتكررة أو الإبقاء على إعداد مساعد متسق.
قدرات النموذج
يقبل Qwen-Max النص وينتج نصًا. يستطيع العمل مع محادثة أو مقاطع مصدرية أو متطلب برمجي أو جزء شيفرة موجود. استخدمه عندما تكون النتيجة شرحًا أو مستندًا معاد الصياغة أو تنفيذًا أو مجموعة حقول مستخرجة. تحتاج الصفحة الممسوحة ضوئيًا أو لقطة الشاشة إلى خطوة منفصلة تجعل المعلومات المطلوبة متاحة كنص؛ فالإدخال الموثّق لهذا النموذج ليس صورة.
يحدّد المنتج خصوصًا الالتزام بتنسيق JSON. يمكن لمهمة استخراج عملية تحديد حقول مثل الموضوع والشروط المذكورة صراحةً في المصدر وسؤال لم يُحسم. قدّم المقطع المصدري وأسماء الحقول المقصودة، واذكر كيفية تمثيل المعلومات الناقصة. يحوّل ذلك الإجابة الحوارية إلى بيانات يستطيع التطبيق فحصها ومعالجتها. طلب JSON وطلب شرح نثري متطلبان مختلفان للإخراج، وينبغي ذكرهما بصورة منفصلة.
تشمل الواجهات الموثّقة أيضًا استدعاء الدوال والإخراج المنظّم والمتابعة من بادئة رد والتخزين المؤقت للسياق والاستدلال على دفعات. لا يُتاح استدعاء الدوال والبحث في الويب بالطريقة نفسها في كل إعداد لدى المنتج. تعامل معهما كخيارات للواجهة المحيطة: يقدّم التطبيق الأدوات وينفّذ الإجراءات المختارة ويعيد نتائجها. ويتعلق التخزين المؤقت ومعالجة الدفعات بكيفية تقديم العمل وإعادة استخدامه، لا بنوع محتوى جديد.
حدود السياق
تسرد المواصفات المنشورة نافذة سياق بطول 32,768 رمزًا، وحد إدخال أقصى يبلغ 30,720 رمزًا، وحد إخراج أقصى يبلغ 8,192 رمزًا. أبقِ المادة المصدرية والمحادثة والإجابة المطلوبة ضمن الحدود المنطبقة. تفيد سعة الإخراج القصوى في الاختيار بين إجابة موجزة ومستند طويل؛ ولا ينبغي تفسيرها كضمان أن كل رد سيستخدم ذلك الطول.
لمهمة مستند، ضع أقسام المصدر الأساسية قبل الأمثلة الاختيارية، واذكر ما يجب أن يحتويه الناتج النهائي. فمثلًا، قدّم وصف منتج وأسئلة عميل، ثم اطلب إجابة تحتفظ بالشروط المقدّمة وتستخدم لغة العميل وتفصل الأسئلة غير المجابة عن المعلومات المؤكدة. وقد تكون النتيجة ردًا موجّهًا للعميل مع سجل JSON صغير للخطوة التالية في التطبيق.
للبرمجة، قدّم غرض الدالة والإدخال المقبول والإخراج المتوقع والجزء الحالي الذي يجب الحفاظ على التوافق معه. اطلب التنفيذ وشرح القرارات وأمثلة تغطي إدخالًا معتادًا وحالة حدية. يستخدم ذلك تركيز النموذج الموثّق على البرمجة والاستدلال من دون افتراض الوصول إلى مستودع أو مُصرِّف أو تطبيق يعمل.
للكتابة الإبداعية أو الحوار القائم على الأدوار، عرّف الجمهور والنبرة والحقائق التي يجب أن تبقى بعد المراجعة. يستطيع الدور تنظيم المحادثة، بينما تحدّد المادة المصدرية ما ينبغي أن يقوله النموذج. اطلب مقدمات أو شروحًا بديلة لقراء مختلفين، بدلًا من إعادة صياغة غير محددة؛ ويكون لكل بديل حينئذ غرض واضح يمكن ملاحظته.
حدود مهمة
Qwen-Max سلسلة من النص إلى النص، وليست إصدارًا بصريًا أو مولّدًا للكلام. لا يدرج المنتج الضبط الدقيق كقدرة واجهة مدعومة في هذه البطاقة. يعتمد السلوك المدعوم بالأدوات على الواجهة المتصلة، ولا يثبّت الاسم المتجدد لقطة دائمة. تساعد هذه الفروق على اختيار الإصدار الصحيح وإعداد إدخال يطابق النتيجة المطلوبة فعلًا.
Ailoot Ultra · محادثة OpenAI POST /v1/chat/completions qwen-max-latest
qwen-max-latestالبداية
Qwen-Max نموذج نصي للمحادثات متعددة اللغات والاستدلال المنطقي والبرمجة وإنشاء المحتوى. يجمع اتباع التعليمات التفصيلية مع إخراج موجّه إلى JSON وتحكم في أسلوب الرد.
- المدخلات المقبولة
- النص
- النتائج
- النص
متاح في Ailoot · المدخلات والطرائق
Ailoot Ultra · محادثة OpenAI POST /v1/chat/completions
- الإدخال
text- الإخراج
text- صيغة الإخراج
- json أو SSE
| الحقل | النوع | المتطلب | القيم والحدود | القيمة الافتراضية |
|---|---|---|---|---|
الحقلmodel | النوعstring | المتطلبمطلوب | القيم والحدود qwen-max-latest | القيمة الافتراضية— |
الحقلmessages | النوعmessage[] | المتطلبمطلوب | القيم والحدود الحد الأدنى للعناصر: 1 | القيمة الافتراضية— |
الحقلmessages[].role | النوعstring | المتطلبمطلوب | القيم والحدود يعتمد على النموذج | القيمة الافتراضية— |
الحقلmessages[].content | النوعstring | المتطلباختياري | القيم والحدود ينطبق عندما: محادثة نصية | القيمة الافتراضية— |
الحقلstream | النوعboolean | المتطلباختياري | القيم والحدود | القيمة الافتراضيةfalse |
تركيبات مواد الإدخال
النص · نص UTF8
messages[].content
معلمات الطريقة ودورة حياتها
| المعلمة | المواصفات |
|---|---|
المعلمةcontent_type | المواصفاتapplication/json |
المعلمةrequired | المواصفاتmodel, messages |
المعلمةmaterial_types | المواصفاتtext |
المعلمةmessages | المواصفاتمصفوفة رسائل ببنية role/content |
المعلمةfile_material | المواصفاتمستند UTF-8 الفعلي مُدرج كنص حرفي؛ لا يُستنتَج معرّف ملف |
المعلمةoptional_controls | المواصفاتstream |
المعلمةcontrol_scope | المواصفاتمحادثة نصية؛ stream قيمة منطقية، وقيمتها الافتراضية false. |
المعلمةoutput_modalities | المواصفاتtext |
المعلمةhosted_operations | المواصفاتfalse |
المعلمةmultimodal_input_binding | المواصفاتnull |
الأسماء البديلة للطريقة: /chat/completions
دورة الحياة: synchronous_or_streamed
أرسل معرّف النموذج الدقيق مع messages.
طول السياق ليس حدًا أقصى للإخراج.
يمكن لملف نصي تقديم نص حرفي؛ وتحتاج مدخلات الصور/الصوت/كائنات الملفات إلى ربط دقيق.
الباقات
مراجع التسعير لا تضيف خيارات للطلب. المعلمات المدعومة مذكورة للطريقة المحددة.
- الوضع السريع
- غير محدد عند اختيار الوضع السريع
- الوضع المرن
- غير محدد عند اختيار وضع flex
- أقصى جهد للاستدلال
- غير محدد عندما يُطبَّق الضبط الافتراضي default مع أقصى جهد للاستدلال
تعرفات Ailoot
الأسعار حسب الإعدادات
| الإعدادات | جدول التعرفة | الرسوم |
|---|---|---|
| الإعداداتالتعرفات الأساسية للرموز | جدول التعرفةالتعرفة الأساسية | الرسوم الإدخال · رموز الإدخال $0.000686 / 1K من الرموز الإخراج · رموز الإخراج $0.002744 / 1K من الرموز الإدخال · قراءة ذاكرة التخزين المؤقت $0 / 1K من الرموز الإدخال · الكتابة إلى ذاكرة التخزين المؤقت $0 / 1K من الرموز الإدخال · الكتابة إلى ذاكرة التخزين المؤقت، 1 ساعة — / 1K من الرموز |
تحجز Ailoot مبلغًا تقديريًا قبل الطلب. وبعد ظهور النتيجة، تُسوّي الرسوم النهائية بناءً على الاستخدام المقاس. وتستخدم تسوية البث سجل الاستخدام النهائي. كيفية عمل حجز المبلغ وتسوية الرسوم →
أمثلة للطلبات
Ailoot Ultra · محادثة OpenAI
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model":"qwen-max-latest","messages":[{"role":"user","content":"hello"}],"stream":false}')
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="qwen-max-latest", messages=[{"role":"user","content":"hello"}], stream=False)
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"))
استلام النتائج وحفظها
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 qwen-max-latest
الأسماء البديلة لمسارات الطرائق
/chat/completions
معرّفات النماذج ذات الصلة IDs
Ailoot Ultra · رسائل Anthropic POST /v1/messages qwen-max-latest
qwen-max-latestالبداية
Qwen-Max نموذج نصي للمحادثات متعددة اللغات والاستدلال المنطقي والبرمجة وإنشاء المحتوى. يجمع اتباع التعليمات التفصيلية مع إخراج موجّه إلى JSON وتحكم في أسلوب الرد.
- المدخلات المقبولة
- النص
- النتائج
- json · sse
متاح في Ailoot · المدخلات والطرائق
Ailoot Ultra · رسائل Anthropic POST /v1/messages
- الإدخال
text- الإخراج
json,sse- صيغة الإخراج
- JSON أو SSE
| الحقل | النوع | المتطلب | القيم والحدود | القيمة الافتراضية |
|---|---|---|---|---|
الحقلmodel | النوعstring | المتطلبمطلوب | القيم والحدود qwen-max-latest | القيمة الافتراضية— |
الحقل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 مع أقصى جهد للاستدلال
تعرفات Ailoot
الأسعار حسب الإعدادات
| الإعدادات | جدول التعرفة | الرسوم |
|---|---|---|
| الإعداداتالتعرفات الأساسية للرموز | جدول التعرفةالتعرفة الأساسية | الرسوم الإدخال · رموز الإدخال $0.000686 / 1K من الرموز الإخراج · رموز الإخراج $0.002744 / 1K من الرموز الإدخال · قراءة ذاكرة التخزين المؤقت $0 / 1K من الرموز الإدخال · الكتابة إلى ذاكرة التخزين المؤقت $0 / 1K من الرموز الإدخال · الكتابة إلى ذاكرة التخزين المؤقت، 1 ساعة — / 1K من الرموز |
تحجز Ailoot مبلغًا تقديريًا قبل الطلب. وبعد ظهور النتيجة، تُسوّي الرسوم النهائية بناءً على الاستخدام المقاس. وتستخدم تسوية البث سجل الاستخدام النهائي. كيفية عمل حجز المبلغ وتسوية الرسوم →
أمثلة للطلبات
Ailoot Ultra · رسائل Anthropic
{
"model": "qwen-max-latest",
"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': 'qwen-max-latest', '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': 'qwen-max-latest', '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 qwen-max-latest
الأسماء البديلة لمسارات الطرائق
/chat/completions
معرّفات النماذج ذات الصلة IDs
FAQ · qwen-max
- ما المدخلات والنتائج المتاحة؟
POST /v1/chat/completions·qwen-max-latest:text→textPOST /v1/messages·qwen-max-latest:text→json,sse- ما الحقول التي يستخدمها الطلب؟
POST /v1/chat/completions·qwen-max-latest:model,messages,streamPOST /v1/messages·qwen-max-latest:model,messages,max_tokens,stream- ما الحدود المطبقة؟
POST /v1/chat/completions·qwen-max-latest:messages.min_items:1