Hoe cacheer je de meest voorkomende queries in RAG?
sobes.tech AI
Antwoord van AI
In Retrieval-Augmented Generation (RAG), het cachen van veelgestelde vragen helpt de vertragingen en de belasting op de vector database en het generatieve model te verminderen. Belangrijkste benaderingen:
-
Caching van zoekresultaten: sla de zoekresultaten op in de vector database voor vaak terugkerende vragen. Bij een herhaalde vraag, retourneer de opgeslagen documenten zonder opnieuw te zoeken.
-
Caching van gegenereerde antwoorden: als de vraag en de context overeenkomen, kan een eerder gegenereerd antwoord worden teruggegeven.
-
Gebruik van TTL (time-to-live): om te voorkomen dat de cache veroudert, stel een levensduur in voor de opgeslagen gegevens.
-
Hashing van vragen: voor snelle zoekopdrachten in de cache op basis van een op de hash van de vraag gebaseerde sleutel.
Voorbeeld in Python met een eenvoudige woordenboekcache:
cache = {}
def get_rag_response(query):
key = hash(query)
if key in cache:
return cache[key]
docs = vector_db.search(query)
answer = generator.generate(docs, query)
cache[key] = answer
return answer