phaseo:web_searchを使います。モデルが検索のタイミングとクエリを決め、1回のリクエスト中に複数回検索できます。
PhaseoはURL、タイトル、スニペット、ハイライト、必要に応じてページ本文をモデルに返し、根拠のある回答を作成できるようにします。
TinyFish Searchはオプションの管理検索エンジンとして利用できます。対応ルートでは、
engine: "native"でプロバイダーのネイティブ検索も引き続き使えます。仕組み
{ "type": "phaseo:web_search" }をtoolsに追加します。- モデルが検索の必要性を判断し、クエリを出力します。
- Phaseoが設定された検索エンジンで検索を実行します。
- 検索結果がツールのコンテキストとしてモデルに返されます。
- モデルが最終回答を作成し、必要であれば再度検索します。
クイックスタート
設定
検索エンジンの選択
engine: "native"はツールの宣言内でのみ使用してください。モデルが出力済みのゲートウェイ検索呼び出し内でengine: "native"を指定すると、上流リクエストの送信前にネイティブツールを選択する必要があるため、Phaseoはツールエラーを返します。
TinyFish Search
Phaseo Gatewayの実行環境のシークレットにTINYFISH_API_KEYを設定してエンジンを有効にし、ツールのパラメーターで選択します。
languageは言語のヒントを指定し、pageは0から10の結果ページを選択します。TinyFishは両方のドメインフィルターリストに対応し、Phaseoが検索演算子に変換します。結果にはURL、タイトル、抜粋・ハイライトが含まれます。モデルに詳しい本文が必要な場合はphaseo:web_fetchを使ってください。
ドメインの絞り込み
回答の情報源を指定した範囲に限定する場合は、allowed_domainsを使います。
excluded_domainsを使います。
PerplexityとFirecrawlでは、1回の検索にallowed_domainsまたはexcluded_domainsのどちらかを指定でき、両方は指定できません。Perplexityは1リクエストあたり最大20件のドメインフィルターを受け付け、除外ドメインを拒否リスト形式に変換します。 TinyFishは両方の配列をクエリのsite:と-site:演算子に変換します。
TinyFish Searchは公開プランで無料のため、Phaseoはengine: "tinyfish"にプロバイダー利用料を追加しません。通常のPhaseoリクエスト料金とトークン料金は引き続き適用されます。
Responses API
同じツール形式を/v1/responsesでも使えます。
使用量と料金
Web検索呼び出しでは次の値が増加します。server_tool_web_search_requestsとserver_tool_web_search_extra_resultsを使用できます。プロバイダーのネイティブ検索では、モデルの料金カードで設定されている場合にnative_web_search_requestsを使用できます。