API

مولّد شيفرة API

اختر لغة ومهمة للحصول على شيفرة تتبع توثيق Reflection، بما في ذلك التفاصيل التي تختلف عن OpenAI.

Beam-501B-A23B
اللغة
reasoning_effort
القيمة الفارغة تعني استخدام القيمة الافتراضية لـ API. تُحتسب الرموز المستخدمة في الاستدلال ضمن هذا الحد.

التثبيت ومفتاح API

bash
pip install openai
export REFLECTION_API_KEY="<your API key>"

الشيفرة

main.py
import os
from openai import OpenAI

client = OpenAI(
    base_url="https://api.reflection.ai/openai/v1",
    api_key=os.environ["REFLECTION_API_KEY"],
)

messages = [
    {"role": "user", "content": "Write a short poem about sparse experts."},
]

stream = client.chat.completions.create(
    model="Beam-501B-A23B",
    messages=messages,
    reasoning_effort="medium",
    stream=True,
    stream_options={"include_usage": True},
)

for chunk in stream:
    if not chunk.choices:  # the last chunk carries only usage
        print("\n", chunk.usage)
        continue
    delta = chunk.choices[0].delta
    reasoning = getattr(delta, "reasoning_content", None)
    if reasoning:
        print(reasoning, end="", flush=True)
    if delta.content:
        print(delta.content, end="", flush=True)
يُبث الاستدلال أولًا في delta.reasoning_content، ثم الإجابة في delta.content. يضيف include_usage مقطعًا أخيرًا يتضمن أعداد الرموز.

دعم المعلمات

مدعوم
  • model، messages مع الأدوار system وdeveloper وuser وassistant وtool
  • reasoning_effort: low, medium, high, xhigh, max
  • stream وstream_options.include_usage
  • tools وtool_choice وparallel_tool_calls
  • response_format: json_object وjson_schema، مع strict
  • temperature وtop_p وfrequency_penalty وpresence_penalty وseed وmax_completion_tokens
غير مدعوم
  • مدخلات الصور والصوت والملفات
  • أي قيمة لـ n غير 1، وlogprobs وlogit_bias
  • تؤدي user وmetadata وaudio وprediction إلى ظهور خطأ عند إرجاعها
  • يُقبل stop، لكنه لا يؤثر في النتيجة
  • واجهات برمجة التطبيقات Responses وEmbeddings وImages وAudio وFiles وBatch وAssistants

أخطاء يجدر التعامل معها

الحالة والرمزالمقصود
400 unsupported_valueقيمة reasoning_effort لا يقبلها النموذج، مثل none أو minimal.
400 missing_required_parameterأُرسلت رسالة سابقة من assistant من دون reasoning_content الخاص بها، أو أن json_schema مفقود.
401مفتاح API مفقود أو غير صالح.
429 rate_limit_exceededتم بلوغ الحد المسموح به في الدقيقة أو اليوم. انتظر مدة Retry-After.
503 inference_capacity_unavailableالسعة مستنفدة مؤقتًا. أعد المحاولة بعد مدة Retry-After.

المصادر: openai-compatibility · reasoning · tool-calling · structured-outputs · errors