INTEGRITY Dokumentace

Vazba Workers (starší)

env.AI.autorag() je starší (legacy) API pro AI Search. Bude nadále fungovat, ale nové projekty by místo něj měly používat nové vazby AI Search. Podrobný návod na upgrade najdete v Migrace vazby Workers.

aiSearch()

Tato metoda vyhledá relevantní výsledky ve vašem zdroji dat a pomocí výchozího modelu a načteného kontextu vygeneruje odpověď:

const answer = await env.AI.autorag("my-autorag").aiSearch({
	query: "How do I train a llama to deliver coffee?",
	model: "@cf/meta/llama-3.3-70b-instruct-fp8-fast",
	rewrite_query: true,
	max_num_results: 2,
	ranking_options: {
		score_threshold: 0.3,
	},
	reranking: {
		enabled: true,
		model: "@cf/baai/bge-reranker-base",
	},
	stream: true,
});

Parametry

query string povinné

Vstupní dotaz.


model string volitelné

Model pro generování textu použitý ke generování odpovědi na dotaz. Seznam platných možností najdete v nastavení generačního modelu AI Search. Výchozí hodnota odpovídá generačnímu modelu vybranému v nastavení AI Search.


system_prompt string volitelné

Systémový prompt pro generování odpovědi.


rewrite_query boolean volitelné

Přepíše původní dotaz na dotaz optimalizovaný pro vyhledávání, aby se zlepšila přesnost vyhledávání. Výchozí hodnota: false.


max_num_results number volitelné

Maximální počet výsledků, které lze vrátit z databáze Vectorize. Výchozí hodnota: 10. Musí být mezi 1 a 50.


ranking_options object volitelné

Konfigurace pro přizpůsobení řazení výsledků. Výchozí hodnota je {}.

reranking object volitelné

Konfigurace pro přizpůsobení rerankingu. Výchozí hodnota je {}.

stream boolean volitelné

Vrátí proud výsledků, jakmile jsou k dispozici. Výchozí hodnota: false.

filters object volitelné

Omezte výsledky vyhledávání na základě metadat, jako je složka nebo datum, aby se načetl jen relevantní obsah. Další informace najdete v Filtrování metadat.

Odpověď

Toto je struktura odpovědi bez stream zapnuté.

{
	"object": "vector_store.search_results.page",
	"search_query": "How do I train a llama to deliver coffee?",
	"response": "To train a llama to deliver coffee:\n\n1. **Build trust** — Llamas appreciate patience (and decaf).\n2. **Know limits** — Max 3 cups per llama, per `llama-logistics.md`.\n3. **Use voice commands** — Start with \"Espresso Express!\"\n4.",
	"data": [
		{
			"file_id": "llama001",
			"filename": "llama/logistics/llama-logistics.md",
			"score": 0.45,
			"attributes": {
				"modified_date": 1735689600000,
				"folder": "llama/logistics/"
			},
			"content": [
				{
					"id": "llama001",
					"type": "text",
					"text": "Llamas can carry 3 drinks max."
				}
			]
		},
		{
			"file_id": "llama042",
			"filename": "llama/llama-commands.md",
			"score": 0.4,
			"attributes": {
				"modified_date": 1735689600000,
				"folder": "llama/"
			},
			"content": [
				{
					"id": "llama042",
					"type": "text",
					"text": "Start with basic commands like 'Espresso Express!' Llamas love alliteration."
				}
			]
		}
	],
	"has_more": false,
	"next_page": null
}

Tato metoda vyhledá výsledky ve vašem korpusu a vrátí ty relevantní:

const answer = await env.AI.autorag("my-autorag").search({
	query: "How do I train a llama to deliver coffee?",
	rewrite_query: true,
	max_num_results: 2,
	ranking_options: {
		score_threshold: 0.3,
	},
	reranking: {
		enabled: true,
		model: "@cf/baai/bge-reranker-base",
	},
});

Parametry

messages array povinné

Pole objektů zpráv. Každá zpráva obsahuje:


ai_search_options object volitelné

Přepsání chování vyhledávání a modelu pro jednotlivé požadavky. Podporuje následující vnořené možnosti:


Úplný seznam volitelných parametrů najdete v Referenční dokumentace k API Search.

Odpověď

{
	"object": "vector_store.search_results.page",
	"search_query": "How do I train a llama to deliver coffee?",
	"data": [
		{
			"file_id": "llama001",
			"filename": "llama/logistics/llama-logistics.md",
			"score": 0.45,
			"attributes": {
				"modified_date": 1735689600000,
				"folder": "llama/logistics/"
			},
			"content": [
				{
					"id": "llama001",
					"type": "text",
					"text": "Llamas can carry 3 drinks max."
				}
			]
		},
		{
			"file_id": "llama042",
			"filename": "llama/llama-commands.md",
			"score": 0.4,
			"attributes": {
				"modified_date": 1735689600000,
				"folder": "llama/"
			},
			"content": [
				{
					"id": "llama042",
					"type": "text",
					"text": "Start with basic commands like 'Espresso Express!' Llamas love alliteration."
				}
			]
		}
	],
	"has_more": false,
	"next_page": null
}