跳至内容
reflectionbeam

使用方法

今天如何使用 Beam

Beam 正处于逐步开放的 beta 阶段。以下介绍目前所有访问方式、可用于兼容 OpenAI 的 API 的代码,以及开放权重发布后会有哪些变化。

目前可选方式

从零开始,发出第一个请求

  1. 01

    加入候补名单

    在 platform.reflection.ai 上创建账户。新注册用户需要等待访问权限开通。

  2. 02

    创建 API 密钥

    在平台中打开 API Keys 并创建密钥。将其存储在 REFLECTION_API_KEY 环境变量中。

  3. 03

    将客户端指向 Reflection

    使用基础 URL https://api.reflection.ai/openai/v1 搭配任何 OpenAI SDK,并指定模型 ID Beam-501B-A23B。

  4. 04

    发送 Chat Completions 请求

    照常调用 Chat Completions。也可以设置 reasoning_effort,在速度和推理深度之间进行权衡。

代码示例

该端点遵循 OpenAI Chat Completions 格式,因此只需更改基础 URL 和密钥,官方 OpenAI SDK 即可使用。

首次请求

curl https://api.reflection.ai/openai/v1/chat/completions \
  -H "Authorization: Bearer $REFLECTION_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "Beam-501B-A23B",
    "messages": [{"role": "user", "content": "Explain Mixture-of-Experts in two sentences."}],
    "reasoning_effort": "medium"
  }'

流式传输

stream = client.chat.completions.create(
    model="Beam-501B-A23B",
    messages=[{"role": "user", "content": "Write a haiku about sparse experts."}],
    stream=True,
)

for chunk in stream:
    delta = chunk.choices[0].delta
    # reasoning arrives first in delta.reasoning_content, then the answer in delta.content
    if delta.content:
        print(delta.content, end="", flush=True)

环境变量

export REFLECTION_API_KEY="<your API key>"

# Tools that read the standard OpenAI variables and use Chat Completions
export OPENAI_BASE_URL="https://api.reflection.ai/openai/v1"
export OPENAI_API_KEY="$REFLECTION_API_KEY"

# Check which models your key can use
curl https://api.reflection.ai/openai/v1/models -H "Authorization: Bearer $REFLECTION_API_KEY"

推理力度

Beam 始终会进行推理,无法将其关闭。reasoning_effort 参数用于控制推理量,默认值为 medium。

值行为
low推理量最少,延迟最低。适用于简单任务。
medium在质量和延迟之间取得平衡。省略该参数时使用此值。
high针对较难的问题进行更多推理。
xhigh比 high 进行更多推理。
max推理量最大,适用于最难的问题。

推理 token 计入 max_completion_tokens 和速率限制。如果限制过低,模型可能在仍进行推理时耗尽额度,并以 finish_reason "length" 返回空答案。推理文本会单独通过 reasoning_content 返回。

支持什么,不支持什么

支持

  • POST /chat/completions、GET /models、GET /models/{model}
  • 支持流式传输,包括最后一个数据块中的用量信息
  • 支持通过 tool_choice 和 parallel_tool_calls 调用工具
  • 支持结构化输出:json_object 和 json_schema
  • temperature、top_p、frequency_penalty、presence_penalty、max_completion_tokens、seed
  • 支持 system、developer、user、assistant 和 tool 角色

不支持

  • Responses、Embeddings、Images、Audio、Files、Batch 和 Assistants API
  • 图像、音频或文件输入:Beam 仅支持文本
  • n 不等于 1、logprobs、logit_bias
  • user、metadata、audio 或 prediction 等参数(使用这些参数会返回错误)
  • stop 序列会被接受,但不会生效

速率限制

限制按组织计算,涵盖每分钟请求数和令牌数、每日 UTC 请求数,以及并发请求上限。超出任一限制都会返回 HTTP 429,并附带 Retry-After 标头。每日限制于 00:00 UTC 重置。Reflection 尚未公布如何申请提高限制,测试版也没有公开价格表。

编程代理

Mirror CLI 只需 API 密钥即可连接 Beam。Pi、OpenCode 和 Hermes 可通过各自兼容 OpenAI 的提供方设置接入:基础 URL 为 https://api.reflection.ai/openai/v1,模型为 Beam-501B-A23B,密钥取自 REFLECTION_API_KEY。Mirror 不支持原生 Windows。

curl -fsSL https://raw.githubusercontent.com/reflection-oss/mirror-beta/main/install.sh | bash

cd your-project
mirror        # uses Reflection and Beam-501B-A23B by default

自行运行 Beam

权重发布后,Beam 可以通过开源引擎运行;Reflection 表示正在推进集成并寻找首发合作伙伴。请预留充足的内存:全部 5010 亿个参数都必须驻留在 GPU 内存中,尽管每个 token 仅激活 230 亿个参数。仅权重就约需 1 TB(BF16)、500 GB(FP8)或 250 GB(4-bit),还不包括 KV 缓存。