𝗔𝗜 𝗠𝗲𝗺𝗼𝗿𝘆 𝗜𝘀 𝗔 𝗣𝗿𝗼𝗱𝘂𝗰𝘁 𝗦𝘁𝗮𝘁𝗲, 𝗡𝗼𝘁 𝗔 𝗣𝗿𝗼𝗺𝗽𝘁 𝗧𝗿𝗶𝗰𝗸

മെമ്മറിയോട് കൂടിയ AI ഉൽപ്പന്നങ്ങൾ നിർമ്മിക്കുന്നത് പ്രയാസകരമാണ്.

വസ്തുതകൾ (facts) സേവ് ചെയ്യുകയും അവ അടുത്ത പ്രോംപ്റ്റിൽ ഉൾപ്പെടുത്തുകയും ചെയ്യുക എന്നതാണ് എളുപ്പവഴി. ഉപയോക്താവിന്റെ താൽപ്പര്യങ്ങൾ ഓർത്തെടുക്കുന്നത് പോലുള്ള ലളിതമായ കാര്യങ്ങൾക്ക് ഇത് ഫലപ്രദമാണ്.

എന്നാൽ ഉപയോക്താക്കൾ വ്യക്തിഗത വിവരങ്ങൾ പങ്കുവെക്കുമ്പോൾ ഇത് പരാജയപ്പെടുന്നു. നിങ്ങളുടെ ഉൽപ്പന്നം സ്വപ്നങ്ങൾ, മാനസികാവസ്ഥകൾ അല്ലെങ്കിൽ സ്വകാര്യ ചിന്തകൾ എന്നിവ കൈകാര്യം ചെയ്യുന്നതാണെങ്കിൽ, മെമ്മറിയെ ഒരു ഒറ്റപ്പെട്ട ശേഖരമായി (single bucket) കാണാൻ കഴിയില്ല.

മെമ്മറിക്ക് വേണ്ടി ഒരു "on/off" സ്വിച്ച് മാത്രം ഉപയോഗിക്കുന്നത് അതിന്റെ സങ്കീർണ്ണതകളെ മറച്ചുവെക്കുന്നു. ഉപയോക്താവിന്റെ ഉടമസ്ഥതയിലുള്ള കാര്യങ്ങളിൽ നിന്നും മോഡൽ ഉപയോഗിക്കുന്ന കാര്യങ്ങളിൽ നിന്നും അവയെ വേർതിരിക്കേണ്ടതുണ്ട്.

ഒരു റിഫ്ലക്റ്റീവ് (reflective) AI ഉൽപ്പന്നം നിർമ്മിക്കുന്നതിനിടയിലാണ് ഞാൻ ഇത് മനസ്സിലാക്കിയത്. മെമ്മറി എന്നത് ഒരൊറ്റ കാര്യമല്ലെന്ന് ഞാൻ തിരിച്ചറിഞ്ഞു. അത് പല വ്യത്യസ്ത പാളികളാണ് (layers):

  • സംഭാഷണം (Conversation): അസംസ്‌കൃത ചാറ്റ് ഹിസ്റ്ററി.
  • സെഷൻ നോട്ടുകൾ (Session notes): ചാറ്റിന് ശേഷം തയ്യാറാക്കുന്ന സംഗ്രഹങ്ങൾ.
  • മെമ്മറി ഐറ്റങ്ങൾ (Memory items): ഉപയോക്താവ് അംഗീകരിക്കുന്ന പ്രത്യേക വസ്തുതകൾ.
  • യൂസർ കോൺടെക്സ്റ്റ് (User context): ഉപയോക്താവ് തന്നെ എഴുതിയ പശ്ചാത്തല വിവരങ്ങൾ.
  • റിട്രീവൽ എവിഡൻസ് (Retrieval evidence): ഒരു പ്രത്യേക ഘട്ടത്തിനായി സിസ്റ്റം തിരഞ്ഞെടുക്കുന്ന ഡാറ്റ.
  • പ്രോംപ്റ്റ് കോൺടെക്സ്റ്റ് (Prompt context): മോഡൽ യഥാർത്ഥത്തിൽ കാണുന്ന അവസാന ഡാറ്റ.

ഓരോ പാളിക്കും അതിന്റേതായ നിയമങ്ങൾ ആവശ്യമാണ്.

സേവ് ചെയ്ത മെമ്മറിയും പ്രോംപ്റ്റ് സമയത്തുള്ള മെമ്മറിയും തമ്മിൽ കൂട്ടിക്കലർത്തുന്നതാണ് ഏറ്റവും വലിയ തെറ്റ്. ഒരു ഉപയോക്താവിന് ഒരു മെമ്മറി ആസ്തി (memory asset) ഉണ്ടായിരിക്കാം, എന്നാൽ അത് ഇപ്പോൾ തന്നെ മോഡൽ ഉപയോഗിക്കണമെന്ന് അവർ ആഗ്രഹിച്ചേക്കില്ല.

ഇത് നിയന്ത്രിക്കാൻ നിങ്ങൾക്ക് ഒരു ആക്സസ് ലെയർ (access layer) ആവശ്യമാണ്. "മെമ്മറി ഓൺ ആണോ?" എന്ന് ചോദിക്കുന്നതിന് പകരം "ഈ മെമ്മറി പ്രോംപ്റ്റിൽ ഉൾപ്പെടുത്താൻ കഴിയുമോ?" എന്ന് ചോദിക്കുക.

ഈ വ്യത്യാസം പല പ്രശ്നങ്ങളും പരിഹരിക്കുന്നു:

  • ഒരു സൗജന്യ ഉപയോക്താവിന് എല്ലാ ചാറ്റുകളിലും അത് സജീവമാക്കാതെ തന്നെ ഡാറ്റ സേവ് ചെയ്യാം.
  • ഹിസ്റ്ററി ഡിലീറ്റ് ചെയ്യാതെ തന്നെ ഒരു ഉപയോക്താവിന് മെമ്മറി താൽക്കാലികമായി നിർത്താം (pause).
  • സബ്‌സ്‌ക്രിപ്ഷൻ മാറ്റങ്ങൾ വരുത്തുമ്പോൾ ഡാറ്റ സുരക്ഷിതമായി നിലനിർത്തിക്കൊണ്ടുതന്നെ മോഡൽ അത് ഉപയോഗിക്കുന്നത് തടയാം.

AI എന്തുകൊണ്ടാണ് കാര്യങ്ങൾ ഓർത്തെടുക്കുന്നത് എന്ന് വിശദീകരിക്കേണ്ടതുമുണ്ട്. രണ്ട് ആഴ്ച മുമ്പുള്ള ഒരു സ്വപ്നത്തെക്കുറിച്ച് AI പെട്ടെന്ന് സംസാരിച്ചാൽ, അതിന്റെ കാരണം വിശദീകരിക്കാൻ കഴിഞ്ഞില്ലെങ്കിൽ അത് ഭയപ്പെടുത്തുന്നതായി തോന്നാം.

നിങ്ങളുടെ സിസ്റ്റത്തിൽ മെറ്റാഡാറ്റ (metadata) ഉണ്ടായിരിക്കണം. ഒരു മെമ്മറി ഉപയോക്താവ് നേരിട്ട് എഴുതിയതാണോ അതോ മോഡൽ അനുമാനിച്ചതാണോ (model inference) എന്ന് അത് വ്യക്തമാക്കണം.

മെമ്മറിയെ ഒരു പ്രോംപ്റ്റ് ട്രിക്കായി കാണുന്നത് നിർത്തുക. അതിനെ ഒരു പ്രോഡക്റ്റ് സ്റ്റേറ്റായി കാണുക.

സെൻസിറ്റീവ് ആയതോ വ്യക്തിഗതമായതോ ആയ ഡാറ്റയ്ക്കായി നിങ്ങൾ നിർമ്മിക്കുകയാണെങ്കിൽ, ഈ നിയമങ്ങൾ പാലിക്കുക:

  • അസംസ്‌കൃത ട്രാൻസ്‌ക്രിപ്റ്റുകൾ (raw transcripts) ദീർഘകാല മെമ്മറിയായി ഉപയോഗിക്കരുത്.
  • പ്രധാനപ്പെട്ട മെമ്മറി ഐറ്റങ്ങൾക്കായി ഉപയോക്താവിന്റെ അനുമതി ആവശ്യമാക്കുക.
  • സേവ് ചെയ്ത ഡാറ്റയെ പ്രോംപ്റ്റിലേക്ക് എത്തുന്നതിൽ നിന്നും വേർതിരിക്കുക.
  • മുഴുവൻ അക്കൗണ്ടും ഡിലീറ്റ് ചെയ്യുന്നതിന് പകരം ഓരോ ഐറ്റങ്ങളും ഡിലീറ്റ് ചെയ്യാൻ ഉപയോക്താക്കളെ അനുവദിക്കുക.
  • ഡാറ്റ സൂക്ഷിക്കുന്നതും ഡിലീറ്റ് ചെയ്യുന്നതുമായ നിയമങ്ങൾ വ്യക്തവും ലളിതവും ആക്കുക.

മെമ്മറി ശക്തമാകുന്നതിന് മുമ്പ് അത് പരിശോധിക്കാവുന്നതാകണം.

Source: https://dev.to/woshiliyana/ai-memory-should-be-a-product-state-not-a-prompt-trick-4m20