Cookieを使用しています. Cookieとブラウザストレージは、ログイン状態の維持と設定の保存に使われます。許可いただいた場合は、サイトの利用状況も計測します。はいつでも変更できます。詳しくはCookieポリシーをご覧ください。

Web 検索

エンドポイント

Web 検索

モデルに最新の Web 検索結果と URL の引用を加える方法です。:online バリアント、web プラグイン、web_search_options の 3 通りの有効化、引用を含むレスポンス、料金、エラーを説明します。どのテキストモデルでも利用できます。

プレイグラウンドで試す

Web 検索は、最新の Web 検索結果をモデルのコンテキストに追加し、URL の引用を返します。任意のテキストモデルで、次の 3 つの方法で有効にできます。

1. :online バリアント

任意のモデル ID に :online を追加します。

{ "model": "openai/gpt-5-mini:online", "messages": [{ "role": "user", "content": "What happened in AI this week?" }] }

:online には、ベースモデルと同じ価格、キーの許可リスト、プランのルールが適用されます。モデル IDを参照してください。

import OpenAI from "openai";

const client = new OpenAI({
  baseURL: "https://api14.com/api/v1",
  apiKey: process.env.API14_API_KEY,
});

const result = await client.chat.completions.create({
  "model": "openai/gpt-5-mini:online",
  "messages": [
    {
      "role": "user",
      "content": "What are the latest AI model releases this week?"
    }
  ]
});
console.log(result.choices[0].message.content);

2. web プラグイン

プラグインを使うと、検索を制御できます。

{
  "model": "anthropic/claude-sonnet-4.5",
  "messages": [{ "role": "user", "content": "Latest stable Node.js version?" }],
  "plugins": [
    { "id": "web", "max_results": 5, "engine": "exa", "search_prompt": "Use these sources:" }
  ]
}
フィールド型説明
plugins[].idstring"web"
max_resultsinteger挿入する結果の数(デフォルトは 5)。
enginestring"native"(プロバイダー自身の検索。利用可能な場合)または "exa"。省略すると、利用可能なら native、そうでなければ Exa が使われます。
search_promptstring挿入される結果の前に置かれるテキスト。

3. web_search_options

ネイティブ検索を備えたモデル向けの、OpenAI 形式のオプションです。

{
  "model": "openai/gpt-4o-search-preview",
  "messages": [{ "role": "user", "content": "Who won yesterday's match?" }],
  "web_search_options": { "search_context_size": "high" }
}

search_context_size は "low"、"medium"、"high" のいずれかです。取得する検索コンテンツの量と価格を決定します。

レスポンス

引用は、メッセージの annotations として返されます。

{
  "choices": [
    {
      "index": 0,
      "finish_reason": "stop",
      "message": {
        "role": "assistant",
        "content": "The latest LTS release is ... [nodejs.org](https://nodejs.org/en/blog)",
        "annotations": [
          {
            "type": "url_citation",
            "url_citation": { "url": "https://nodejs.org/en/blog", "title": "Node.js Blog", "start_index": 25, "end_index": 60, "content": "..." }
          }
        ]
      }
    }
  ],
  "usage": { "prompt_tokens": 2410, "completion_tokens": 85, "total_tokens": 2495, "cost": 0.02061 }
}

料金

トークンに加えて、検索には独自の価格があります。Exa は結果ごと、ネイティブ検索はモデルの web_search 価格に基づいてリクエストごとに課金されます。検索結果は入力トークンとしても数えられます。これらはすべて usage.cost に含まれ、USD で差し引かれます。料金と請求を参照してください。

エラー

Chat Completions と同じです。エラーを参照してください。