10月14日、AWSが「Build long-horizon agents with Grok 4.7 on Amazon Bedrock」と題した記事を公開した。推論努力レベルをxhighに設定したGrok 4.7は18タスク全問正解を達成した一方、low設定では出力トークン数が約1/8に抑えられ処理時間も中央値18秒と大幅に短縮される——同記事はこの精度とコストのトレードオフを、long-horizonエージェントの構築手順とともに詳しく紹介している。
「long-horizon」タスクとは何か
記事のタイトルにも登場するlong-horizonとは、単一のプロンプトへの一発回答ではなく、「情報収集→仮説生成→検証→再探索」というサイクルを何度も繰り返す、複数ステップにわたる自律的な作業を指す。ツール呼び出しを何十回も行い、途中で戦略を修正しながら最終的な答えに辿り着く、従来のチャット型AIとは根本的に異なるユースケースだ。コーディングエージェント、法務調査、インフラ診断といった「数分〜数時間かかる現実の作業」がその代表例である。
「推論努力レベル」が選べるモデル
xAI(イーロン・マスク率いるAI企業)が開発したGrok 4.7が、Amazon Bedrockで利用可能になった。前バージョンのGrok 4.6よりも大きいベースモデルを使用し、強化学習の訓練データも「数時間かかる難タスク」に重み付けされているとxAIは説明している。なお本記事で扱うモデルIDはgrok-4.7であり、元記事URLおよびAPI上の型番表記はいずれもこのバージョンを指している。
Grok 4.7の特徴的な機能がreasoning effort(推論努力)設定だ。low・medium・high・xhighの4段階で、レスポンス前にどれだけ熟慮させるかを制御できる。エージェントワークロードでは、この設定が精度とコストのトレードオフを直接左右する。
xAIが公開しているベンチマーク結果は以下の通り:
| ベンチマーク | カテゴリ | Grok 4.6 | Grok 4.7 |
|---|---|---|---|
| Terminal-Bench 4.0 | 複数時間のターミナル作業 | 20.3% | 37.6% |
| EEBench | 電気工学 | 53.0% | 64.0% |
| Harvey Legal Agent Benchmark | 法務作業 | 15.8% | 19.6% |
| CursorBench 4.0 | 長時間コーディング | 40.4% | 46.3% |
| HealthBench Professional | 臨床推論 | 48.5% | 56.7% |
いずれも「単発の回答」より「持続的な作業」を測るカテゴリで大きく改善している。
18タスク×4レベル、72回の実験で見えたトレードオフ
記事の核心は、実際にエージェントを動かした評価結果だ。3種類のタスク×6試行×4レベル=72回のエージェント実行を行い、各設定の正答率・出力トークン数・処理時間を計測している。
タスク設計
単純な検索・集計ではなく、「提案して検証する」探索が必要なタスクを3種類用意している:
- two_fault_diagnosis:20サービスのうち、アラートを出さずに無音で落ちた2サービスを特定(候補ペアは190通り)
- maintenance_schedule:8サービスを4夜に分けてパッチ適用、10個の制約+チームルール付きのスケジューリング問題
- migration_budget:依存関係(前提条件の連鎖)を考慮しつつ予算内でリスク低減を最大化するマイグレーション候補を選択
いずれも「正解が一意に定まる」タスクで、総当たり検証済み。ヒューリスティックな近似解では正解に辿り着けない設計になっている。
結果
| タスク | low | medium | high | xhigh |
|---|---|---|---|---|
| two_fault_diagnosis | 5/6 | 6/6 | 6/6 | 6/6 |
| maintenance_schedule | 5/6 | 5/6 | 5/6 | 6/6 |
| migration_budget | 5/6 | 6/6 | 6/6 | 6/6 |
| 合計 | 15/18 | 17/18 | 17/18 | 18/18 |
| 指標 | low | medium | high | xhigh |
|---|---|---|---|---|
| 平均出力トークン数 | 1,184 | 6,430 | 6,778 | 9,147 |
| lowとの比較 | 1.0x | 5.4x | 5.7x | 7.7x |
| 平均ツール呼び出し回数 | 17.2 | 18.7 | 17.8 | 18.1 |
| 中央値の経過時間 | 18秒 | 98秒 | 89秒 | 106秒 |
3つの重要な観察
① xhighは全問正解。18回すべてで正解。medium・highは17/18で、差は1問にとどまった。
② 努力レベルが変えるのは「探索量」ではなく「推論量」。ツール呼び出し回数はどの段階でもほぼ横ばい(17.2〜18.1回)。同じデータを集めた上で、その解釈にかける推論が増える。出力トークン数だけがlowからxhighで約7.7倍に膨らむ。
③ lowはコスト効率が高い。正答率は83%(15/18)だが、出力トークン量はxhighの約1/8、処理時間は中央値18秒。下流でのレビューが入るユースケースや、完璧な精度が必須でない場面ではlowが現実的な選択肢になる。
接続方法とポイント
Amazon Bedrockでは2つのクロスリージョン推論プロファイルが利用可能だ:
- **
us.xai.grok-4.7**:US地理的範囲内でルーティング(データレジデンシー要件がある場合) - **
global.xai.grok-4.7**:商用AWSリージョン全体(容量を最大化したい場合)
認証はIAM認証情報から短期トークンを生成するOpenAI互換クライアント経由が推奨されている。以下のコードで基本的なクライアントを構成できる:
from aws_bedrock_token_generator import provide_token
from openai import OpenAI
REGION = "us-west-2"
MODEL_ID = "us.xai.grok-4.7"
client = OpenAI(
api_key=provide_token(region=REGION),
base_url=f"https://bedrock-runtime.{REGION}.amazonaws.com/openai/v1",
timeout=360,
max_retries=0,
)
reasoning effortのレベルはモデルバージョンによって変わり得るため、ハードコードせず動的に確認することが推奨されている。以下のようにunsupported_valueエラーを捕捉してサポート済みレベルの一覧を取得できる(実行結果は['low', 'medium', 'high', 'xhigh']):
def supported_effort_levels(candidates=("none", "low", "medium", "high", "xhigh", "max")):
supported = []
for level in candidates:
try:
client.responses.create(model=MODEL_ID, input="Say OK.",
reasoning={"effort": level}, max_output_tokens=2048)
supported.append(level)
except Exception as exc:
if "unsupported_value" not in str(exc) and "invalid_value" not in str(exc):
raise
return supported
実装上の注意点として、reasoning(推論)トークンも出力トークンとしてカウントされ、max_completion_tokensを消費する点が挙げられる。上限に達すると回答テキストなしで返ってくるため、エージェントコードで空コンテンツの検出処理を入れておく必要がある。記事では上限を32,768トークンに設定している。コンテキストウィンドウは50万トークンで、テキスト・画像を入力として受け付ける。Amazon Bedrock Converse APIではreasoning結果がreasoningContentブロックとして返される。
詳細はBuild long-horizon agents with Grok 4.7 on Amazon Bedrockを参照していただきたい。




