మోడల్కు గుర్తుండదు. మీకు ఉంటుంది.
Large Language Models (LLMs) కి మెమరీ ఉంటుందని నేను అనుకునేవాడిని.
ప్రతి చాట్ సెషన్ దాని స్వంత కాంటెక్స్ట్ను (context) నిల్వ చేస్తుంది అని నేను అనుకున్నాను. కానీ నేను పొరబడ్డాను.
LLMs స్టేట్లెస్ (stateless). ఒక రిక్వెస్ట్ నుండి మరొక రిక్వెస్ట్కు మోడల్ దేనినీ గుర్తుంచుకోదు.
మీరు చాట్ హిస్టరీని చూస్తున్నప్పుడు, మీరు మెసేజ్ల యొక్క ఒక అర్రే (array)ని చూస్తున్నారు. ఒక సంభాషణను సృష్టించడానికి, మీరు ప్రతి కొత్త ప్రాంప్ట్తో పాటు పూర్తి హిస్టరీని మోడల్కు తిరిగి పంపాలి.
మీరు SDKని ఉపయోగిస్తే, ఈ ప్రక్రియ మీకు తెలియకుండానే జరుగుతుంది. SDK ఆ సంక్లిష్టతను మీ కోసం చూసుకుంటుంది.
మీరు రా (raw) fetchని ఉపయోగిస్తే, మీకు అంతా కనిపిస్తుంది. హెడర్లు (headers), బాడీ (body), మరియు మెసేజ్ అర్రేని మీరే స్వయంగా నిర్వహించాల్సి ఉంటుంది.
కాంటెక్స్ట్ ఇలా పనిచేస్తుంది:
• మీరు ఒక మెసేజ్ పంపుతారు. • మోడల్ స్పందిస్తుంది. • మీరు ఆ రెండు మెసేజ్లను ఒక అర్రేలో సేవ్ చేస్తారు. • తదుపరి ప్రశ్న కోసం మీరు ఆ పూర్తి అర్రేని తిరిగి పంపుతారు.
ప్రస్తుత రిక్వెస్ట్లో మీరు పంపిన దానిని మాత్రమే మోడల్ తెలుసుకోగలదు. మిగిలినవన్నీ పోతాయి.
ఈ అర్రేని అర్థం చేసుకోవడమే AI డెవలప్మెంట్కు పునాది. RAG, sliding windows మరియు semantic search వంటి అధునాతన పద్ధతులకు ఇది ప్రారంభ స్థానం.
మీరు నమ్మదగిన AI టూల్స్ను నిర్మించాలనుకుంటే, అబ్స్ట్రాక్షన్స్ (abstractions) పై ఆధారపడటం ఆపండి. రా (raw) రిక్వెస్ట్లను చూడండి. హిస్టరీని మీరే నియంత్రించండి.
పూర్తి పోస్ట్: https://dev.to/marcochavezco/the-model-doesnt-remember-you-do-38jk