𝗔𝗱𝗱𝗶𝗻𝗴 𝗠𝗲𝗺𝗼𝗿𝘆 𝘁𝗼 𝘁𝗵𝗲 𝗔𝗴𝗲𝗻𝘁
ఒక AI ఏజెంట్ను నిర్మించడానికి కేవలం ఒక మోడల్ మాత్రమే సరిపోదు. అది మీరు ఎవరో గుర్తుంచుకునే మార్గం కూడా కావాలి.
AWS Briefing Agent నిర్మాణానికి సంబంధించిన నా సిరీస్లో, స్టేట్లెస్ (stateless) ఇంటరాక్షన్ల నుండి వ్యక్తిగతీకరించిన అనుభవాలకు (personalized experiences) ఎలా మారవచ్చో నేను పరిశోధిస్తున్నాను.
స్టాండర్డ్ microVMల సమస్య ఏమిటంటే అవి స్టేట్లెస్ (stateless). ఒక సెషన్ ముగిసినప్పుడు, ఆ ఎన్విరాన్మెంట్ (environment) తొలగించబడుతుంది. ఇది డేటా లీకేజీని నిరోధిస్తుంది, కానీ ఏజెంట్ ప్రతిదీ మర్చిపోవడానికి కూడా కారణమవుతుంది. మెమరీ లేకపోతే, వినియోగదారుడు ప్రతిసారి లాగిన్ అయినప్పుడు తన ప్రాధాన్యతలను (preferences) మళ్ళీ మళ్ళీ చెప్పాల్సి ఉంటుంది.
నేను దీనిని AgentCore Memory మరియు Strands Agents ఉపయోగించి పరిష్కరించాను.
ఈ ఆర్కిటెక్చర్ ఎలా పనిచేస్తుందో ఇక్కడ ఉంది:
- Short-term memory: చాట్ సమయంలో సందర్భాన్ని (context) కొనసాగించడానికి 90 రోజుల వరకు ముడి ఇంటరాక్షన్లను (raw interactions) నిల్వ చేస్తుంది.
- Long-term memory: సంభాషణలను శాశ్వత జ్ఞానంగా మార్చడానికి రెండు నిర్దిష్ట వ్యూహాలను (strategies) ఉపయోగిస్తుంది.
- Semantic Strategy: వినియోగదారుడు ప్రొడక్షన్లో ఏ AWS సర్వీసులను ఉపయోగిస్తున్నారో వంటి వాస్తవ డేటాను (factual data) సంగ్రహిస్తుంది.
- User Preference Strategy: సర్వర్లెస్ టూల్స్ పట్ల ఆసక్తి వంటి శైలులు మరియు ఆసక్తులను గుర్తిస్తుంది.
డేటాను సురక్షితంగా ఉంచడానికి, సిస్టమ్ నేమ్స్పేస్లను (namespaces) ఉపయోగిస్తుంది. {actorId} వేరియబుల్ను ఉపయోగించడం ద్వారా, ఒక వినియోగదారుని డేటా మరొక వినియోగదారుని సెషన్లోకి లీక్ అవ్వకుండా నేను నిర్ధారిస్తాను.
సురక్షితమైన అథెంటికేషన్ (authentication) కోసం నేను AWS Cognitoని కూడా అనుసంధానించాను. ఏజెంట్ గుర్తింపును ధృవీకరించడానికి JWT టోకెన్లను వాలిడేట్ చేస్తుంది. ధృవీకరించబడిన తర్వాత, సిస్టమ్ టోకెన్ నుండి ప్రత్యేకమైన 'sub' క్లెయిమ్ను సంగ్రహిస్తుంది. ఈ ID 'actor_id'గా మారుతుంది, దీనిని ఏజెంట్ సరైన మెమరీ రికార్డులను పొందడానికి ఉపయోగిస్తుంది.
ఈ ఇంటిగ్రేషన్ చాలా సులభంగా (seamless) ఉంటుంది. AgentCoreMemorySessionManagerని ఉపయోగించడం ద్వారా, ఏజెంట్ స్వయంచాలకంగా:
- Short-term memory నుండి సంభాషణ చరిత్రను లోడ్ చేస్తుంది.
- సంబంధిత వాస్తవాలు మరియు ప్రాధాన్యతల కోసం Long-term memoryలో వెతుకుతుంది.
- ప్రతిస్పందించే ముందు ఆ సందర్భాన్ని (context) ఏజెంట్ స్టేట్లోకి ఇంజెక్ట్ చేస్తుంది.
దీని ఫలితంగా ఏజెంట్ చాలా వ్యక్తిగతంగా అనిపిస్తుంది. మీరు మళ్ళీ మళ్ళీ చెప్పాల్సిన అవసరం లేకుండానే, అది మీ నైపుణ్య స్థాయిని మరియు మీ నిర్దిష్ట AWS ఆసక్తులను గుర్తిస్తుంది.
Source: https://dev.to/aws-heroes/adding-memory-to-the-agent-181k
Optional learning community: https://t.me/GyaanSetuAi