コンテンツへスキップ
reflectionbeam

使い方

今すぐBeamを使う

Beamは段階的にベータ提供されています。現時点で利用できる方法、OpenAI互換APIの動作するコード、オープンウェイト公開後に変わることをすべて紹介します。

今すぐ利用できる方法

ゼロから最初のリクエストまで

  1. 01

    ウェイトリストに参加

    platform.reflection.aiでアカウントを作成してください。新規登録後は、アクセスが有効になるまでお待ちいただく必要があります。

  2. 02

    APIキーを作成

    プラットフォームで「API Keys」を開き、キーを作成します。REFLECTION_API_KEY環境変数に保存してください。

  3. 03

    クライアントの接続先をReflectionに設定

    任意のOpenAI SDKでベースURL https://api.reflection.ai/openai/v1 とモデル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より難しい問題向けに、推論を強化します。
xhighhighよりもさらに推論を強化します。
max最も難しい問題向けに、推論を最大限に行います。

推論トークンは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 sequences は受け付けられますが、効果はありません

レート制限

制限は組織ごとに適用され、1分あたりおよびUTC日単位のリクエスト数とトークン数に加え、同時リクエスト数にも上限があります。いずれかの上限を超えると、Retry-After ヘッダー付きの HTTP 429 が返されます。日次制限は 00:00 UTC にリセットされます。Reflection は、上限引き上げの申請方法をまだ公開しておらず、ベータ版の公開価格表もありません。

コーディングエージェント

Mirror CLI はAPIキーだけで Beam に接続できます。Pi、OpenCode、Hermes は、OpenAI互換のプロバイダー設定で利用できます。base URL は https://api.reflection.ai/openai/v1、model は Beam-501B-A23B、key は 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によると、現在、連携機能とローンチパートナーの準備を進めています。メモリはかなり必要です。トークンごとにアクティブになるのは230億パラメータですが、5010億パラメータすべてをGPUメモリに載せる必要があります。KVキャッシュを除くと、BF16で約1 TB、FP8で500 GB、4ビットで250 GBです。