ウェブ検索ツール
ウェブ検索ツールは、Claudeにリアルタイムのウェブコンテンツへの直接アクセスを提供し、知識のカットオフを超えた最新の情報で質問に答えることを可能にします。Claudeは回答の一部として検索結果からソースを自動的に引用します。
ウェブ検索ツールでの体験を共有するために、フィードバックフォームからお気軽にお問い合わせください。
サポートされているモデル
ウェブ検索は以下で利用可能です:
- Claude Opus 4.1 (
claude-opus-4-1-20250805
) - Claude Opus 4 (
claude-opus-4-20250514
) - Claude Sonnet 4 (
claude-sonnet-4-20250514
) - Claude Sonnet 3.7 (
claude-3-7-sonnet-20250219
) - Claude Sonnet 3.5 (new) (
claude-3-5-sonnet-latest
) - Claude Haiku 3.5 (
claude-3-5-haiku-latest
)
ウェブ検索の仕組み
ウェブ検索ツールをAPIリクエストに追加すると:
- Claudeはプロンプトに基づいて検索するタイミングを決定します。
- APIが検索を実行し、Claudeに結果を提供します。このプロセスは単一のリクエスト中に複数回繰り返される場合があります。
- ターンの最後に、Claudeは引用されたソースと共に最終的な回答を提供します。
ウェブ検索の使用方法
組織の管理者がConsoleでウェブ検索を有効にする必要があります。
APIリクエストでウェブ検索ツールを提供します:
ツール定義
ウェブ検索ツールは以下のパラメータをサポートします:
Max uses
max_uses
パラメータは実行される検索数を制限します。Claudeが許可された数を超えて検索を試行した場合、web_search_tool_result
はmax_uses_exceeded
エラーコードでエラーになります。
ドメインフィルタリング
ドメインフィルタを使用する場合:
- ドメインにはHTTP/HTTPSスキームを含めないでください(
https://example.com
の代わりにexample.com
を使用) - サブドメインは自動的に含まれます(
example.com
はdocs.example.com
をカバーします) - サブパスがサポートされています(
example.com/blog
) - 同じリクエストで
allowed_domains
またはblocked_domains
のいずれかを使用できますが、両方は使用できません。
リクエストレベルのドメイン制限は、Consoleで設定された組織レベルのドメイン制限と互換性がある必要があります。リクエストレベルのドメインは、ドメインをさらに制限することのみ可能で、組織レベルのリストを上書きまたは拡張することはできません。リクエストに組織設定と競合するドメインが含まれている場合、APIは検証エラーを返します。
ローカライゼーション
user_location
パラメータを使用すると、ユーザーの場所に基づいて検索結果をローカライズできます。
type
:場所のタイプ(approximate
である必要があります)city
:都市名region
:地域または州country
:国timezone
:IANAタイムゾーンID。
レスポンス
レスポンス構造の例は以下の通りです:
検索結果
検索結果には以下が含まれます:
url
:ソースページのURLtitle
:ソースページのタイトルpage_age
:サイトが最後に更新された日時encrypted_content
:引用のためにマルチターン会話で渡し戻す必要がある暗号化されたコンテンツ
引用
ウェブ検索では引用が常に有効になっており、各web_search_result_location
には以下が含まれます:
url
:引用されたソースのURLtitle
:引用されたソースのタイトルencrypted_index
:マルチターン会話で渡し戻す必要がある参照cited_text
:引用されたコンテンツの最大150文字
ウェブ検索の引用フィールドcited_text
、title
、url
は入力または出力トークン使用量にカウントされません。
エンドユーザーにウェブ結果またはウェブ結果に含まれる情報を表示する場合、インライン引用はユーザーインターフェースで明確に見えるようにし、クリック可能にする必要があります。
エラー
ウェブ検索ツールがエラー(レート制限に達するなど)に遭遇した場合でも、Anthropic APIは200(成功)レスポンスを返します。エラーは以下の構造を使用してレスポンスボディ内で表現されます:
可能なエラーコードは以下の通りです:
too_many_requests
:レート制限を超過invalid_input
:無効な検索クエリパラメータmax_uses_exceeded
:最大ウェブ検索ツール使用数を超過query_too_long
:クエリが最大長を超過unavailable
:内部エラーが発生
pause_turn
停止理由
レスポンスにはpause_turn
停止理由が含まれる場合があり、これはAPIが長時間実行されるターンを一時停止したことを示します。Claudeにターンを続行させるために、後続のリクエストでレスポンスをそのまま提供するか、会話を中断したい場合はコンテンツを変更することができます。
プロンプトキャッシュ
ウェブ検索はプロンプトキャッシュと連携します。プロンプトキャッシュを有効にするには、リクエストに少なくとも1つのcache_control
ブレークポイントを追加します。システムは、ツールを実行する際に最後のweb_search_tool_result
ブロックまで自動的にキャッシュします。
マルチターン会話では、キャッシュされたコンテンツを再利用するために、最後のweb_search_tool_result
ブロック上またはその後にcache_control
ブレークポイントを設定します。
例えば、マルチターン会話でウェブ検索とプロンプトキャッシュを使用するには:
ストリーミング
ストリーミングが有効になっている場合、ストリームの一部として検索イベントを受信します。検索実行中は一時停止があります:
バッチリクエスト
Messages Batches APIにウェブ検索ツールを含めることができます。Messages Batches APIを通じたウェブ検索ツール呼び出しは、通常のMessages APIリクエストと同じ価格で提供されます。
使用量と価格
Web search usage is charged in addition to token usage:
Web search is available on the Anthropic API for $10 per 1,000 searches, plus standard token costs for search-generated content. Web search results retrieved throughout a conversation are counted as input tokens, in search iterations executed during a single turn and in subsequent conversation turns.
Each web search counts as one use, regardless of the number of results returned. If an error occurs during web search, the web search will not be billed.