ఏజెంట్ మెమరీ: 7 రకాలు, మరియు 2 నిజంగా గుర్తుంచుకోవు

మీ ఏజెంట్‌కు మెమరీ సమస్య లేదు. దానికి ఏడు రకాల మెమరీ ఉన్నాయి. చాలా టీమ్‌లు కేవలం రెండు రకాలను మాత్రమే నిర్మిస్తాయి.

మీరు మొదటగా అర్థం చేసుకోవాల్సింది: మోడల్ దేనినీ గుర్తుంచుకోదు. ఒక LLM అనేది ఒక pure function. ఇది ఇన్‌పుట్‌ను తీసుకుని అవుట్‌పుట్‌ను ఇస్తుంది. ఇది కాల్స్ మధ్య ఎటువంటి state ను కలిగి ఉండదు. మెమరీలా అనిపించేది ప్రతి రిక్వెస్ట్‌తో పాటు హిస్టరీని మళ్ళీ పంపే ఒక లేయర్ మాత్రమే. ఆ టోకెన్ల కోసం మీరు ప్రతిసారీ చెల్లించాల్సి ఉంటుంది.

చాలా ఇంజనీరింగ్ ప్రయత్నాలు రెండు పద్ధతుల్లోనే ముగిసిపోతాయి: conversation history మరియు RAG. ఇవి ఏడు రకాలలో రెండు మాత్రమే. సమస్య ఏమిటంటే? ఇవి కాలక్రమేణా మీ ఏజెంట్‌ను మరింత తెలివైనదిగా చేయలేవు.

ఇక్కడ ఏడు రకాల మెమరీ ఉన్నాయి:

• Working: ప్రస్తుత context windowలో ఉన్నవన్నీ. • Semantic: వాస్తవాలు, ప్రాధాన్యతలు మరియు domain knowledge. • Episodic: గత సంఘటనల log మరియు ఏది పని చేసింది లేదా విఫలమైందో తెలిపే సమాచారం. • Procedural: నైపుణ్యాలు, workflows మరియు tool patterns. • Retrieval: similarity search ద్వారా జ్ఞానాన్ని పొందడం. • Parametric: మోడల్ weights లో అంతర్భాగమైన జ్ఞానం. • Prospective: భవిష్యత్తు ఉద్దేశ్యాలు మరియు scheduled tasks.

వీటిలో రెండు నిజమైన మెమరీ కావు. RAG అనేది కేవలం ఒక delivery mechanism మాత్రమే. ఇది ప్లంబింగ్ లాంటిది, నీరు కాదు. ఇది డేటాను ఒక స్టోర్ నుండి working memoryలోకి మారుస్తుంది. మీరు కేవలం ఒక vector databaseను మాత్రమే ఉపయోగిస్తే, మీరు పైపును నిర్మించి ద్రవాన్ని మర్చిపోయినట్లు అవుతుంది.

నిజంగా నేర్చుకోగల ఏజెంట్‌ను నిర్మించడానికి, మీకు consolidation loop అవసరం. అంటే episodic memoryని semantic memoryగా మార్చడం.

ఈ ప్రక్రియ ఇలా పనిచేస్తుంది:

  1. ఏజెంట్ ఒక సంఘటనను అనుభవిస్తుంది (Episodic).
  2. ఏజెంట్ అదే pattern అనేకసార్లు పునరావృతం కావడం గమనిస్తుంది.
  3. ఏజెంట్ ఆ patternను ఒక శాశ్వత నియమంగా మారుస్తుంది (Semantic).

ఇప్పుడు, ఏజెంట్ పన్నెండు ఉదాహరణల ద్వారా ఆలోచించాల్సిన అవసరం లేదు. అది కేవలం ఒక వాస్తవాన్ని వర్తింపజేస్తుంది.

మీ నిర్మాణాన్ని (build) ఎలా ప్రాధాన్యతపరచాలి:

  • Working memoryని ఒక బడ్జెట్‌లా నిర్వహించండి. ఇది మీకు అత్యధిక ఖర్చుతో కూడుకున్నది. summarization మరియు eviction పద్ధతులను ముందుగానే ఉపయోగించండి.
  • మీ స్టోర్‌లను వేరు చేయండి. వాస్తవాలు, సంఘటనలు మరియు నియమాలను వేర్వేరు చోట్ల ఉంచండి.
  • Prospective memory కోసం ఒక schedulerను ఉపయోగించండి. ఒక నిర్దిష్ట తేదీన జరగాల్సిన పనుల కోసం vector storeను ఉపయోగించకండి.
  • Parametric memory కోసం ఒక స్పష్టమైన గీత గీయండి. Reasoning కోసం మోడల్‌ను ఉపయోగించండి, కానీ వడ్డీ రేట్లు లేదా ఉత్పత్తి నియమాలు వంటి మారుతున్న డేటా (volatile data) కోసం మీ స్వంత స్టోర్‌లను ఉపయోగించండి.

నేడు చాలా ఏజెంట్‌లు కేవలం ఒక context window మరియు ఒక vector DB మాత్రమే. నిన్నటి తప్పులను రేపటి నియమాలుగా మార్చగలిగే ఏజెంట్‌లే విజయం సాధిస్తాయి.

Source: https://dev.to/shudiptotrafder/agent-memory-7-types-and-2-of-them-arent-memory-6oi

Optional learning community: https://t.me/GyaanSetuAi