テック技報最新号へ →
AIコーディング

Claude API: message threads で「毎回会話を全部送る」をやめる(create → continue、5分で失効)

2026-11-02 にパブリックベータになった message threads を使うと、2回目以降のリクエストは新しいメッセージだけ送ればよい。サーバーが前回までの会話を覚えているので、長い会話ほど送るデータと最初のトークンまでの待ち時間が減る。料金とトークン数は変わらない。

@ClaudeDevs · 投稿 2026-11-02
#ai-coding#claude-api#レイテンシ#エージェント開発

どんな時に使う?

  • 自前のエージェントや Agent SDK 風のループで、毎ターン数百 KB〜数 MB の会話履歴を送り直している
  • 500K〜1M トークン級の長い文脈で、最初の1トークンが出るまで(TTFT)が遅い

手順

  1. ヘッダーに anthropic-beta: message-threads-2026-08-12 を付ける
  2. 最初のリクエストは今までどおり会話全体・system・tools を送り、"thread": {"type": "create"} を足す
  3. 返ってきたメッセージの id(msg_...)を覚えておく
  4. 次からは "thread": {"type": "continue", "previous_message_id": "msg_..."} と、新しいメッセージだけを送る。system と tools は省く
json
{
  "model": "MODEL_ID",
  "max_tokens": 4096,
  "thread": { "type": "continue", "previous_message_id": "msg_01ABC..." },
  "messages": [
    { "role": "user", "content": [{ "type": "tool_result", "tool_use_id": "toolu_...", "content": "ok" }] }
  ]
}
  • 公式 SDK にはヘルパーがあり、失効時の送り直しも自動でやってくれる

注意点

  • スレッドは最後のリクエストから 5分 で失効し、1時間以内に消される。失効後の continue は 404 になるので、手元に会話全体を持っておき、create で送り直す(SDK を使わない場合は自分で書く)
  • トークン数と料金は変わらない。速くなるのは転送と前処理の部分だけ。コストを下げたいならプロンプトキャッシュを使う
  • 使えるのは Claude API・AWS・Google Cloud(Anthropic 管理)・Foundry。ベータなのでヘッダー名や挙動が変わる可能性がある
  • Claude Code はすでに使っている。Anthropic によると 500K〜1M トークンのリクエストで TTFT の中央値が約35%下がり、リクエストサイズの中央値は約 800KB から 1.8KB になった

出典

X の元の投稿を開く