| from collections import defaultdict, deque | |
| MAX_TURNS = 6 # last N messages per user | |
| conversation_store = defaultdict( | |
| lambda: deque(maxlen=MAX_TURNS) | |
| ) | |
| def get_conversation(user_id: str): | |
| return list(conversation_store[user_id]) | |
| def add_message(user_id: str, role: str, content: str): | |
| conversation_store[user_id].append( | |
| {"role": role, "content": content} | |
| ) | |