exa-search について
exa-searchは、PythonまたはTypeScriptでExa検索を組み込む開発者向けのスキルリファレンスです。検索モード、フィルター、コンテンツ取得、SDKの使い方を説明し、ウェブ情報の検索と抽出を支援します。
主な機能
- 01auto、neural、keyword検索の使い分け
- 02ドメインと日付による絞り込み
- 03ページ本文、ハイライト、要約の取得
- 04PythonとTypeScriptのSDKパターン
活用シーン
- 01クエリに合う検索モードを選ぶ
- 02ドメインや公開日で検索結果を絞る
- 03ページ本文や関連スニペットを取得する
- 04PythonまたはTypeScriptのプロジェクトでExa検索を使う
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ ejirocodes/ agent-skills --skill exa-searchインストール後、Claude Code で/exa-searchを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/contents.mdfilters.mdsdk-patterns.mdsearch-modes.md詳細
Exa 検索の統合
クイックリファレンス
| トピック | 使用する場面 | リファレンス |
|---|---|---|
| 検索モード | 自動、ニューラル、キーワード検索から選ぶとき | search-modes.md |
| フィルター | ドメイン、日付、テキスト、カテゴリーで絞り込むとき | filters.md |
| コンテンツ | テキスト抽出、ハイライト、要約、ライブクロール | contents.md |
| SDK のパターン | Python(exa_py)と TypeScript(exa-js)の使用 | sdk-patterns.md |
基本的なパターン
基本的な検索(Python)
from exa_py import Exa
exa = Exa(api_key="your-api-key") # or set EXA_API_KEY env var
results = exa.search_and_contents(
"latest developments in quantum computing",
type="auto",
num_results=10,
text=True,
highlights=True
)
for result in results.results:
print(f"{result.title}: {result.url}")
print(result.text[:500])
基本的な検索(TypeScript)
import Exa from "exa-js";
const exa = new Exa(process.env.EXA_API_KEY);
const results = await exa.searchAndContents(
"latest developments in quantum computing",
{
type: "auto",
numResults: 10,
text: true,
highlights: true,
}
);
results.results.forEach((result) => {
console.log(`${result.title}: ${result.url}`);
});
フィルターを使った検索
results = exa.search_and_contents(
"AI startup funding rounds",
type="neural",
num_results=10,
include_domains=["techcrunch.com", "venturebeat.com"],
start_published_date="2024-01-01",
text={"max_characters": 2000},
summary=True
)
類似リンクを検索
similar = exa.find_similar_and_contents(
"https://example.com/interesting-article",
num_results=10,
exclude_source_domain=True,
text=True
)
検索モードの選択
| モード | 使用する場面 | 備考 |
|---|---|---|
auto | ほとんどのクエリでのデフォルト | Exa がニューラル検索とキーワード検索を自動で最適化します |
neural | 自然言語や概念的なクエリ | 「とは何か」「方法」「トピックの探索」に最適です |
keyword | 完全一致、技術用語、名前 | 特定の製品名、エラーコード、固有名詞に最適です |
よくある間違い
- 概念的なクエリに
keywordを使う - ニューラル検索は意図をより適切に理解します。自然言語の質問にはautoまたはneuralを使ってください text=Trueを設定しない - デフォルトでは検索結果として URL のみが返されます。text=Trueを指定してコンテンツを明示的にリクエストしてくださいhighlightsを無視する - ページ全体のテキストをダウンロードせずに関連する抜粋を取得するには、highlights=Trueを使ってください- API キーがない -
EXA_API_KEY環境変数を設定するか、コンストラクターに明示的に渡してください - 最初から絞り込みすぎる - 広範な検索から始め、その後にドメインや日付のフィルターを追加して絞り込んでください
summaryを使わない - RAG アプリケーションでは、summary=Trueを指定すると、ページ全体のテキストなしで簡潔なコンテキストを取得できます- auto モードでスコアが返ると想定する - 関連度スコアが返されるのは
type="neural"の場合のみです。auto モードではスコアは含まれません
コメント
Markdown 対応