← Vytvářejte agenty na Cloudflare / agents / tools
AI Search
Agents mohou používat AI Search k načtení relevantních informací z indexovaného obsahu a jejich použití k rozšíření volání modelů AI. AI Search za vás spravuje pipeline vyhledávání, včetně indexování, vyhledávání a volitelných dokončení chatu nad vaším obsahem.
Používejte AI Search, pokud chcete, aby agent:
- Prohledávejte dokumentaci k produktu, obsah podpory, uživatelské soubory nebo interní znalostní báze.
- Před voláním modelu načtěte relevantní úseky.
- Použijte spravované indexování místo budování vlastní infrastruktury pro vyhledávání.
- Dotazujte se na obsah z bucketu R2, webu nebo nahraných souborů.
Základní vzor
Navažte AI Search na svůj Worker a poté se z metody agenta dotazujte na danou instanci.
import { Agent, callable } from "agents";
export class SearchAgent extends Agent {
@callable()
async searchKnowledge(query) {
const instance = this.env.AI_SEARCH.get("my-instance");
const results = await instance.search({
messages: [{ role: "user", content: query }],
});
return results;
}
}import { Agent, callable } from "agents";
type Env = {
AI_SEARCH: AiSearchNamespace;
};
export class SearchAgent extends Agent<Env> {
@callable()
async searchKnowledge(query: string) {
const instance = this.env.AI_SEARCH.get("my-instance");
const results = await instance.search({
messages: [{ role: "user", content: query }],
});
return results;
}
}Pro generování odpovědi použijte chatCompletions() k načtení relevantního obsahu a vygenerování odpovědi v jediném volání.
const instance = this.env.AI_SEARCH.get("my-instance");
const response = await instance.chatCompletions({
messages: [{ role: "user", content: "How do I deploy an Agent?" }],
model: "@cf/meta/llama-3.3-70b-instruct-fp8-fast",
ai_search_options: {
retrieval: {
max_num_results: 5,
},
},
});const instance = this.env.AI_SEARCH.get("my-instance");
const response = await instance.chatCompletions({
messages: [{ role: "user", content: "How do I deploy an Agent?" }],
model: "@cf/meta/llama-3.3-70b-instruct-fp8-fast",
ai_search_options: {
retrieval: {
max_num_results: 5,
},
},
});Konfigurace
Použijte ai_search_namespaces vazbu, pokud agent potřebuje přistupovat k instancím AI Search podle názvu.
{
"ai_search_namespaces": [
{
"binding": "AI_SEARCH",
"namespace": "default",
"remote": true
}
]
}[[ai_search_namespaces]]
binding = "AI_SEARCH"
namespace = "default"
remote = truePoužijte remote: true k dotazování nasazených instancí AI Search během lokálního vývoje pomocí wrangler dev.