見出し画像

OpenAI Responses API 入門 (9) - Web search

「Responses API」の「Web search」ついてまとめました。

Web search


前回

1. Web search

Web search」は「Response API」の組み込みツールの1つです。Web検索で取得した情報をプロンプトに追加することができます。モデルはユーザー入力に応じて、Web検索するかしないかを決定します。

2. OpenAI API の準備

「Google Colab」での「OpenAI API」の準備手順は次のとおりです。

(1) パッケージのインストール。
「Responses API」と「Agent SDK」のパッケージをインストールします。

# パッケージのインストール
!pip install -U openai openai-agents

(2) 環境変数の準備。
左端の鍵アイコンで「OPENAI_API_KEY」を設定してから、以下のセルを実行してください。

import os
from google.colab import userdata

# 環境変数の準備 (左端の鍵アイコンでOPENAI_API_KEYを設定)
os.environ["OPENAI_API_KEY"] = userdata.get("OPENAI_API_KEY")

(3) クライアントの準備。

from openai import OpenAI

# クライアントの準備
client = OpenAI()

3. Web searchの実行

(1) メッセージリストの準備。

# メッセージリストの準備
messages = [
    {
        "role": "user",
        "content": "今月のOpenAI関連のニュースは?",
    }
]

(2) 推論の実行。

# 推論の実行
response = client.responses.create(
    model="gpt-4o",
    tools=[{"type": "web_search_preview"}],
    input=messages
)
print(response.output_text)
2025年3月におけるOpenAI関連の主なニュースを3つご紹介します。

1. **OpenAIとイーロン・マスク氏、営利化移行を巡る裁判を迅速化で合意**

   OpenAIと共同創設者であるイーロン・マスク氏は、OpenAIの営利企業への移行を巡る裁判を迅速化することで合意しました。マスク氏は、OpenAIが人類の利益のためにAIを開発するという当初の使命から逸脱していると主張しています。一方、OpenAIのCEOであるサム・アルトマン氏は、マスク氏が競合企業の妨害を試みていると反論しています。この裁判の結果は、OpenAIの資金調達能力に大きな影響を及ぼすと見られています。 ([reuters.com](https://www.reuters.com/technology/artificial-intelligence/openai-musk-agree-fast-tracked-trial-over-for-profit-shift-2025-03-15/?utm_source=openai))

2. **ソフトバンクとOpenAI、日本でAIデータセンターを共同建設へ**

   ソフトバンクは、OpenAIと共同で日本の大阪にAIデータセンターを建設する計画を発表しました。このデータセンターは、2026年に稼働開始予定で、150メガワットの電力容量を持つ日本最大級の施設となる見込みです。両社は、OpenAIのAIエージェントモデルを商業化し、顧客企業のデータを活用したカスタマイズされたAIエージェントの提供を目指しています。 ([reuters.com](https://www.reuters.com/technology/softbank-openai-jointly-run-ai-agents-ex-sharp-lcd-plant-osaka-nikkei-reports-2025-03-13/?utm_source=openai))

3. **OpenAI、新たな開発者向けツール「Responses API」を発表**

   OpenAIは、開発者が複雑なタスクを自律的に実行する高度なAIエージェントを構築できる新しいツール「Responses API」を発表しました。このツールは、従来の「Assistants API」に代わるもので、開発者に無料で提供されます。この発表は、中国のAIスタートアップ企業が急速に台頭する中で行われ、OpenAIは競争力の維持を図っています。 ([reuters.com](https://www.reuters.com/technology/artificial-intelligence/openai-launches-new-developer-tools-chinese-ai-startups-gain-ground-2025-03-11/?utm_source=openai))


## OpenAI関連の最新ニュース:
- [OpenAI and Musk agree to fast tracked trial over for-profit shift](https://www.reuters.com/technology/artificial-intelligence/openai-musk-agree-fast-tracked-trial-over-for-profit-shift-2025-03-15/?utm_source=openai)
- [SoftBank, OpenAI to build AI data centre in Japan, Nikkei reports](https://www.reuters.com/technology/softbank-openai-jointly-run-ai-agents-ex-sharp-lcd-plant-osaka-nikkei-reports-2025-03-13/?utm_source=openai)
- [OpenAI launches new developer tools as Chinese AI startups gain ground](https://www.reuters.com/technology/artificial-intelligence/openai-launches-new-developer-tools-chinese-ai-startups-gain-ground-2025-03-11/?utm_source=openai) 

また、tool_choice パラメータで{type: "web_search_preview"} を指定することで、ツールの使用を強制することもできます。これにより、レイテンシーが低く、より一貫した結果が得られます。

4.  出力と引用

「Web search」を使用したモデルの出力には、次の情報が含まれます。

・web_search_call : 検索呼び出しID を含む出力項目。
・message : 以下を含む出力項目
 ・message.content[0].text : 出力テキスト
 ・message.content[0].annotations : 引用URLのリスト

(1) 出力と引用の確認。

# 出力と引用の確認
for event in response.output:
    print(event)
ResponseFunctionWebSearch(
    id='ws_67d6a42c76a88191b89c502b5bd1b03f038268cc7c967348',
    status='completed',
    type='web_search_call'
)

ResponseOutputMessage(
    id='msg_67d6a42f3a008191bbf4b8ac33b96818038268cc7c967348',
    content=[
        ResponseOutputText(
            annotations=[
                AnnotationURLCitation(
                    end_index=460,
                    start_index=296,
                    title='OpenAI and Musk agree to fast tracked trial over for-profit shift',
                    type='url_citation',
                    url='https://www.reuters.com/technology/artificial-intelligence/openai-musk-agree-fast-tracked-trial-over-for-profit-shift-2025-03-15/?utm_source=openai'
                ),
                AnnotationURLCitation(
                    end_index=842,
                    start_index=683,
                    title='SoftBank, OpenAI to build AI data centre in Japan, Nikkei reports',
                    type='url_citation',
                    url='https://www.reuters.com/technology/softbank-openai-jointly-run-ai-agents-ex-sharp-lcd-plant-osaka-nikkei-reports-2025-03-13/?utm_source=openai'
                ),
                AnnotationURLCitation(
                    end_index=1242,
                    start_index=1069,
                    title='OpenAI launches new developer tools as Chinese AI startups gain ground',
                    type='url_citation',
                    url='https://www.reuters.com/technology/artificial-intelligence/openai-launches-new-developer-tools-chinese-ai-startups-gain-ground-2025-03-11/?utm_source=openai'
                ),
                AnnotationURLCitation(
                    end_index=1483,
                    start_index=1267,
                    title='OpenAI and Musk agree to fast tracked trial over for-profit shift',
                    type='url_citation',
                    url='https://www.reuters.com/technology/artificial-intelligence/openai-musk-agree-fast-tracked-trial-over-for-profit-shift-2025-03-15/?utm_source=openai'
                ),
                AnnotationURLCitation(
                    end_index=1697,
                    start_index=1486,
                    title='SoftBank, OpenAI to build AI data centre in Japan, Nikkei reports',
                    type='url_citation',
                    url='https://www.reuters.com/technology/softbank-openai-jointly-run-ai-agents-ex-sharp-lcd-plant-osaka-nikkei-reports-2025-03-13/?utm_source=openai'
                ),
                AnnotationURLCitation(
                    end_index=1930,
                    start_index=1700,
                    title='OpenAI launches new developer tools as Chinese AI startups gain ground',
                    type='url_citation',
                    url='https://www.reuters.com/technology/artificial-intelligence/openai-launches-new-developer-tools-chinese-ai-startups-gain-ground-2025-03-11/?utm_source=openai'
                )
            ],
            text='''
            2025年3月におけるOpenAI関連の主なニュースを3つご紹介します。

            1. **OpenAIとイーロン・マスク氏、営利化移行を巡る裁判を迅速化で合意**

               OpenAIと共同創設者であるイーロン・マスク氏は、OpenAIの営利企業への移行を巡る裁判を迅速化することで合意しました。
               マスク氏は、OpenAIが人類の利益のためにAIを開発するという当初の使命から逸脱していると主張しています。
               一方、OpenAIのCEOであるサム・アルトマン氏は、マスク氏が競合企業の妨害を試みていると反論しています。
               この裁判の結果は、OpenAIの資金調達能力に大きな影響を及ぼすと見られています。
               ([reuters.com](https://www.reuters.com/technology/artificial-intelligence/openai-musk-agree-fast-tracked-trial-over-for-profit-shift-2025-03-15/?utm_source=openai))

            2. **ソフトバンクとOpenAI、日本でAIデータセンターを共同建設へ**

               ソフトバンクは、OpenAIと共同で日本の大阪にAIデータセンターを建設する計画を発表しました。
               このデータセンターは、2026年に稼働開始予定で、150メガワットの電力容量を持つ日本最大級の施設となる見込みです。
               両社は、OpenAIのAIエージェントモデルを商業化し、顧客企業のデータを活用したカスタマイズされたAIエージェントの提供を目指しています。
               ([reuters.com](https://www.reuters.com/technology/softbank-openai-jointly-run-ai-agents-ex-sharp-lcd-plant-osaka-nikkei-reports-2025-03-13/?utm_source=openai))

            3. **OpenAI、新たな開発者向けツール「Responses API」を発表**

               OpenAIは、開発者が複雑なタスクを自律的に実行する高度なAIエージェントを構築できる新しいツール「Responses API」を発表しました。
               このツールは、従来の「Assistants API」に代わるもので、開発者に無料で提供されます。
               この発表は、中国のAIスタートアップ企業が急速に台頭する中で行われ、OpenAIは競争力の維持を図っています。
               ([reuters.com](https://www.reuters.com/technology/artificial-intelligence/openai-launches-new-developer-tools-chinese-ai-startups-gain-ground-2025-03-11/?utm_source=openai))

            ## OpenAI関連の最新ニュース:
            - [OpenAI and Musk agree to fast tracked trial over for-profit shift](https://www.reuters.com/technology/artificial-intelligence/openai-musk-agree-fast-tracked-trial-over-for-profit-shift-2025-03-15/?utm_source=openai)
            - [SoftBank, OpenAI to build AI data centre in Japan, Nikkei reports](https://www.reuters.com/technology/softbank-openai-jointly-run-ai-agents-ex-sharp-lcd-plant-osaka-nikkei-reports-2025-03-13/?utm_source=openai)
            - [OpenAI launches new developer tools as Chinese AI startups gain ground](https://www.reuters.com/technology/artificial-intelligence/openai-launches-new-developer-tools-chinese-ai-startups-gain-ground-2025-03-11/?utm_source=openai)
            ''',
            type='output_text'
        )
    ],
    role='assistant',
    status='completed',
    type='message'
)

5. 検索コンテキストサイズ

「Web search」を使用する場合、search_context_sizeパラメータは、Webから取得されるコンテキスト量を制御します。「Web search」で使用されるトークンは、メインモデルのコンテキストウィンドウには影響しません。これらのトークンは、あるターンから別のターンに引き継がれることはありません。それらは単にツールの応答を定式化するために使用され、その後破棄されます。

検索コンテキストサイズの制限は、コスト、品質、レイテンシーに影響します。

・品質
コンテキストサイズが大きいほど、より正確で包括的な回答が得られます。
・コスト

コンテキストサイズが大きいほど高価です。
・レイテンシー
コンテキストサイズが大きいほど、応答時間が遅くなります。

利用可能な値は次のとおりです。

・high
高品質、最高コスト、低速応答
・medium(デフォルト)
バランス
・low
低品質、低コスト、最速応答

(1) 推論の実行。

# 推論の実行
response = client.responses.create(
    model="gpt-4o",
    tools=[{
        "type": "web_search_preview",
        "search_context_size": "low",
    }],
    input=messages,
)
print(response.output_text)

6. ユーザーロケーション

ユーザーロケーションに基づいて検索結果を絞り込むには、国、都市、地域、タイムゾーンを使用して、ユーザーのおおよその場所を指定できます。

都市と地域のフィールドは、それぞれ Minneapolis と Minnesota のようなフリーテキスト文字列です。国フィールドは、US のような2文字のISO国コードです。タイムゾーンフィールドは、America/Chicago のような IANA タイムゾーンです。

(1) メッセージリストの準備。

# メッセージリストの準備
messages = [
    {
        "role": "user",
        "content": "本郷三丁目周辺のAIの会社を3社教えて。",
    }
]

(2) 推論の実行。

# 推論の実行
response = client.responses.create(
    model="gpt-4o",
    tools=[{
        "type": "web_search_preview",
        "user_location": {
            "type": "approximate",
            "country": "JP",
            "city": "Tokyo",
            "region": "Tokyo"
        }
    }],
    input=messages,
)
print(response.output_text)
本郷三丁目周辺でAI関連の事業を展開している企業を3社ご紹介します。

1. **株式会社Elith**  
   所在地:東京都文京区本郷3-30-10 本郷K&Kビル1F  
   事業内容:AI(人工知能)に関する研究、開発、設計、企画、教育、販売、保守、コンサルティング業務  
   ([elith.co.jp](https://www.elith.co.jp/company?utm_source=openai))

2. **株式会社インフォディオ**  
   所在地:東京都文京区本郷2-27-20 本郷センタービル5F  
   事業内容:人工知能を用いたアプリケーション開発、スマートフォン・タブレット向けアプリ開発、UX/UI設計、ビジネス向けアプリ開発  
   ([imitsu.jp](https://imitsu.jp/ct-app-developer/pr-tokyo/ci-bunkyo-ku/st-honngousannchoume/bu-ai-utilization/?utm_source=openai))

3. **株式会社トップゲート**  
   所在地:東京都文京区本郷3丁目40-11 柏屋ビル7F  
   事業内容:Google Cloudを活用したシステム・アプリ開発、Androidアプリ開発、エンタープライズ向け業務アプリ開発、UX/UI設計、情報設計、画像解析、位置情報利用など  
   ([imitsu.jp](https://imitsu.jp/ct-app-developer/pr-tokyo/ci-bunkyo-ku/st-honngousannchoume/bu-ai-utilization/?utm_source=openai))

これらの企業は、本郷三丁目周辺でAI技術を活用した多様なサービスを提供しています。 

7. 制限事項

「Web search」の制限事項は、次のとおりです。

・このツールは、zero data retention や data residency (data retention policies).をサポートしていません。
・Chat Completionsで使用されるgpt-4o-search-previewおよびgpt-4o-mini-search-previewは、APIパラメータの一部のみをサポートしています。
・Responses APIのツールとしてWeb検索を使用する場合、上記のモデルと同じ段階的なレート制限が適用されます。

次回



いいなと思ったら応援しよう!