On October 5 Reflection announced Beam, its first open-weight model. It is a sparse mixture-of-experts (MoE) model with 501B total and 23B active parameters, aimed at coding, reasoning and agentic work.

The docs say the developer platform is in beta, with access opening gradually through a waitlist, and that behavior and limits may change.

The announcement says the weights, technical report and model card will be released under the Apache 2.0 license this month. Until then, self-hosting is not possible.

What 1 million and 262,144 tokens each refer to

The announcement says midtraining extends Beam's effective context length to 1 million tokens.

The Models doc, however, lists Beam-501B-A23B with a context_length of 262,144 tokens and max_output_tokens of 131,072. A footnote says the context window may change during the beta.

context_length counts the prompt and the generated output together. A longer request is rejected, not truncated.

An output budget that includes reasoning

max_completion_tokens is the generation limit covering both visible output and reasoning tokens. The prompt plus this value should fit within context_length.

If a request sets no limit, the organization's default (default_parameters.max_tokens) applies, and it is not reduced to fit the prompt. The API reference therefore says a long prompt must send its own limit.

Compatibility limits and accept-only parameters

The OpenAI-compatible endpoint implements only Chat Completions and Models. Other endpoints such as Responses, Embeddings, Files and Batch are not supported, and message input is text only.

stop accepts one to four non-empty strings but does not stop generation at them. The docs say to truncate the text in your own code if output must end at a sequence.

seed also has no effect, so repeated requests can return different results. Parameters such as n and logprobs accept only fixed values, and anything else returns a 400 error (unsupported_value).

Always-on reasoning and empty answers

Beam always reasons, and reasoning_effort selects low, medium, high, xhigh or max. There is no value such as none that turns reasoning off.

When a request omits the effort, a default that can differ by organization applies. The actual default is reported in reasoning.default_effort from the Models endpoints.

If max_completion_tokens is too low, the model can run out of tokens while reasoning, returning finish_reason length with content possibly null.

In multi-turn requests, every assistant message must include the reasoning_content it came with, unchanged. Leaving it out returns a 400 error (missing_required_parameter).

Caveats: compute estimates are not deployment cost

Reflection claims Beam uses 3–4× less inference compute than GLM-5.2 on advanced reasoning benchmarks. The announcement itself says the estimate excludes prompt prefill, context-dependent attention operations and serving overhead.

So the figure cannot predict real deployment cost. The API details in this article come from reading the docs, not from calling Beam.

Requests to include in a first integration test

A first test can put long conversation history, delimiter-dependent responses, a tight generation budget and multi-turn tool calls into a small representative task.

Looking at what the application received and how it recovered, rather than whether the request succeeded, surfaces the assumptions to fix before wider testing.

When moving to the Beam beta API, what really decides the outcome is the service contract—the 262,144-token limit, the ignored stop and the required reasoning_content—more than model performance.