GenUでBrave Search APIを有効化し、最新情報を検索させる
はじめに
プログデンスの圓佛です。AWSが公開しているGenUはデフォルトだと「インターネットの最新情報を検索して結果を返す」といったことはできません。しかし、AWS外のサービスになりますがBrave Search APIやTavily Search APIと連携することにより、「最新情報を参照して回答する」といったことが可能になります。GenUではこの機能のことを「Agentチャット」と呼んでいます。
今回はBrave Search APIを利用し、GenUでAgentチャットを利用する方法を説明します。
検索エージェントの利用時は外部に情報を送信する
一点、注意点があります。GenUのユースケースは外部に情報を送信せず、AWS内部のみで完結します。ですが、検索エージェントを利用する場合は仕組み上、どうしても入力データを外部の検索エージェントへ送信してしまいます。Brave Search APIのプライバシーポリシーについてはBrave Search API privacy noticeに詳しく記載されています。
Brave Search APIキーの発行
Brave Search APIのダッシュボードにログインしたら「API Keys」メニューから「+ Add API key」をクリックします。
発行するAPIキーに名前をつけ、契約を選択したら「Add」をクリックします。以下の記載があるように、APIキーは契約ごとに10個まで、発行できるようです。
You may have up to 10 keys per subscription (i.e., 10 for Search, 10 for Spellcheck, etc.). Distinct keys help to distinguish between development and production environments.
APIキーが発行されました。「Copy」をクリックしてAPIキーを控えておきます。
GenUの設定ファイルにAPIキーを指定する
Brave Search APIの設定方法はデプロイオプションの検索エージェントのデプロイに記載されています。具体的にはGenUの設定ファイルであるpackages/cdk/cdk.json
を以下のように変更します。
変更前(初期状態)
"agentEnabled": false,
"searchAgentEnabled": false,
"searchEngine": "Brave",
"searchApiKey": "",
変更後
「agentEnabled」と「searchAgentEnabled」をtrue
に設定したら「searchApiKey」にBrave Search APIキーを設定します。
"agentEnabled": true,
"searchAgentEnabled": true,
"searchEngine": "Brave",
"searchApiKey": "ABCDEFGHIJKLMNOPQRSTUVWXYZ12345",
GenUをデプロイする
「初回のデプロイ」「アップデート」に応じてGenUのデプロイ方法は多少、異なります。以下の記事を参考にGenUをデプロイします。
Agentチャットが有効化されたことを確認する
デプロイが完了したらGenUへログインし、画面左下のギアのアイコンをクリックします。すると以下のようにユーザー設定やシステム設定が表示されますが、このうち「Agent名」に「SearchEngine」の記載があればAgentチャットが有効化されています。
Agentチャットを試す
「通常のチャット」と「Agentチャット」に対して同じ「generative-ai-use-cases-jpとは何ですか?」という質問をしてみます。
「通常のチャット」の回答
通常のチャットでは「AWSが提供しているGenUのことだ」と特定できず、曖昧な回答になっています。
「Agentチャット」の回答
Agentチャットでは正しく「AWSが提供しているGenUのことだ」と回答できています。
Agentチャットの処理過程を確認する
同様に「現在の日本の総理大臣は?」と質問してみます。首相官邸の歴代内閣ページによると正しくは下記です。
- 第100代 岸田 文雄 (令和3年10月4日~令和3年11月10日)
- 第101代 岸田 文雄 (令和3年11月10日~令和6年10月1日)
- 第102代 石破 茂 (令和6年10月1日~令和6年11月11日)
- 第103代 石破 茂 (令和6年11月11日~現在)
「通常のチャット」の回答
Introducing Claude 4によるとClaude 4がリリースされたのは2025年5月23日ごろのようです。以下では2024年(令和6年)の10月を「現在」と捉え、微妙なタイミングですが「岸田 文雄」と誤った回答をしています。
「Agentチャット」の回答
Agentチャットに同じ質問をしたところ、こちらも「岸田 文雄」元総理大臣と回答しており、誤っています。最新情報に基づいて検索しているはずですが、これは期待外れな回答です。
回答の上部にある「トレース」という部分をクリックすると「Agentチャットがどのような過程で情報を検索し、回答を導いたか」という過程を確認することができます。どうやら「歴代内閣」のページには辿り着いているようですので情報源は正しいようです。
少しプロンプトを変更して再挑戦してみます。「現在の〜」ではなく、明示的に日付を指定して「2025年8月1日時点の日本の総理大臣は?」と質問してみると期待する回答が得られました。