Spaces:
Sleeping
Sleeping
File size: 919 Bytes
47d8ef9 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | import os,json,datetime
class BuddyMemory:
def __init__(self,filename='memory.json'):
self.filename=filename
self.data=self._load()
def _load(self):
if os.path.exists(self.filename):
try:
return json.load(open(self.filename))
except:
return {}
return {}
def save(self):
json.dump(self.data, open(self.filename,'w'), indent=2)
def set_pref(self,user,k,v):
self.data.setdefault('users',{}).setdefault(user,{}).setdefault('prefs',{})[k]=v; self.save()
def add_message(self,user,role,text,name=None):
self.data.setdefault('users',{}).setdefault(user,{}).setdefault('conv',[]).append({'role':role,'text':text,'time':datetime.datetime.now().isoformat(),'name':name})
self.save()
def get_conversation(self,user):
return self.data.get('users',{}).get(user,{}).get('conv',[])
|