1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

o3 などにも対応した OpenAI の「Web search」ツール(Web検索)を Node.js + Responses API で試す

Last updated at Posted at 2025-06-28

はじめに

直近で、OpenAI の API を使った検索系は、以下の登場したばかりの Deep research API を試したのですが、今回は Responses API のツールを用いた検索です。

●OpenAI の Deep research が API で使えるようになったので Node.js で軽く試してみた - Qiita
 https://qiita.com/youtoy/items/08ea6874ae49bbb66d87

「Web search」ツールで新たに利用可能になったモデル

自分がこの対応モデル追加の話を見かけたのは、以下のタイミングです。

【上記のポストで書かれている、新しく使えるようになったモデル】
Web search is now available with OpenAI o3, o3-pro, and o4-mini.

前に OpenAI の「Web search」ツール(Web検索)を試した話

実は、「o3, o3-pro, and o4-mini」が新たに Web検索に対応する話が出る前に、それ以外のモデルで Web検索ができていた時にも、Node.js でのお試しをやっていたことがありました。

その時の記録が Qiita の記事の下書きにあったので、最後のほうで紹介してみます。

さっそく試す

それでは、「o3, o3-pro, and o4-mini」でも使えるようになった Web検索を試していきます。

利用する API は、以下の記事でも試した OpenAI の Responses API になります。

●Node.js で OpenAI の 新API(Responses API)をシンプルに試す - Qiita
 https://qiita.com/youtoy/items/12749481635230fae586

それを、Node.js から呼び出します。

Web検索のツールに関する公式情報

今回試す Web検索(「Web search」ツール)は、以下の公式ページに掲載されているビルトインツールの 1つです。

●Built-in tools - OpenAI API
 https://platform.openai.com/docs/guides/tools?api-mode=responses

image.png

サンプルコード

そのツールを使うサンプルコードは、以下などから確認できます。

●Web search - OpenAI API
 https://platform.openai.com/docs/guides/tools-web-search?api-mode=responses

image.png

上記の赤矢印で示した部分を選択することで、以下に示した curl・JavaScript でのサンプルや、他に Python のサンプルも見ることができます。

curl "https://api.openai.com/v1/responses" \
    -H "Content-Type: application/json" \
    -H "Authorization: Bearer $OPENAI_API_KEY" \
    -d '{
        "model": "gpt-4.1",
        "tools": [{"type": "web_search_preview"}],
        "input": "what was a positive news story from today?"
    }'
import OpenAI from "openai";
const client = new OpenAI();

const response = await client.responses.create({
    model: "gpt-4.1",
    tools: [ { type: "web_search_preview" } ],
    input: "What was a positive news story from today?",
});

console.log(response.output_text);

API を使う下準備

ここから Node.js で API を使う際によく行っている、下準備を行います。

1つは、公式パッケージ openai - npm のインストールです。以下のコマンドを使います。

npm i openai

もう1つの下準備は環境変数の設定で、OPENAI_API_KEY という名前の変数に OpenAI の APIキーをセットします。

コード

今回試すコードは、以下の通りです。サンプルコードの中の、モデル指定・プロンプトのみ変更します。

import OpenAI from "openai";
const client = new OpenAI();

const response = await client.responses.create({
    model: "o3",
    tools: [ { type: "web_search_preview" } ],
    input: "AIエージェントを実装ができるJavaScript/TypeScriptのSDKを探して",
});

console.log(response.output_text);

o3 は推論(Reasoning)モデルなので、上記を実行した後、レスポンスが返ってくるまでけっこう時間がかかりました(※ Web検索絡みのツールの処理も、影響を及ぼしてそうですが)。

得られた結果

API のレスポンスで得られた結果は、以下のとおりです。

image.png

image.png

image.png

「AIエージェントを実装ができるJavaScript/TypeScriptのSDKを探して」というプロンプトで試しましたが、以下の情報を返してくれました。

■ 得られた内容の抜粋
以下は、2025年6月時点で「JavaScript/TypeScript で AI エージェント(LLM + ツール呼び出し+マルチステップ推論など)を実装できる」主要 SDK とフレームワークの一覧です。すべて OSS(MIT など)で npm から導入できます。

  1. OpenAI Agents SDK(@openai/agents)
  2. LangChain.js + LangGraph
  3. LlamaIndex.TS(llamaindex)
  4. Semantic Kernel JS(semantic-kernel)
  5. Vercel AI SDK(ai / @ai-sdk/*)
  6. VoltAgent(@voltagent/*)
  7. ADK TypeScript(adk-typescript)
    1. その他の軽量フレームワーク
    • Engine-Agents(AutoGen 風の API)、Agent Forge、AgentM などデコレータ指向や「マイクロエージェント」思想の実装も登場中。・・・。

TypeScript/JavaScript のメジャーな SDK は、一通り出てきているかと思います。以下のお試しをしたことがあった、新しめの VoltAgent もしっかり入っていました。

●VoltAgent(TypeScript の AIエージェントフレームワーク)を軽く試してみる - Qiita
 https://qiita.com/youtoy/items/6990e175e92c54265580

ちなみに、以下が選定のヒントとして提示されていました。

• まず「どの LLM/クラウドを使うか」「単一 vs. 複数エージェント」「ブラウザ実行が要るか」を決める。
• OpenAI API かつマルチエージェントが主目的なら OpenAI Agents SDK が最速。
• ベクタ検索+可視化まで一気にやりたい 👉 LangChain.js / LlamaIndex.TS。
• 既存の Next.js サイトに追加したい 👉 Vercel AI SDK。
• Google Workspace と統合する 👉 ADK TS。
• 運用・監視まで含め大型運用 👉 VoltAgent or LangSmith(LangChain)。

【追記】 別の検索結果の例

上記と別の検索も試したものがあるので、結果だけ貼り付ける形で紹介します(※ A2A絡みの検索を依頼した形です)。

image.png

image.png

image.png

Limitations の記載

あと、公式のドキュメントで Limitations という部分に書かれている内容を掲載しておきます。

image.png

内容は、主にモデル・API に関する制約が書いてあるものでした。

費用関連

今回の Web検索のようなビルトインツールを利用した際には、API で利用したツールによって費用がかかるようです。

今回の「Web 検索ツールの呼び出し」については、以下となるようでした。

●料金 | OpenAI
 https://openai.com/ja-JP/api/pricing/

image.png

API利用 1回分の費用

今回、API で o3 を使った Web検索を 1回行った時の費用を、ダッシュボードで確認してみた結果を掲載してみます。

上で掲載していた 2回分の検索の例のうち、2回目の検索の例に関する費用です。以下のとおり、かかった費用は 0.24ドルだったようです。

image.png

上記費用の内訳を見てみます。上記費用が書かれていた下の部分で、Spend categories を選んで表示される内容を確認します。

image.png

内訳は以下の通りでした。

  • o3-2025-04-16, input
    • $0.105 total
  • o3-2025-04-16, cached input
    • $0.105 total
  • o3-2025-04-16, output
    • $0.02 total
  • web search tool calls | o3
    • $0.01 total

過去に試していた時の記録(2025年4月ごろ)

けっこう前に、Responses API の「Web search」ツール(Web検索)を試していた時の記録があったものを、ここに掲載してみます。

過去に既に利用可能だった複数のモデルを、切り替えて試していたものになります。

結果(o4-mini)

image.png

結果2(gpt-4.1)

image.png

結果3(gpt-4.1)

image.png

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?