Sobes.tech
Middle — Senior

Kaip talpinti dažniausiai užduodamus užklausimus RAG?

sobes.tech AI

Atsakymas iš AI

Retrieval-Augmented Generation (RAG) sistemoje dažnai užduodamų klausimų kaupimas padeda sumažinti delsą ir apkrovą vektorinėje duomenų bazėje ir generatyviniame modelyje. Pagrindiniai požiūriai:

  • Paieškos rezultatų kaupimas: saugokite paieškos rezultatus vektorinėje bazėje dažnai kartojamų užklausų atveju. Kartojant užklausą, grąžinkite išsaugotus dokumentus be naujos paieškos.

  • Sugeneruotų atsakymų kaupimas: jei užklausa ir kontekstas sutampa, galima grąžinti anksčiau sugeneruotą atsakymą.

  • TTL (time-to-live) naudojimas: kad cache nebūtų pasenęs, nustatykite gyvavimo laiką saugomiems duomenims.

  • Užklausų hash'inimas: greitam paieškai cache pagal raktą, pagrįstą užklausos hash'u.

Pavyzdys Python kalba su paprastu žodynu kaip cache:

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