𝗪𝗵𝘆 𝗔𝗜 𝗖𝗵𝗮𝗿𝗮𝗰𝘁𝗲𝗿𝘀 𝗙𝗼𝗿𝗴𝗲𝘁 𝗧𝗵𝗲𝗶𝗿 𝗜𝗱𝗲𝗻𝘁𝗶𝘁𝘆
तुम्ही एक पात्र तयार करण्यासाठी दोन तास खर्च करता. तीस संवादानंतर (turns), ते पात्र स्वतःचे नाव विसरते. ते एखाद्या सामान्य सहाय्यकासारखे (generic assistant) वागू लागते.
बहुतेक लोकांना वाटते की AI ची स्मरणशक्ती कमकुवत आहे. ही कल्पना चुकीची आहे.
समस्या context window मध्ये आहे.
Chat मॉडेल्स stateless असतात. प्रत्येक वेळी तुम्ही संदेश पाठवल्यावर, ॲप system prompt, पात्राचा तपशील आणि तुमच्या अलीकडील चॅटचा इतिहास पुन्हा मॉडेलकडे पाठवते.
ज्याला तुम्ही मेमरी म्हणता, तो केवळ त्या इनपुट विंडोमध्ये असलेला इतिहास असतो.
जेव्हा चॅट खूप लांब होते, तेव्हा जुने संदेश विंडोच्या बाहेर पडतात. ४१ व्या संवादासाठी जागा करण्यासाठी १२ व्या संवादातील तपशील नाहीसा होतो. मॉडेल काहीही विसरत नाही. ॲप फक्त त्याला ती माहिती दाखवणे थांबवते.
मोठा context window असणे हा यावरचा उपाय नाही.
मोठ्या विंडोमुळे दोन समस्या निर्माण होतात:
- खर्च आणि वेग: विंडोचा आकार दुप्पट केल्यामुळे compute needs लक्षणीयरीत्या वाढतात. उत्तरे जलद आणि स्वस्त ठेवण्यासाठी ॲप्स अनेकदा विंडो मर्यादित ठेवतात.
- Middle degradation: संशोधनानुसार, मॉडेल्स लांब मजकुराच्या सुरुवातीला किंवा शेवटी तथ्ये (facts) चांगल्या प्रकारे शोधू शकतात. मजकुराच्या मध्यभागी असलेली तथ्ये त्यांच्याकडून सुटतात.
सर्वोत्तम ॲप्स केवळ विंडोच्या आकारावर अवलंबून नसतात. ते दोन विशिष्ट पद्धतींचा वापर करतात:
- Recursive summarization: ॲप जुन्या संदेशांचे संक्षिप्त सारांशामध्ये रूपांतर करते. यामुळे जास्त जागा न वापरता मुख्य तथ्ये कायम राहतात.
- Retrieval: ॲप जुने संदेश डेटाबेसमध्ये साठवते. जेव्हा तुम्हाला गरज असते, तेव्हा ते फक्त संबंधित तथ्ये बाहेर काढते. Lorebooks याच पद्धतीने काम करतात.
एक चांगले ॲप आणि एक वाईट ॲप यातील फरक त्यांच्या architecture मध्ये असतो. एक memory layer वापरते, तर दुसरे केवळ एका कच्च्या विंडोवर असलेले पातळ आवरण (thin wrapper) असते.
जर तुमचे पात्र त्याचे व्यक्तिमत्व गमावत असेल, तर मोठे मॉडेल वापरू नका. रचना बदला. जुन्या संवादांचा सारांश तयार करा. महत्त्वाच्या गोष्टी retrieve करा.
Context window कडे hard drive प्रमाणे नाही, तर cache प्रमाणे वागा.
Optional learning community: https://t.me/GyaanSetuAi