Skip to main content
Exa は、AI アプリケーション向けに構築された Web 検索 API です。各検索結果とともに、そのまま利用できるクリーンなページコンテンツを返すため、SambaNova モデルの応答を最新の Web 情報に基づかせる (グラウンディングする) ことが容易になります。

前提条件

作業を始める前に、以下の環境を準備してください。
  • SambaCloud アカウントと API キー
  • Exa アカウントと API キー
  • Python 3.9 以降、または Node.js 18 以降

セットアップ

以下の手順に従って、必要な依存パッケージをインストールし、環境を設定します。
1

依存パッケージのインストール

使用する言語に応じて、必要な SDK をインストールします。
Node.js の例では ES モジュールとトップレベル await を使用しています。ファイルは .mjs 拡張子で保存してください (または package.json に "type": "module" を設定してください)。
2

API キーの設定

プロジェクトディレクトリに .env ファイルを作成します。
3

Exa による Web 検索

Exa を使って、クエリに関連する Web コンテンツとハイライトを取得します。
4

検索結果による SambaNova モデルのグラウンディング

前のステップで取得した results を使い、Exa の検索結果をコンテキストとして整形して、SambaNova でホストされているモデルに渡します。
5

(任意) Exa によるツール呼び出しの有効化

エージェント型ワークフローでは、Exa 検索を Function tool として公開することで、モデル自身が Web 検索を行うタイミングを判断できるようになります。

検索モードと鮮度の制御

Exa は複数の検索戦略に対応しています。 返されるコンテンツの新しさは、max_age_hours (Python) または maxAgeHours (Node.js) で制御できます。0 に設定すると Exa はライブコンテンツのみを取得し、24 に設定すると 1 日前までの結果が許容されます。

ユースケースの例

この連携により、以下のような一般的なユースケースを実現できます。
  • チャットボットの応答を最新の Web 情報でグラウンディングする
  • 出典の引用付きリサーチアシスタントを構築する
  • 最近のニュースや動向を取得する
  • AI エージェントに Web 検索機能を追加する
  • 独自の検索インフラを維持することなく、検索拡張生成 (RAG) ワークフローを構築する

参考情報