File size: 847 Bytes
045d607
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
class SessionMemory:
    def __init__(self):
        self.sessions = {}  # {session_key: [exchanges]}

    def ensure_session(self, session_key):
        if session_key not in self.sessions:
            self.sessions[session_key] = []

    def add_exchange(self, session_key, rep_input, persona_response, persona_question, objection, traits_snapshot):
        self.ensure_session(session_key)
        self.sessions[session_key].append({
            "rep_input": rep_input,
            "persona_response": persona_response,
            "persona_question": persona_question,
            "objection": objection,
            "traits_snapshot": traits_snapshot
        })

    def get_history(self, session_key):
        self.ensure_session(session_key)
        return self.sessions.get(session_key, [])

    def reset(self):
        self.sessions = {}