wangzhibo
2026-10-08 220e4fab27b7f419b3e89e2f2d28ae789aac09d7
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
from abc import ABC, abstractmethod
from config.logger import setup_logging
 
TAG = __name__
logger = setup_logging()
 
 
class MemoryProviderBase(ABC):
    def __init__(self, config):
        self.config = config
        self.role_id = None
 
    def set_llm(self, llm):
        self.llm = llm
 
    @abstractmethod
    async def save_memory(self, msgs, session_id=None):
        """Save a new memory for specific role and return memory ID"""
        print("this is base func", msgs)
 
    @abstractmethod
    async def query_memory(self, query: str) -> str:
        """Query memories for specific role based on similarity"""
        return "please implement query method"
 
    def init_memory(self, role_id, llm, **kwargs):
        self.role_id = role_id
        self.llm = llm