DeepSeek ウェブ検索と取得
直接の検索・ページ取得、またはモデルによるウェブツールの実行を選びます。
呼び出し方法の選択
| 目的 | 方法 |
|---|---|
| キーワードでページを探し、結果を自分で処理する | Search はリンク、要約、任意の本文を返します。model は不要 |
| URL が分かっており、本文を読みたい | Fetch はタイトルと Markdown 本文を返します。model は不要 |
| モデルに調査と回答を任せたい | Responses または Messages でサーバー側ウェブツールを宣言し、モデルが操作を選択・実行 |
以下のリクエストにはプラットフォームの API Key を使用します。独立 API とモデルツールのどちらも料金が発生する場合があります。
直接検索して取得する
1. ウェブを検索
curl 'https://api.agtcloud.ai/v1/tools/search' \
-H 'Authorization: Bearer your-api-key' \
-H 'Content-Type: application/json' \
--data '{
"query": "DeepSeek site:api-docs.deepseek.com",
"count": 5,
"need_content": false
}'results から関連ページを選び、url を読み取ります。一致する結果がなければ検索語や範囲を調整します。検索結果に本文を含めるには need_content: true を設定します。
2. 選択したページを取得
以下の URL を、前の手順で選んだ results[].url に置き換えます。
curl 'https://api.agtcloud.ai/v1/tools/fetch' \
-H 'Authorization: Bearer your-api-key' \
-H 'Content-Type: application/json' \
--data '{
"url": "https://example.com/"
}'title と content を読み取り、Markdown 本文を表示、検索、後続のモデル入力に利用します。成功した検索と取得はそれぞれ別に課金されます。複数の検索結果でも検索リクエストは 一回として数えます。
モデルにウェブツールを使わせる
MODEL_ID を対応するツールを利用できるモデルの完全な ID に置き換えます。ツールはサーバー側で実行されるため、クライアントで検索したりツール結果を返したりする必要はありません。
deepseek-v4-pro を選びます。web_search は検索とページを開く操作に対応し、Fetch ツールを別に宣言する必要はありません。
curl 'https://api.agtcloud.ai/v1/responses' \
-H 'Authorization: Bearer your-api-key' \
-H 'Content-Type: application/json' \
--data '{
"model": "MODEL_ID",
"reasoning": {"effort": "none"},
"max_output_tokens": 4096,
"tools": [{"type": "web_search"}],
"input": "Python の公式サイトを検索し、関連ページを読んで用途を簡潔に説明し、出典リンクを示してください。"
}'完全なリクエストとレスポンスの構造は Responses と Messages を参照してください。
結果と使用量を読む
| 呼び出し方法 | 読み取り位置と意味 |
|---|---|
| 独立 Search/Fetch | Search は results、Fetch は title/content を読みます。追加の usage は返りません |
| Responses の結果 | output の web_search_call がウェブ操作を示し、最終回答は message のテキストに入ります |
| Responses の使用量 | usage.server_tool_use.tool_search は成功した検索クエリ数です。一回のツール呼び出しに複数クエリがあれば複数回と数える場合があります。tool_fetch はページを開く操作やページ内のテキスト検索を含む、成功したページ読み取り数です。両方がゼロなら server_tool_use は省略されます |
| Messages の結果 | content に server_tool_use、web_search_tool_result、最終回答のテキストブロックが含まれます |
| Messages の使用量 | usage.server_tool_use.web_search_requests は試行数で、失敗や max_uses を超えた試行を含む場合があります。tool_search は成功して結果があった検索数で、プラットフォームは成功数に応じて検索料金を計算します |
| ストリーミング使用量 | Responses は最後の response.completed/incomplete/failed の response.usage、Messages は最後の message_delta.usage の累積値を読みます。初期イベントの値を加算しません |
ツールの宣言だけでは検索実行は保証されません。実際の回数は返された使用量を確認します。Responses の max_tool_calls は無視され、プロンプトで指定した回数も課金回数の上限にはなりません。