要点
APIYI のデフォルトの Claude グループは公式 AWS Claude (Amazon Bedrock) にルーティングされ、AWS 自体は Claude のネイティブウェブ検索をサポートしていません — これはゲートウェイ設定の問題ではなく、Bedrock のアーキテクチャ上の制約です。ウェブアクセスを得るには、2つの選択肢があります:なぜデフォルトグループではサポートされないのですか?
Claude のweb_search / web_fetch は サーバーサイドのツール です。検索は Anthropic 独自のサーバーインフラで実行されます。AWS Bedrock はモデル推論のみを提供しており、そのような検索バックエンドはないため、Bedrock インターフェースはバリデーション層でこれらのツールを拒否します。Bedrock のツールタイプの許可リストに含まれるのは、クライアントサイドのツールのみです。
mcp_servers パラメータ) もサーバーサイド機能であり、デフォルトグループではサポートされません。
オプション 1: ClaudeOfficial ベータグループ(ネイティブ web_search)
APIYI には ClaudeOfficial(Anthropic の公式チャネルに直接接続)というベータグループがあり、Claude のネイティブweb_search / web_fetch ツールをサポートしています。
- 有効化方法: カスタマーサポートに連絡して、キーを ClaudeOfficial グループに追加してもらってください
- 安定性の注意: これはベータグループのため、デフォルトグループより安定性が低くなります — 重要なワークロードではフォールバックを用意してください(オプション 2 をフォールバックとして使うとよいです)
リクエスト例
オプションパラメータ:
max_uses(検索回数を制限します)、allowed_domains / blocked_domains(ドメインフィルタリング)。
検索が実際に実行されたかを確認する方法
成功したレスポンスにはserver_tool_use と web_search_tool_result のブロックが content に含まれ、回答テキスト内に引用があり、usage にカウンターフィールドがあります:
text ブロックしかなく、usage に server_tool_use がない場合、そのリクエストは検索対応チャネルに到達していません。
課金
- ツール名:
web_search,web_fetch - web_search: $10 / 1,000 searches($0.01 / search、
usage.server_tool_use.web_search_requestsによってカウントされます — 1 回の回答で複数回の検索が発生する場合があります)に加えて通常の token 料金がかかります。失敗した検索は課金されません - web_fetch: 呼び出しごとの料金はありません。取得したコンテンツは input token として課金されます
- web 対応 Q&A あたりの参考コスト(sonnet): 約 $0.02–0.08
Option 2: カスタム検索ツール(デフォルトグループで動作、実運用に推奨)
デフォルトグループ(Bedrock)は、標準の関数呼び出し(カスタムツール)を完全にサポートしています。検索ツールを定義し、クライアント側で実際の検索(Tavily / Brave / Serper / Bing などの検索 API 経由)を実行して、その結果をモデルに返してください。テストでは、Claude が積極的にツールを呼び出し、中国語と英語の両方でクエリを書き換え、複数回の検索ラウンドの後に出典付きの回答を生成しました。完全な例(Python)
コストの参考
- モデルの token 料金: 1 回の複数ラウンド検索 Q&A では、おおよそ 10k 入力 + 1–2k 出力 tokens を使用します(Sonnet では約 $0.05)
- 検索 API 料金: Tavily の無料枠は月 1,000 回で、従量課金は 1 回あたり約 $0.008、Brave は 1,000 回あたり $3 です。いずれも公式 web_search と同程度の水準です
- メリット: チャネル非依存で、検索ソースを制御・キャッシュ可能であり、デフォルトグループの安定性とキャッシュ課金のメリットも維持できます
発展編: MCP 検索ソース
すでに MCP エコシステム(例: Tavily MCP、Brave MCP)を使っている場合は、クライアント側で MCP サーバーに接続し、そのツールを上記のカスタムツールへ変換してください。原理は同じです。注意: リクエスト内でmcp_servers パラメータを直接渡す方法(サーバー側 MCP)は、デフォルトグループでは利用できません。
FAQ
Q: デフォルトグループにweb_search ツールを送信したのにエラーが出ませんでした。これはサポートされているということですか?
A: いいえ。デフォルトグループはサーバーツールを問題なく処理しますが、無視します。リクエストは 200 を返しますが、検索は実行されません。確認するには、レスポンス content に server_tool_use ブロックが含まれているか、また usage に server_tool_use.web_search_requests フィールドがあるかを確認してください。なければ、検索は実行されていません。
Q: mcp_servers パラメータを渡すのはどうですか?
A: これもサポートされていません(これは Anthropic のサーバーサイド機能でもあります)。重要: この場合、モデルが回答本文に見た目だけもっともらしい「ツール結果」テキストを生成することがありますが、それは幻覚であり、実データではありません。依存しないでください。
Q: 2 つの विकल्पはどうやって選べばよいですか?
A: 本番環境では、Option 2(安定的で制御しやすい)を優先してください。Anthropic のネイティブな検索品質や引用形式が必要な場合、または自前で検索を実装したくない場合は、カスタマーサポートに連絡して ClaudeOfficial ベータグループを有効化してください。そして、フォールバックを用意しておいてください。
関連ドキュメント
Claude API の基本
チャネル、モデル一覧、セットアップ、課金の基本
Claude プロンプトキャッシュ
複数ターンの検索 Q&A はキャッシュと相性がよく、大幅なコスト削減につながります