Skip to content

非公式本サイトは非公式の日本語ドキュメントであり、Cloudflare 公式サイトではありません。最新情報はdevelopers.cloudflare.comをご確認ください。

キーワード検索

最終更新 Markdown で表示Agent セットアップ

クエリ語を正確に含むチャンクを照合するには、キーワード検索を有効にします。検索モードの概要は 検索モード を参照してください。

キーワード検索を有効にする

インスタンスの作成時または更新時に、index_method.keywordtrue に設定します。キーワード検索は単独でも使えます。ベクトル検索と組み合わせて ハイブリッド検索 にもできます。

フィールド デフォルト 説明
vector boolean true ベクトル(セマンティック)検索を有効にします。
keyword boolean false キーワード(BM25)検索を有効にします。

vector または keyword の少なくとも一方は true である必要があります。index_method を変更すると、コンテンツのフル再インデックスが実行されます。

const instance = await env.AI_SEARCH.create({
	id: "my-instance",
	index_method: {
		vector: false,
		keyword: true,
	},
});

キーワードトークナイザー

keyword_tokenizer フィールド(indexing_options 内)は、テキストをトークンに分割する方法を制御します。変更するとフル再インデックスが実行されます。

デフォルト 説明
porter はい Porter stemming を適用します。「running」が「run」に一致します。自然言語向けです。
trigram いいえ 重なる 3 文字のウィンドウです。「config」が「configuration」に一致します。コード向けです。

キーワード照合モード

keyword_match_mode フィールド(retrieval_options 内)は、複数のクエリ語の組み合わせ方法を制御します。

デフォルト 説明
and はい すべてのクエリ語が出現する必要があります。精度は高く、結果は少なくなります。
or いいえ いずれかのクエリ語で一致します。再現率は高く、結果は多くなります。

リクエストごとに keyword_match_mode を上書きできます。

const instance = env.AI_SEARCH.get("my-instance");

const results = await instance.search({
	messages: [{ role: "user", content: "What is Cloudflare?" }],
	ai_search_options: {
		retrieval: {
			keyword_match_mode: "or",
		},
	},
});

制限

キーワード検索を有効にしたインスタンスは、Workers Paid プランでインスタンスあたり最大 500,000 ファイルです。ベクトル検索のみのインスタンスは 1,000,000 ファイルです。制限の一覧は 制限と料金 を参照してください。

役に立ちましたか?