Skip to content

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

結果の制御

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

これらの設定は、返す結果の件数と、必要な最低スコアを制御します。フォルダーやカテゴリなどのメタデータ属性で結果を絞り込む場合は、フィルタリング を参照してください。

マッチしきい値

match_threshold は、チャンクが結果に入るために必要な、最低のベクトル類似度スコアです。しきい値の範囲は 0 から 1 です。このしきい値はベクトル類似度スコアに対して効きます。応答で返る融合スコアではありません。

  • しきい値を上げるとフィルタが厳しくなり、類似度の高い一致だけが返ります。
  • しきい値を下げると一致の範囲が広がり、再現率は上がりますが、適合率が下がることがあります。

結果の最大件数

max_num_results は、返す上位一致チャンクの件数です。上限は 50 です。

  • 複数ドキュメントを横断して要約したい場合は、値を上げます。ただしモデルへの入力が増えると、レイテンシとコストが上がることがあります。
  • 文脈を抑えた短い回答が欲しい場合は、値を下げます。

組み合わせの動き

  1. クエリは、設定した埋め込みモデルで埋め込まれます。
  2. 検索インデックスが照会されます。ハイブリッド検索 では、ベクトル結果とキーワード結果が 1 つの順位付きリストに融合されます。
  3. ベクトル類似度スコアが match_threshold 未満のチャンクは除外されます。
  4. 絞り込んだ結果は max_num_results 件までに制限され、生成ステップの文脈として渡されます。

しきい値を満たす結果がない場合、AI Search は応答を生成しません。

リランキング が有効な場合は、リランキングスコアでチャンクを絞り込む別の reranking.match_threshold を設定できます。

リクエスト単位の上書き

これらの値はインスタンス単位で設定でき、リクエストごとに上書きもできます。

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

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

役に立ちましたか?