INTEGRITY Dokumentace

Mezipaměť podobnosti

Ukládání podobnosti do mezipaměti v AI Search umožňuje zpřístupňovat odpovědi z mezipaměti Cloudflare pro dotazy podobné předchozím požadavkům, místo vytváření nových jedinečných odpovědí pro každý požadavek. To zrychluje dobu odezvy a snižuje náklady díky opětovnému použití odpovědí na otázky s podobným významem.

Jak to funguje

Na rozdíl od základního ukládání do mezipaměti, které pro každý požadavek vytvoří novou odpověď, probíhá při přijetí požadavku s ukládáním podobnosti do mezipaměti toto:

  1. AI Search zkontroluje, zda podobné prompt (na základě zvoleného prahu) už byl dříve zodpovězen.
  2. Pokud je nalezena shoda, okamžitě vrátí odpověď uloženou v mezipaměti.
  3. Pokud není nalezena žádná shoda, vygeneruje novou odpověď a uloží ji do mezipaměti.

Chcete-li zjistit, zda odpověď pochází z mezipaměti, zkontrolujte cf-aig-cache-status hlavička: HIT pro uložené v mezipaměti a MISS pro nové.

Na co dát pozor při používání mezipaměti podobnosti

Při používání ukládání podobnosti do mezipaměti zvažte následující chování:

Jak funguje porovnávání podobnosti

Mezipaměť podobnosti AI Search používá MinHash a Locality-Sensitive Hashing (LSH) a najde i znovu použije odpovědi pro podobně formulované dotazy.

Zde je, jak to funguje, když přijde nový prompt:

  1. Prompt se rozdělí na malé překrývající se části slov (tzv. shingles), například „what's the“ nebo „the weather.“
  2. Tyto shingly se pomocí MinHash převedou na „otisk“ (fingerprint). Čím větší je překryv dvou promptů, tím podobnější budou jejich otisky.
  3. Otisky (fingerprinty) se ukládají do segmentů LSH, které AI Search pomáhají rychle najít podobné výzvy, aniž by musel porovnávat úplně každou z nich.
  4. Pokud je předchozí prompt ve stejném bucketu dostatečně podobný (podle vámi nastaveného prahu), AI Search znovu použije jeho odpověď uloženou v mezipaměti.

Zvolte prahovou hodnotu

Práh podobnosti určuje, jak blízké si dva prompty musí být, aby se využila odpověď uložená v mezipaměti. Práh můžete nastavit na úrovni instance, nebo ho přepsat pro jednotlivý požadavek.

Práh Hodnota API Popis Příklad shody
Přesná shoda super_strict_match Pouze téměř identické shody „Jaké je dnes počasí?“ odpovídá „Jaké je dnes počasí?“
Silná close_enough (výchozí) Vysoká sémantická podobnost „Jaké je dnes počasí?“ odpovídá „Jaké bude dnes počasí?“
Široké flexible_friend Střední shoda, více výsledků „Jaké je dnes počasí?“ odpovídá „Řekni mi dnešní počasí“
Volné anything_goes Nízká podobnost, maximální opětovné využití „Jaké je dnes počasí?“ odpovídá „Ukaž mi předpověď“

Nastavení doby trvání mezipaměti

Nastavte cache_ttl při vytváření nebo aktualizaci instance, abyste určili, jak dlouho si instance uchovává odpovědi v mezipaměti. Povolené hodnoty jsou:

Doba trvání Hodnota API
10 minut 600
30 minut 1800
1 hodina 3600
2 hodiny 7200
6 hodin 21600
12 hodin 43200
24 hodin 86400
48 hodin 172800
72 hodin 259200
6 dní 518400

Vymazání uložených odpovědí z mezipaměti

Chcete-li okamžitě vymazat všechny uložené odpovědi instance z mezipaměti, použijte operaci vymazání mezipaměti:

curl -X POST "https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/ai-search/instances/$INSTANCE_NAME/purge_cache" \
  -H "Authorization: Bearer $CLOUDFLARE_API_TOKEN"

Vymazání mezipaměti změní interní klíč mezipaměti instance, takže nové dotazy nebudou znovu používat dříve uložené odpovědi.

Uložené odpovědi můžete také vymazat z mezipaměti na stránce nastavení instance v Cloudflare dashboardu.

Přepsání mezipaměti pro jednotlivý požadavek

Nastavení mezipaměti na úrovni instance můžete přepsat pro jednotlivé požadavky pomocí cache parametr v ai_search_options:

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

const results = await instance.search({
	messages: [{ role: "user", content: "What is Cloudflare?" }],
	ai_search_options: {
		cache: {
			enabled: true,
			cache_threshold: "flexible_friend",
		},
	},
});