cleanup kg
This commit is contained in:
@@ -134,3 +134,25 @@ STORAGES = {
|
|||||||
"FaissVectorDBStorage": ".kg.faiss_impl",
|
"FaissVectorDBStorage": ".kg.faiss_impl",
|
||||||
"QdrantVectorDBStorage": ".kg.qdrant_impl",
|
"QdrantVectorDBStorage": ".kg.qdrant_impl",
|
||||||
}
|
}
|
||||||
|
|
||||||
|
def verify_storage_implementation(
|
||||||
|
storage_type: str, storage_name: str
|
||||||
|
) -> None:
|
||||||
|
"""Verify if storage implementation is compatible with specified storage type
|
||||||
|
|
||||||
|
Args:
|
||||||
|
storage_type: Storage type (KV_STORAGE, GRAPH_STORAGE etc.)
|
||||||
|
storage_name: Storage implementation name
|
||||||
|
|
||||||
|
Raises:
|
||||||
|
ValueError: If storage implementation is incompatible or missing required methods
|
||||||
|
"""
|
||||||
|
if storage_type not in STORAGE_IMPLEMENTATIONS:
|
||||||
|
raise ValueError(f"Unknown storage type: {storage_type}")
|
||||||
|
|
||||||
|
storage_info = STORAGE_IMPLEMENTATIONS[storage_type]
|
||||||
|
if storage_name not in storage_info["implementations"]:
|
||||||
|
raise ValueError(
|
||||||
|
f"Storage implementation '{storage_name}' is not compatible with {storage_type}. "
|
||||||
|
f"Compatible implementations are: {', '.join(storage_info['implementations'])}"
|
||||||
|
)
|
@@ -8,7 +8,7 @@ from datetime import datetime
|
|||||||
from functools import partial
|
from functools import partial
|
||||||
from typing import Any, AsyncIterator, Callable, Iterator, cast, final
|
from typing import Any, AsyncIterator, Callable, Iterator, cast, final
|
||||||
|
|
||||||
from lightrag.kg import STORAGE_ENV_REQUIREMENTS, STORAGE_IMPLEMENTATIONS, STORAGES
|
from lightrag.kg import STORAGE_ENV_REQUIREMENTS, STORAGES, verify_storage_implementation
|
||||||
|
|
||||||
from .base import (
|
from .base import (
|
||||||
BaseGraphStorage,
|
BaseGraphStorage,
|
||||||
@@ -44,6 +44,7 @@ from .utils import (
|
|||||||
encode_string_by_tiktoken,
|
encode_string_by_tiktoken,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
# TODO: TO REMOVE @Yannick
|
||||||
config = configparser.ConfigParser()
|
config = configparser.ConfigParser()
|
||||||
config.read("config.ini", "utf-8")
|
config.read("config.ini", "utf-8")
|
||||||
|
|
||||||
@@ -272,7 +273,7 @@ class LightRAG:
|
|||||||
|
|
||||||
for storage_type, storage_name in storage_configs:
|
for storage_type, storage_name in storage_configs:
|
||||||
# Verify storage implementation compatibility
|
# Verify storage implementation compatibility
|
||||||
self.verify_storage_implementation(storage_type, storage_name)
|
verify_storage_implementation(storage_type, storage_name)
|
||||||
# Check environment variables
|
# Check environment variables
|
||||||
# self.check_storage_env_vars(storage_name)
|
# self.check_storage_env_vars(storage_name)
|
||||||
|
|
||||||
@@ -1462,27 +1463,6 @@ class LightRAG:
|
|||||||
|
|
||||||
return result
|
return result
|
||||||
|
|
||||||
def verify_storage_implementation(
|
|
||||||
self, storage_type: str, storage_name: str
|
|
||||||
) -> None:
|
|
||||||
"""Verify if storage implementation is compatible with specified storage type
|
|
||||||
|
|
||||||
Args:
|
|
||||||
storage_type: Storage type (KV_STORAGE, GRAPH_STORAGE etc.)
|
|
||||||
storage_name: Storage implementation name
|
|
||||||
|
|
||||||
Raises:
|
|
||||||
ValueError: If storage implementation is incompatible or missing required methods
|
|
||||||
"""
|
|
||||||
if storage_type not in STORAGE_IMPLEMENTATIONS:
|
|
||||||
raise ValueError(f"Unknown storage type: {storage_type}")
|
|
||||||
|
|
||||||
storage_info = STORAGE_IMPLEMENTATIONS[storage_type]
|
|
||||||
if storage_name not in storage_info["implementations"]:
|
|
||||||
raise ValueError(
|
|
||||||
f"Storage implementation '{storage_name}' is not compatible with {storage_type}. "
|
|
||||||
f"Compatible implementations are: {', '.join(storage_info['implementations'])}"
|
|
||||||
)
|
|
||||||
|
|
||||||
def check_storage_env_vars(self, storage_name: str) -> None:
|
def check_storage_env_vars(self, storage_name: str) -> None:
|
||||||
"""Check if all required environment variables for storage implementation exist
|
"""Check if all required environment variables for storage implementation exist
|
||||||
|
Reference in New Issue
Block a user