API
API-codegenerator
Kies een taal en een taak voor code die de documentatie van Reflection volgt, inclusief de verschillen met OpenAI.
Beam-501B-A23B
Taal
reasoning_effort
Leeg betekent de standaardwaarde van de API. Redeneringen tellen mee voor deze limiet.
Installatie en API-sleutel
bash
pip install openai
export REFLECTION_API_KEY="<your API key>"Code
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)De redenering wordt eerst gestreamd in delta.reasoning_content, daarna het antwoord in delta.content. include_usage voegt een laatste chunk met tokentellingen toe.
Parameterondersteuning
Ondersteund
- model, messages met de rollen system, developer, user, assistant en tool
- reasoning_effort: low, medium, high, xhigh, max
- stream en stream_options.include_usage
- tools, tool_choice, parallel_tool_calls
- response_format: json_object en json_schema, met strict
- temperature, top_p, frequency_penalty, presence_penalty, seed, max_completion_tokens
Niet ondersteund
- Invoer van afbeeldingen, audio en bestanden
- n anders dan 1, logprobs, logit_bias
- user, metadata, audio en prediction geven een foutmelding
- stop wordt geaccepteerd, maar heeft geen effect
- De API's Responses, Embeddings, Images, Audio, Files, Batch en Assistants
Fouten die het afhandelen waard zijn
| Status en code | Betekenis |
|---|---|
| 400 unsupported_value | Een waarde voor reasoning_effort die het model niet accepteert, zoals none of minimal. |
| 400 missing_required_parameter | Er is een eerder assistant-bericht verzonden zonder de reasoning_content, of json_schema ontbreekt. |
| 401 | De API-sleutel ontbreekt of is ongeldig. |
| 429 rate_limit_exceeded | Een limiet per minuut of per dag is bereikt. Wacht op Retry-After. |
| 503 inference_capacity_unavailable | De capaciteit is tijdelijk uitgeput. Probeer het opnieuw na Retry-After. |
Bronnen: openai-compatibility · reasoning · tool-calling · structured-outputs · errors