Merge branch 'master' into feature/weaviate-memory

This commit is contained in:
cs0lar
2023-04-13 06:23:36 +01:00
16 changed files with 93 additions and 23 deletions

View File

@@ -56,6 +56,7 @@ def get_memory(cfg, init=False):
def get_supported_memory_backends():
return supported_memory
__all__ = [
"get_memory",
"LocalCache",

View File

@@ -28,10 +28,20 @@ class LocalCache(MemoryProviderSingleton):
def __init__(self, cfg) -> None:
self.filename = f"{cfg.memory_index}.json"
if os.path.exists(self.filename):
with open(self.filename, 'rb') as f:
loaded = orjson.loads(f.read())
self.data = CacheContent(**loaded)
try:
with open(self.filename, 'w+b') as f:
file_content = f.read()
if not file_content.strip():
file_content = b'{}'
f.write(file_content)
loaded = orjson.loads(file_content)
self.data = CacheContent(**loaded)
except orjson.JSONDecodeError:
print(f"Error: The file '{self.filename}' is not in JSON format.")
self.data = CacheContent()
else:
print(f"Warning: The file '{self.filename}' does not exist. Local memory would not be saved to a file.")
self.data = CacheContent()
def add(self, text: str):