Descriere & Utilizare
Diferența dintre QueryEngine și ChatEngine este memoria conversației. Dacă în QueryEngine întrebi ‘Ce este produsul X?’ și apoi ‘Cât costă?’, a doua întrebare va eșua deoarece nu știe la ce se referă ‘cât costă’.
În modul recomandat chat_mode='condense_plus_context', ChatEngine face un pas extrem de inteligent: ia istoricul discuției și ultima ta replică (‘Și cât costă cel de-al doilea?’) și le rescrie într-o întrebare de sine stătătoare (‘Care este prețul abonamentului Business menționat anterior?’) înainte de a căuta în baza de date vectorială!
Gestionează automat bufferul de memorie (ChatMemoryBuffer) astfel încât să nu depășească fereastra de context a modelului.
Cum să o reții ușor
💡 Ca diferența dintre un motor de căutare unde fiecare căutare e luată de la zero și un dialog real cu un vânzător din magazin care ține minte despre ce laptop discutai acum 10 secunde.
Opțiuni și parametri tehnici
- Condensează istoricul de chat + ultimul mesaj într-un query autonom de căutare.
- Extrage documentele relevante din
VectorStoreIndexfolosind query-ul condensat. - Generează răspunsul final având în prompt atât documentele extrase, cât și istoricul conversației.
Exemple practice și cazuri de utilizare
- Conversație în regim streaming:
streaming_res = chat_engine.stream_chat('Explică-mi mai detaliat primul punct'); streaming_res.print_response_stream() - Resetare conversație:
chat_engine.reset()(șterge memoria sesiunii curente)
Sfaturi de configurare & capcane
Folosește întotdeauna chat_mode='condense_plus_context' pentru aplicații RAG conversaționale. Este cel mai rapid și mai precis mod din LlamaIndex.
Comenzi și ghiduri înrudite
query-engine: Resursă asociată din acest modul.vector-store-index: Resursă asociată din acest modul.global-settings: Resursă asociată din acest modul.