Spre deosebire de un cache tradițional bazat pe chei exacte de tip hash (Redis string), un Cache Semantic returnează un răspuns precalculat dacă similitudinea vectorială a noii întrebări cu o întrebare anterioară depășește un prag strict (de regulă 0.95 - 0.98).
Pentru a împiedica acumularea necontrolată a datelor și returnarea răspunsurilor expirate, se aplică politici stricte de evacuare:
- TTL (Time-To-Live): Expirarea automată a înregistrărilor după un interval stabilit (ex: 24 de ore).
- LRU (Least Recently Used): Evacuarea perechilor întrebare-răspuns cel mai rar accesate atunci când memoria alocată cache-ului atinge limita maximă.
from gptcache import cache
from gptcache.manager import get_data_manager
# Configurare cache semantic cu prag de similitudine și evacuare
data_manager = get_data_manager(
data_path="sqlite_data.db",
vector_path="faiss_index.index",
max_size=10000,
clean_size=1000 # Evacuează cele mai vechi 1000 când se atinge limita
)
Calibrarea corectă a pragului de similitudine este esențială: un prag prea scăzut (ex: 0.85) va returna răspunsuri incorecte la întrebări nuanțate diferit.
Întrebări & Exemple practice:
Politici de Evacuare și TTL în Cache-ul Semantic (LRU, LFU și Praguri)Ai o întrebare despre Politici de Evacuare și TTL în Cache-ul Semantic (LRU, LFU și Praguri) sau ai descoperit un truc, prompt sau fragment de cod util? Distribuie-l cu ceilalți membri ai comunității!
Fii primul care pune o întrebare sau distribuie un fragment de cod / prompt!
Nu au fost adăugate încă întrebări sau resurse pentru această pagină. Dacă ai testat un prompt sau ai un snippet util, adaugă-l mai jos pentru comunitate.