ReMe/memory_scope/db/base_db.py
2024-06-19 14:27:34 +08:00

38 lines
No EOL
872 B
Python

from abc import ABCMeta, abstractmethod
from memory_scope.models.base_model import BaseModel
class BaseDBClient(metaclass=ABCMeta):
def __init__(self, index_name: str, embedding_model: BaseModel, content_key: str = "text", **kwargs):
self.index_name: str = index_name
self.embedding_model: BaseModel = embedding_model
self.content_key: str = content_key
self.kwargs: dict = kwargs
@abstractmethod
def retrieve(self, text: str, limit_size: int):
"""
:param text:
:param limit_size:
:return:
"""
@abstractmethod
def insert(self, text: str):
""" TODO 是否overwrite
:return:
"""
@abstractmethod
def insert_batch(self):
"""
:return:
"""
@abstractmethod
def delete(self):
"""
:return:
"""