- 优化知识库文件夹结构,增强可维护性 - 新增知识库管理器和工厂类,统一管理不同类型的知识库实例 - 实现知识库的基本操作接口,包括创建、更新和删除数据库 - 引入新的知识库实现类(ChromaKB、MilvusKB、LightRagKB),支持多种存储后端 - 增强文件路径验证,确保安全性 - 更新文档,提供新的知识库接口说明
24 lines
999 B
Python
24 lines
999 B
Python
import os
|
|
|
|
from ..config import config
|
|
from .implementations.chroma import ChromaKB
|
|
from .graph import GraphDatabase
|
|
from .factory import KnowledgeBaseFactory
|
|
from .manager import KnowledgeBaseManager
|
|
from .implementations.lightrag import LightRagKB
|
|
from .implementations.milvus import MilvusKB
|
|
|
|
# 注册知识库类型
|
|
KnowledgeBaseFactory.register("chroma", ChromaKB, {"description": "基于 ChromaDB 的轻量级向量知识库,适合开发和小规模"})
|
|
KnowledgeBaseFactory.register("milvus", MilvusKB, {"description": "基于 Milvus 的生产级向量知识库,适合高性能部署"})
|
|
KnowledgeBaseFactory.register("lightrag", LightRagKB, {"description": "基于图检索的知识库,支持实体关系构建和复杂查询"})
|
|
|
|
# 创建知识库管理器
|
|
work_dir = os.path.join(config.save_dir, "knowledge_base_data")
|
|
knowledge_base = KnowledgeBaseManager(work_dir)
|
|
|
|
# 创建图数据库实例
|
|
graph_base = GraphDatabase()
|
|
|
|
__all__ = ["GraphDatabase", "knowledge_base", "graph_base"]
|