mirror of
https://github.com/xinnan-tech/xiaozhi-esp32-server.git
synced 2026-07-22 23:23:55 +08:00
23 lines
670 B
Python
23 lines
670 B
Python
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
|
|
|
|
@abstractmethod
|
|
async def save_memory(self, msgs):
|
|
"""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 set_role_id(self, role_id: str):
|
|
self.role_id = role_id |