diff --git a/settings.py b/settings.py index 306371f..eab1350 100644 --- a/settings.py +++ b/settings.py @@ -16,3 +16,4 @@ class Settings: CHUNK_OVERLAP = os.getenv("CHUNK_OVERLAP") K = os.getenv("K") CHROMA_NAME_INDEX = os.getenv("CHROMA_NAME_INDEX") + MAX_MEMORY = os.getenv("MAX_MEMORY") diff --git a/src/services/agent.py b/src/services/agent.py index 994b014..c8f2bb9 100644 --- a/src/services/agent.py +++ b/src/services/agent.py @@ -37,6 +37,8 @@ def memory(self): if self.user_id in dict_history.keys(): full_chat = dict_history[self.user_id][self.chat_id]['full_chat'] memory = [(reply['role'], reply['content']) for reply in full_chat] + if len(memory) > int(settings.MAX_MEMORY): + memory = [memory[0]] + memory[-10:] return memory else: return []