コンテンツにスキップ

ウェブ検索

Claude Web Search (Claude ウェブ検索)

このページでは、新しい API プラットフォーム**上で **Anthropic Claude 向けに Web search ツール を有効にする方法を説明します。これにより、Claude は以下のことが可能になります:

  • ライブインターネットコンテンツへのアクセス: モデルの知識の期限日を超える質問に回答します。
  • 引用付きの回答を返す: ユーザーが検証しやすいように、可能な場合はウェブのソースリンクを付与します。

重要な注意点:
- 注意事項: Claude のウェブ検索を使用する場合、使用しているトークン(Token)が claude code グループに属している必要があります。 - 当サイトのゲートウェイ は OpenAI 仕様と互換性のある /v1/chat/completions インターフェースを統一して採用しており、web_search_options フィールドを通じて Claude を含む各モデルのネットワーク機能をトリガーします。 - Anthropic 公式 は、独自の /v1/messages インターフェースと独自の web_search ツール宣言方法(例:web_search_20260209 または web_search_20250305)を持っています。

以下では、**当サイトの統一的な呼び出し方法**と **Anthropic 公式の呼び出し方法**を比較して示します。


クイックスタート

当サイトの例

本プラットフォームでは、/v1/chat/completions エンドポイントにリクエストを送信し、リクエストボディに web_search_options フィールドを追加するだけでネットワーク機能を有効にできます。

curl "https://api-cs-al.naci-tech.com/v1/chat/completions" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $API_KEY" \
  -d '{
    "model": "claude-opus-4-5-20251101",
    "messages": [
      { 
        "role": "user", 
        "content": "明日の北京の天気はどうですか?" 
      }
    ],
    "web_search_options": {
      "search_context_size": "medium"
    }
  }'
  • web_search_options: ネットワーク検索を有効にするためのフラグです。現在サポートされている設定項目(検索コンテキスト量を制御する search_context_size など)は、プラットフォーム内の GPT など他のモデルのネットワークメカニズムと一致しています。

Anthropic 公式の例(ネイティブ API)

Anthropic 公式 API に直接接続する場合は、/v1/messages インターフェースの tools 配列を通じてネイティブの web_search ツールを宣言する必要があります。公式ツールには基本版と動的フィルタリング版があります:

curl "https://api.anthropic.com/v1/messages" \
  -H "x-api-key: $ANTHROPIC_API_KEY" \
  -H "anthropic-version: 2023-06-01" \
  -H "content-type: application/json" \
  -d '{
    "model": "claude-opus-4-6",
    "max_tokens": 1024,
    "messages": [
      {
        "role": "user",
        "content": "What is the weather in NYC?"
      }
    ],
    "tools": [
      {
        "type": "web_search_20250305",
        "name": "web_search",
        "max_uses": 5
      }
    ]
  }'

Anthropic 公式の高度な機能説明

当サイトでは web_search_options を使用して非常に簡単に解決できますが、公式のネイティブ機能について理解することで、Claude Web Search の可能性を把握するのに役立ちます。

サポートされているモデル

Anthropic の公式ドキュメントによると、Web Search は以下のモデルをサポートしています:

  • claude-opus-4-6 / claude-opus-4-5-20251101 / claude-opus-4-1-20250805 / claude-opus-4-20250514
  • claude-sonnet-4-6 / claude-sonnet-4-5-20250929 / claude-sonnet-4-20250514
  • claude-haiku-4-5-20251001

動的フィルタリングとツールバージョン

公式のネイティブインターフェースには、主に 2 つのバージョンがあります:

  • web_search_20260209: 最新バージョンであり、コード実行ツール (code execution) との連携をサポートしています。Claude はサーバー側でコードを実行して検索結果を**動的にフィルタリング**し、真に関連するコンテンツのみをコンテキストに保持することで、精度を向上させトークンを削減できます。
  • web_search_20250305: 基本バージョンであり、動的フィルタリング機能を持ちません。

動的フィルタリングを有効にする公式の例:

curl "https://api.anthropic.com/v1/messages" \
  -H "x-api-key: $ANTHROPIC_API_KEY" \
  -H "anthropic-version: 2023-06-01" \
  -H "content-type: application/json" \
  -d '{
    "model": "claude-opus-4-6",
    "max_tokens": 4096,
    "messages": [
      {
        "role": "user",
        "content": "Search for the current prices of AAPL and GOOGL, then calculate which has a better P/E ratio."
      }
    ],
    "tools": [
      {
        "type": "web_search_20260209",
        "name": "web_search"
      },
      {
        "type": "code_execution",
        "name": "code_execution"
      }
    ]
  }'

公式パラメータとレスポンス構造

ネイティブインターフェースを使用している場合、web_search ツールは以下のパラメータもサポートしています:

  • max_uses(オプション): 1 回のリクエストでトリガーできる最大検索回数を制限します。これを超えると max_uses_exceeded エラーが返されます。
  • allowed_domains(オプション): これらのドメインからの結果のみを許可します。ドメインにはプロトコルは含まれず、サブドメインが自動的に含まれます。
  • blocked_domains(オプション): これらのドメインからの結果を禁止します。allowed_domains と同時に使用することはできません。
  • user_location(オプション): 検索結果をローカライズするために使用され、都市、地域、国、タイムゾーンなどの情報を含みます。

ネイティブのレスポンス結果は server_tool_useweb_search_tool_result のコンテンツブロックとして表示され、特定のソース表示をサポートするための citations 構造を含みます。一方、本プラットフォームで /v1/chat/completions を使用して呼び出す場合、ゲートウェイがバックグラウンドで処理を行い、整理された結果を直接プレーンテキスト形式で結合するか、互換性のある Citation 形式で返します。


まとめ

  • 当サイトでの使用: /v1/chat/completions を直接呼び出し、web_search_options を渡してください。これは GPT や他のオープンソースモデルのネットワーク機能を呼び出すのと完全に一致しており、複雑なネイティブ Tool の呼び出しロジックを処理する必要はありません。
  • 公式への直接接続: 公式ドキュメントに従って /v1/messages を呼び出し、tools 配列内で web_search_20250305 またはフィルタリング機能付きの web_search_20260209 を宣言してください。