
こんにちは、サーバーワークスで生成AIの活用推進を担当している針生です。
AIエージェントを構築する際、外部情報を検索して取得する「ツール」は欠かせない要素です。しかし、検索APIの選択肢が増える中で「どれを使えばいいのか」は悩みどころではないでしょうか。
本記事では、AIエージェント向け検索APIとして注目される Tavily Search API と Brave Search API を実際に叩き比べ、検索精度・レスポンス速度・コスト効率を検証します。※Brave Search API は AWS Marketplace 経由での利用を前提としています。
比較対象の概要
Tavily Search API
Tavily は「AIエージェントのために作られた検索エンジン」を謳うサービスです。通常の検索エンジンとは異なり、生のWebページではなく、前処理済みの関連性スコア付き結果を返します。
主なエンドポイント:
- Search: クエリに対する検索結果を返す(basic / advanced の2段階)
- Extract: 指定URLからコンテンツを抽出
- Map: サイトのリンク構造を探索
- Crawl: サイト全体をクロールしてコンテンツ抽出
MCP サーバーが公式提供されており、Claude Code や Cursor などから直接利用できます。
Brave Search API
Brave Search は 300億ページを超える独自インデックスを持つ検索エンジンです。Google や Bing に依存しない独立したインデックスである点が特徴です。
主なエンドポイント:
- Web Search: フルの検索結果を返す
- LLM Context: LLM向けに最適化されたコンテキスト生成
- Answers: 検索結果をもとにした引用付きの要約回答
2025年7月から AWS Marketplace でも提供が開始され、AWS の統合請求で利用できるようになりました。
実験設計
比較するエンドポイント
以下の3つのエンドポイントで、検索エンジンとしての性能を比較します。
| エンドポイント | 説明 | 1リクエストあたりのコスト |
|---|---|---|
| Tavily Search (basic) | 標準的な検索 | $0.008 (1 credit) |
| Tavily Search (advanced) | 高精度検索、複数スニペット | $0.016 (2 credits) |
| Brave Web Search | フルの検索結果(最大10件) | $0.005 |
Tavily basic と advanced の違い
Tavily の Search エンドポイントは、検索の深さを basic と advanced の2段階から選べます。
| 項目 | basic | advanced |
|---|---|---|
| 何が返るか | ページ冒頭を自動要約したテキスト | クエリに関連する箇所をページ内から複数抽出 |
| テキスト量 | 短め | 多め(basicの2〜3倍) |
| 関連性スコア | ばらつきが大きく、絞り込みに使いづらい | 高スコアに集中し、閾値フィルタリングが実用的 |
| チャンク数の指定 | 不可(1つ固定) | 1〜3で指定可能 |
| レスポンス速度 | advancedより速い | basicの約1.2倍 |
| コスト | 1 credit ($0.008) | 2 credits ($0.016) |
basic はページ冒頭の要約を返すため、内容が表面的になりがちです。advanced はクエリとの意味的な関連性が高い箇所を複数抽出するため、コードスニペットやAPIレスポンス形式など具体的な情報が含まれやすくなります。
評価クエリ
AIエージェント開発者が実際に遭遇するシナリオを5カテゴリ設定しました。
| # | カテゴリ | クエリ |
|---|---|---|
| 1 | 最新技術ニュース | Claude 4.6 Sonnet release date features |
| 2 | 技術的How-to | how to implement MCP server in Python |
| 3 | エラー解決 | Next.js 15 hydration error mismatch solution |
| 4 | API仕様 | AWS Bedrock converse API streaming response format |
| 5 | 比較・選定 | LangGraph vs CrewAI multi-agent framework comparison 2026 |
実験条件
- 各クエリを10回実行し、平均値を算出
- 各エンドポイントの最大結果数は10件
- 同一ネットワーク環境(日本国内)から連続実行
- 結果間に0.5秒のインターバルを設置(レートリミット対策)
評価指標
- レスポンス速度(ms)
- 返却結果件数
- 上位5件中の公式ソース含有数(公式ドキュメント、公式リポジトリ、一次情報源をカウント)
実験結果
レスポンス速度
| クエリ | Tavily basic | Tavily advanced | Brave Web |
|---|---|---|---|
| Q1: 最新ニュース | 832ms | 992ms | 565ms |
| Q2: How-to | 626ms | 934ms | 555ms |
| Q3: エラー解決 | 760ms | 1,073ms | 513ms |
| Q4: API仕様 | 704ms | 1,085ms | 446ms |
| Q5: 比較・選定 | 1,109ms | 869ms | 524ms |
| 全体平均 | 806ms | 991ms | 521ms |
Brave Web Search が全クエリで最速でした。平均521msと、Tavily basic(806ms)の約65%の時間で応答しました。
なお、いずれのエンドポイントも初回リクエストが遅くなるコールドスタートの傾向があります。
返却結果件数
Tavily(basic / advanced)と Brave Web Search は全クエリで10件を返しました。返却件数による差は見られません。
検索精度 — 上位5件の公式ソース含有数
各エンジンの上位5件の中に、公式ドキュメント・公式リポジトリ・一次情報源がいくつ含まれるかをカウントしました。
| クエリ | Tavily basic | Tavily advanced | Brave Web |
|---|---|---|---|
| Q1: 最新ニュース | 3 | 0 | 3 |
| Q2: How-to | 1 | 0 | 1 |
| Q3: エラー解決 | 0 | 0 | 2 |
| Q4: API仕様 | 3 | 2 | 4 |
| Q5: 比較・選定 | 0 | 0 | 0 |
| 合計(/25件) | 7 | 2 | 10 |
Brave Web Search が公式ソースの返却数で最多(10件/25件 = 40%)でした。Tavily basic(7件 = 28%)も一定の到達力を見せていますが、Tavily advanced(2件 = 8%)は大きく下回る結果となりました。advanced は関連性スコアの高い記事を優先するため、ブログ記事のスコアが高く評価された場合に公式ドキュメントが押し出される可能性があります。
結果の安定性
10回の実行を通じて、Brave Web の検索結果(上位5件の顔ぶれと順位)は全クエリで安定していました。一方、Tavily は実行ごとに順位が入れ替わるケースがありました。
検索結果の再現性が求められるユースケース(テストの自動化、結果のキャッシュ戦略など)では、この違いに注意が必要です。
クエリ別の詳細分析
Q1: 最新技術ニュース
| 順位 | Tavily basic | Tavily advanced | Brave Web |
|---|---|---|---|
| 1 | wikipedia.org | claudefa.st | support.claude.com (公式) |
| 2 | cloud.google.com (公式) | wikipedia.org | platform.claude.com (公式) |
| 3 | cnbc.com (公式報道) | substack.com | wikipedia.org |
| 4 | reddit.com | philipconrad.com | 9to5mac.com |
| 5 | platform.claude.com (公式) | 9to5mac.com | anthropic.com (公式) |
Brave Web と Tavily basic がともに公式ソース3件を含む好結果でした。Brave Web は Anthropic 直営のサイトに偏り、Tavily basic はニュースメディアやクラウドベンダーのドキュメントなど、ソースの種類が分散しています。Tavily advanced は公式ソースを含まず、ブログ記事が中心です。
Q2: 技術的How-to
| 順位 | Tavily basic | Tavily advanced | Brave Web |
|---|---|---|---|
| 1 | digitalocean.com | coderslexicon.com | gofastmcp.com (FastMCP公式) |
| 2 | reddit.com | github.com (個人リポ) | digitalocean.com |
| 3 | gofastmcp.com (FastMCP公式) | freecodecamp.org | scrapfly.io |
| 4 | auth0.com | auth0.com | machinelearningmastery.com |
| 5 | youtube.com | youtube.com | medium.com |
Brave Web は MCP サーバー実装に直接関連する公式サイトを1位に返しました。Tavily は basic / advanced ともに学習リソースやチュートリアル系の記事が上位に来る傾向がありました。
Q3: エラー解決
| 順位 | Tavily basic | Tavily advanced | Brave Web |
|---|---|---|---|
| 1 | dev.to | dev.to | nextjs.org (公式) |
| 2 | youtube.com | iloveblogs.blog | github.com/vercel (公式) |
| 3 | logrocket.com | gsap.com | stackoverflow.com |
| 4 | reddit.com | medium.com | reddit.com |
| 5 | medium.com | logrocket.com | reddit.com |
Brave Web は nextjs.org の公式エラーリファレンスを1位に、GitHub Issues を2位に返しました。開発者がエラー解決する際のフローに沿った結果です。Tavily basic / advanced ともに公式ソースを含まず、ブログ記事中心でした。
Q4: API仕様
| 順位 | Tavily basic | Tavily advanced | Brave Web |
|---|---|---|---|
| 1 | docs.aws (UserGuide) | docs.aws (APIRef ConverseStream) | docs.aws (UserGuide) |
| 2 | docs.aws (APIRef ConverseStream) | docs.aws (UserGuide) | docs.aws (Examples) |
| 3 | konghq.com | docs.spring.io | docs.aws (APIRef Converse) |
| 4 | dev.to | serverlessland.com | docs.aws (APIRef ConverseStream) |
| 5 | docs.aws (Examples) | dev.to | docs.spring.io |
今回の実験で最も差が出たクエリです。Brave Web は上位4件すべてが AWS 公式ドキュメントで、APIリファレンスとユーザーガイドの両方を網羅しています。Tavily は basic / advanced ともに公式ドキュメントを含むものの、ブログ記事が間に入り、公式への集中度では Brave に及びませんでした。
Q5: 比較・選定
いずれのエンジンも公式ソースは含まず、ブログ記事やフォーラムの比較記事が中心でした。これはクエリの性質上、「比較」という行為自体が一次情報源から生まれにくいためです。Brave Web は Reddit を含んでおり、開発者コミュニティの生の声を拾う傾向が見られました。
深掘り比較: LLMに渡すコンテキストの質
AIエージェントが本当に必要としているのはURLリストではなく、そのページの中身です。RAG パイプラインでは、検索結果のページ内容を取得してLLMのコンテキストに渡す必要があります。
この「検索 + コンテンツ取得」の一連のフローで、Brave と Tavily のアプローチは大きく異なります。Q4(AWS Bedrock Converse API)のクエリで、実際のレスポンスを比較しました。
3つのアプローチ
| アプローチ | やること | APIコール | コスト | 速度 |
|---|---|---|---|---|
| Brave LLM Context | 検索 + スニペット抽出を1回で | 1回 | $0.005 | 687ms |
| Tavily Search (advanced + raw_content) | 検索 + 全文取得を1回で | 1回 | $0.016 | 6,043ms |
| Tavily Search → Extract | 検索してからURLを指定して抽出 | 2回 | $0.024 | Search + 963ms |
Brave LLM Context は Web Search と同じ Search プランに含まれるエンドポイントで、追加料金はかかりません。検索と同時にページからクエリに関連するスニペットを抽出して返す、「検索 + コンテンツ取得のワンストップ」という位置づけです。
Brave LLM Context が最速かつ最安でした。Tavily Search で全文取得オプションを有効にすると、ページ全文の取得が加わるため約9倍遅くなります。
返却コンテンツの質
同じ AWS 公式ドキュメント(ConverseStream API リファレンス)に対するレスポンスを比べます。
Brave LLM Context のレスポンス(16,692 chars / 6スニペット):
# ConverseStream
## Response Syntax
HTTP/1.1 200
Content-type: application/json
{
"contentBlockDelta": {
"contentBlockIndex": number,
"delta": { ... }
},
"contentBlockStart": { ... },
...
}
Tavily Search (raw_content) のレスポンス(18,882 chars / 全文):
ConverseStream - Amazon Bedrock [Documentation](/index.html)[Amazon Bedrock](/bedrock/index.html) [API Reference](welcome.html) [Request Syntax](#API_runtime_ConverseStream_RequestSyntax) [URI Request Parameters](#API_runtime_ConverseStream_RequestParameters) ...
Brave LLM Context はクエリに関連する箇所(Response Syntax、パラメータの説明など)をスニペットとして抽出し、Markdown 形式で整形して返しています。一方、Tavily はページ全文をそのまま返すため、ナビゲーションリンクや目次などのノイズも含まれます。
コンテンツサイズの比較(上位3ソース合計)
| アプローチ | 合計サイズ | 内容 |
|---|---|---|
| Brave LLM Context | 33,719 chars | クエリ関連スニペットのみ |
| Tavily Search (raw_content) | 47,445 chars | ページ全文(ナビ・目次含む) |
| Tavily Extract | 43,369 chars | ページ全文(ナビ・目次含む) |
同じ情報量を少ないトークンで渡せる Brave LLM Context は、LLM のコンテキストウィンドウを効率的に使えます。Tavily の全文をそのまま渡すと、LLM が不要な情報の中から必要な箇所を探す処理が発生し、回答精度にも影響する可能性があります。
API 料金だけでなく、後段の LLM に渡すトークン量も含めて考えると、Brave LLM Context のコスト優位性はさらに大きくなります。
コスト効率の比較
実際の利用シナリオを想定して、月間のコストを試算します。
検索コスト: 月10,000クエリ
| 項目 | Tavily basic | Tavily advanced | Brave Search (AWS Marketplace) |
|---|---|---|---|
| 単価 | $0.008 | $0.016 | $0.005 |
| 月額(10,000クエリ) | $80 | $160 | $50 |
Brave Search は Tavily basic の約63%、Tavily advanced の約32%のコストで運用できます。Brave は Web Search と LLM Context が同一料金のため、用途に応じてエンドポイントを使い分けても追加コストは発生しません。
無料枠の比較
| 項目 | Tavily | Brave Search (直接) | Brave Search (AWS Marketplace) |
|---|---|---|---|
| 無料枠 | 1,000 credits/月 | $5/月のクレジット | なし |
| 検索回数換算 | 1,000回 | 約1,000回 | - |
評価目的であれば、Brave Search の直接契約が最も多く無料で試せます。ただし、AWS の統合請求やエンタープライズ調達フローが必要な場合は、AWS Marketplace 版が便利です。
Tavily ならではの強み
コストと速度では Brave が優位でしたが、Tavily には独自の強みがあります。
Relevance Score
前述の通り、Tavily は各結果に 0〜1 の関連性スコアを付与して返します。Brave Search にはこの機能がありません。AIエージェント側でスコアに基づいた結果の取捨選択をプログラマティックに行いたい場合、この差は大きいです。
Extract / Map / Crawl
Tavily は検索だけでなく、URL指定のコンテンツ抽出(Extract)、サイト構造の探索(Map)、サイト全体のクロール(Crawl)をワンストップで提供しています。「検索して、見つけたページの中身を取得して、関連ページも辿る」という一連のフローを Tavily だけで完結できます。
MCP サーバーの完成度
Tavily の MCP サーバーは search / extract / map / crawl の4ツールを公開しており、Claude Code などから自然言語で呼び出せます。Brave Search も MCP サーバーを提供していますが、対応するツールは検索のみです。
AWS Marketplace 経由で Brave Search を使うメリット
Brave Search API の AWS Marketplace 版は、API 自体は直接契約と同一ですが、以下のメリットがあります。
- AWS の統合請求に含まれるため、社内の調達フローが簡素化される
- Amazon Bedrock AgentCore のコンテナイメージが付属しており、AWS インフラ上での運用が容易
- エンタープライズ向けの契約条件やサポートが AWS 経由で利用可能
特に企業での利用を想定する場合、新たにベンダーとの契約を結ぶことなく、既存の AWS アカウントから即座に利用開始できる点は実務上の大きな利点です。
まとめ
5カテゴリのクエリを各10回実行し、Tavily Search API と Brave Search API を比較した結果を総括します。
検索エンジンとしての比較(Tavily Search vs Brave Web Search)
| 観点 | 優位 | 詳細 |
|---|---|---|
| レスポンス速度 | Brave Web | 平均521ms(Tavily basicの65%) |
| 公式ソース到達力 | Brave Web | 公式ソース率40%(Tavily basicは28%) |
| 結果の安定性 | Brave Web | 10回実行で順位変動なし |
| 結果のフィルタリング | Tavily | 関連性スコア (0-1) を返す |
| 機能の幅広さ | Tavily | Search + Extract + Map + Crawl のワンストップ |
| MCP統合の完成度 | Tavily | 4ツール公開(Braveは検索のみ) |
LLMコンテキスト生成の比較(Brave LLM Context vs Tavily raw_content/Extract)
| 観点 | 優位 | 詳細 |
|---|---|---|
| コスト・速度 | Brave LLM Context | $0.005 / 687ms で検索+抽出を完結 |
| トークン効率 | Brave LLM Context | スニペット抽出済み(全文の約71%のサイズ) |
| コンテンツ網羅性 | Tavily | ページ全文を取得できる |
ユースケース別の推奨
検索のみで十分なケース(ファクトチェック、ニュース取得など)は Brave Web Search がコスト効率と精度の両面で優れています。AWS 環境で運用するなら、Marketplace 版を使うことで調達・請求もシンプルになります。
RAG パイプラインでLLMにコンテキストとして渡したい場合は、Brave LLM Context が検索 + スニペット抽出をワンストップで提供し、コスト・速度・トークン効率のすべてで有利です。
一方、検索結果を起点にページ内容の抽出やサイトクロールまで行いたいケース(リサーチエージェント、ドキュメント収集など)は、Tavily のワンストップな API 体系が強みを発揮します。関連性スコアによるプログラマティックなフィルタリングも、複雑なエージェントワークフローでは有用です。
どちらか一方に絞る必要はなく、検索は Brave、抽出は Tavily のように組み合わせて使うのも現実的な選択肢です。
補足: 実験の制約
- 本記事のデータは2026年4月6日時点の計測結果です。検索結果やレスポンス速度は時期によって変わる可能性があります
- レスポンス速度はネットワーク環境に依存します。本記事の数値は日本からの計測値です
- 初回リクエストはコールドスタートの影響で遅くなる傾向があります(特に Tavily advanced は初回が2回目以降の約4.5倍)。本記事の平均値には初回を含んでいます
- 検索精度の「公式ソース含有数」は筆者の判断に基づくものであり、絶対的な品質指標ではありません
- Tavily の検索結果は実行ごとに順位が変動するケースがあります。本記事の Top5 は10回目の実行結果です
針生 泰有(執筆記事の一覧)
サーバーワークスで生成AIの活用推進を担当