はじめに
AI Search とは何ですか?
AI Search は、アプリケーションから Web 検索へのライブアクセスを提供する単一の Novita ゲートウェイです。各プロバイダーに個別に登録する代わりに、1 つの API key で Novita を呼び出し、リクエストごとに検索プロバイダーを選択できます。クイックスタート で全体像を確認してください。どのプロバイダーがサポートされていますか?
現在は Exa と Tavily です。それぞれ、プロバイダー独自のリクエストおよびレスポンス形式をそのまま反映するパススルーエンドポイントとして公開されています。クイックスタート エンドポイント一覧については。別途 Exa または Tavily のアカウントが必要ですか?
いいえ。Novita API キーがすべての AI Search リクエストを認証します。上流プロバイダーのキーやアカウントを管理する必要はありません。認証 & セットアップ
どのように認証しますか?
Novita API キーを Bearer トークンとして使用します:Authorization: Bearer <api_key>. 同じキーをすべてのプロバイダーで使用できます。キーを作成または管理するには、API キー管理.
AI Search 用の Novita SDK はありますか?
いいえ — そして必要ありません。AI Search はラップされた製品ではなく、インテグレーションです。各エンドポイントは、リクエストをプロバイダー(Exa または Tavily)に、そのプロバイダーのネイティブ形式で転送するパススルーです。つまり、確実な選択肢が 2 つあります。- プロバイダー自身の SDK を使用する。 SDK でカスタム base URL を設定できる場合は、対応するゲートウェイルートを指定し、Novita キーを渡します。たとえば、Exa Python SDK は受け付けます
base_url="https://api.novita.ai/v3/exa"。 クイックスタート で完全な例を確認できます。 - REST エンドポイントを直接呼び出します。 任意の HTTP クライアントで動作し、SDK は一切不要です。クイックスタート には、curl、Python、JavaScript の例が示されています。
コード構造を変更せずにプロバイダーを切り替えられますか?
ほとんどの場合は可能です。認証、ホスト、リクエストフローは同一のままです — 変更するのはルート (e.g./v3/tavily/search → /v3/exa/search) し、body をそのプロバイダーのフィールド名に合わせます(たとえば、Tavily の max_results Exa のものとの比較 numResults).
検索の挙動
結果はどのくらい新しいですか?
結果はライブのウェブコンテンツを反映します。時間に敏感な質問では、古いページを除外するために日付で制限してください: Tavily は公開していますtime_range および start_date/end_date; Exa は公開しています startPublishedDate/endPublishedDate.
信頼できるサイトに結果を制限するにはどうすればよいですか?
ドメインフィルターを使用します —include_domains/exclude_domains Tavily で、 includeDomains/excludeDomains Exa 上で — 信頼するソース内に取得を留めるためです。
search、extract、crawl の違いは何ですか?
- Search は、クエリから関連するページを見つけます。
- Extract / Contents は、すでに持っている URL からクリーンなテキストを取り出します。
- Crawl / Map は、リンクをたどってサイトから多数のページを収集または一覧化します。
AI Search はリンクだけでなく回答を生成できますか?
はい。Tavily Search は、次を設定すると LLM の回答を返します。include_answer, また Exa は専用の Answer エンドポイント。文言と引用を完全に制御するには、結果を取得し、LLM API 代わりに — ウェブに基づく回答.
制限とトラブルシューティング
レート制限は何ですか?
AI Search リクエストには、Novita プラットフォームの制限と、各アップストリームプロバイダー独自の制限の両方が適用されます。これらは、アカウントに紐づくプロバイダーのティアによって異なります。制限を超えると、API は返します429 Too Many Requests — バックオフして指数関数的な遅延で再試行します。これらの制限は LLM API レート制限。検索呼び出しは LLM クォータを消費しません。
400 エラーが発生するのはなぜですか?
パラメーターがプロバイダーのスキーマと一致していない可能性があります。そのプロバイダーのフィールド名を使用していることを確認してください — よくある原因は Tavily のmax_results Exa ルートに (これは想定しています numResults).