Introduction
Beam 1.0 from Reflection supports coding and long-running tool workflows. This chat API accepts text, provides a 1,048,576-token input budget and accepts max_tokens up to 943,718. Stream Beam 1.0’s text as it arrives, or let a function-call result supply the evidence for the next step in long coding sessions with Beam 1.0.
| Field | Value |
|---|---|
| Input | Text |
| Output | Text |
| Input budget | 1,048,576 tokens |
| max_tokens ceiling | 943,718 |
| Inputs | text |
Key features & highlights
Open weights, hosted as an API
Beam's weights are publicly released, so the model you call here is one you could also run or fine-tune yourself if your needs change. Reflection AI describes it as an open model for commercial and research use. This endpoint is the quick route: no GPUs to provision, usage billed by the token, and the same chat completions request you already write.
Aimed at real repositories
Reflection AI's model card focuses on resolving real GitHub issues, working in command-line and DevOps settings, and plugging into agentic coding harnesses. It publishes a SWE-Bench Verified score of 81.6% and a Terminal Bench v2.1 score of 80.1%. Those are the publisher's own numbers on its own setup, so treat them as a reason to test it on your repository, not as a guarantee.
Tool calls and long-horizon tasks
The model returns function calls that your application validates and runs, then continues from the tool messages you send back. tool_choice accepts a string or an object here, and parallel_tool_calls is on by default. Reflection AI highlights MCP-style tool use and multi-step tasks, which fits agent loops that read files, run tests and iterate.
Fewer reasoning tokens by design
Reflection AI says Beam reaches comparable solution quality with about three times fewer reasoning tokens than leading open models. If that holds for your workload, it shows up directly as lower output cost, since reasoning is billed as output. It is a publisher claim, so measure token counts on your own prompts at medium and high effort.
Request parameters
| Parameter | Required | Description |
|---|---|---|
messages | Yes | For long coding sessions with Beam 1.0, supply the conversation and the evidence as text in order, and connect each tool result to its original |
max_tokens | No | Budget Beam 1.0’s visible answer and billable reasoning together in |
reasoning_effort | No | Beam 1.0 exposes low, medium, high, xhigh, max, starting at medium; compare effort settings on long coding sessions with Beam 1.0 because deeper reasoning can increase output to… |
stop | No | End Beam 1.0’s generated text at one supplied stop sequence or any of up to four; the matching sequence itself is left out of the answer. at least 1 characters · at least 1 items · at most 4 items |
temperature | No | Beam 1.0 accepts temperature from 0 to 2; keep other sampling controls steady when comparing wording for long coding sessions with Beam 1.0. |
top_p | No | Use |
tools | No | Give Beam 1.0 OpenAI-format function definitions for long coding sessions with Beam 1.0; the model proposes arguments and your application validates and executes the operation. at most 128 items |
parallel_tool_calls | No | Allow Beam 1.0 to propose independent function calls together when long coding sessions with Beam 1.0 needs more than one external result. Default: |
tool_choice | No | Choose auto, none, required or a specific function for Beam 1.0, then preserve the returned call ID when continuing long coding sessions with Beam 1.0. |
response_format | No | Ask Beam 1.0 for text or structured JSON, then validate the JSON fields needed for long coding sessions with Beam 1.0 before your application uses them. |
Pricing
Input $1 / Output $3 per 1 million tokens
Use cases
Resolve an issue across a repository
Give the model the issue text, the relevant files and the failing test output, and ask for a minimal patch plus the command that proves it works. The 1,048,576-token window lets you include whole modules instead of excerpts. Review the diff and run the tests yourself before merging.
Agent loops in the terminal
Wire the model to shell, file and test tools and let it iterate: inspect, edit, run, read the output. Keep the history in the message list, cap the number of turns, and log every tool call so a run can be replayed when something goes wrong.
Cost-sensitive batch coding work
For bulk jobs such as adding type annotations, writing tests for many modules or migrating a deprecated API, a model that spends fewer reasoning tokens helps. Start at low or medium effort, sample a few results by hand, and raise the setting only for the cases that fail.
Reasoning and math problem sets
Reflection AI publishes results on AIME 2026 and GPQA Diamond, so it is a reasonable candidate for structured reasoning tasks. Ask for the answer and the key steps separately, and verify final numbers with code when a wrong answer is costly.
Prompt guide & pro tips
Send a chat request
Use the chat completions endpoint with a model name and a messages array of plain text. This model is text-only, so convert images or documents to text before sending. Set stream to true when you expect long replies.
Pick effort and a
max_tokenscapThe default effort is medium. Move to high or above for hard multi-step bugs, and down to low for routine edits. Reasoning counts toward
max_tokens, so leave headroom or the cap can end the reply before the visible answer.Define tools and return results
Pass JSON-schema tools, let the model choose, and answer each tool call with a tool message that carries the same
tool_call_id. Keepreasoning_contentfrom earlier assistant turns in the history when you continue a tool conversation.Compare against your current model
Run the same ten real tasks through Beam and your current model, and compare pass rate, output tokens and latency. The estimate on this page shows the cost per request, so you can price the difference before moving traffic.
Repository work with Beam
Give Beam 1.0 the issue, the relevant modules and the failing test output together. Its text-only input budget is 1,048,576 tokens; that space is useful for retaining the implementation around a bug, rather than giving the agent only a stack trace.
Carry the agent session forward
Begin with medium reasoning effort. Keep earlier function calls, their tool_call_id values and reasoning_content when continuing the session. Your application executes file or test operations and sends back the actual output; Beam does not inspect a repository merely because you mention its name.
Review a complete patch
Ask for the changed code and a verification command. Count reasoning inside max_tokens, check the finish reason and run the proposed tests before merging. Reflection’s benchmark scores describe its own evaluation setup; your repository determines whether the patch works.
Beam 1.0’s own content decisions still apply during long coding sessions with Beam 1.0; NSFW responses may change with the request or model version, so unrestricted output is not promised.
API quick start
curl --fail-with-body -sN https://api.spicyapi.ai/v1/chat/completions \
-H "Authorization: Bearer $SPICY_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $(uuidgen)" \
-d '{
"model": "reflection/beam-1.0/chat",
"messages": [
{
"role": "user",
"content": "Summarise the following release notes into three bullet points."
}
],
"stream": true
}' \
| jq --unbuffered -Rrj 'select(startswith("data: ")) | .[6:] | select(. != "[DONE]") | fromjson | if .error then "\n[error] \(.error.message)\n" else (.choices[0].delta.content? // empty) end'
See the API reference for authentication, the complete schema, polling, and error handling.
