API
API kodu oluşturucu
Reflection'ın belgelerini izleyen, OpenAI'dan farklılıkları da içeren kodu almak için bir dil ve görev seçin.
Beam-501B-A23B
Dil
reasoning_effort
Boş bırakılırsa API varsayılanı kullanılır. Akıl yürütme bu sınıra dahildir.
Kurulum ve anahtar
bash
pip install openai
export REFLECTION_API_KEY="<your API key>"Kod
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)Akışta önce delta.reasoning_content, sonra delta.content gelir. include_usage, token sayılarını içeren son bir parça ekler.
Parametre desteği
Destekleniyor
- model, system, developer, user, assistant ve tool rollerini içeren messages
- reasoning_effort: low, medium, high, xhigh, max
- stream ve stream_options.include_usage
- tools, tool_choice, parallel_tool_calls
- strict ile response_format: json_object ve json_schema
- temperature, top_p, frequency_penalty, presence_penalty, seed, max_completion_tokens
Desteklenmiyor
- Görsel, ses ve dosya girdileri
- 1 dışında n değerleri, logprobs, logit_bias
- user, metadata, audio ve prediction hata döndürür
- stop kabul edilir ancak etkisi olmaz
- Responses, Embeddings, Images, Audio, Files, Batch ve Assistants API'leri
İşlemeye değer hatalar
| Durum ve kod | Anlamı |
|---|---|
| 400 unsupported_value | Modelin kabul etmediği bir reasoning_effort değeri; örneğin none veya minimal. |
| 400 missing_required_parameter | Önceki bir assistant mesajı reasoning_content olmadan gönderildi veya json_schema eksik. |
| 401 | API anahtarı eksik veya geçersiz. |
| 429 rate_limit_exceeded | Dakikalık ya da günlük bir limite ulaşıldı. Retry-After süresi kadar bekleyin. |
| 503 inference_capacity_unavailable | Kapasite geçici olarak tükendi. Retry-After süresinden sonra yeniden deneyin. |
Kaynaklar: openai-compatibility · reasoning · tool-calling · structured-outputs · errors