88from neo4j import GraphDatabase
99from pymilvus import connections , utility
1010
11+ from src import config
1112from src .knowledge .base import KnowledgeBase
1213from src .knowledge .indexing import process_file_to_markdown , process_url_to_markdown
1314from src .knowledge .utils .kb_utils import get_embedding_config , prepare_item_metadata
1415from src .utils import hashstr , logger
1516from src .utils .datetime_utils import shanghai_now
1617
17- LIGHTRAG_LLM_PROVIDER = os .getenv ("LIGHTRAG_LLM_PROVIDER" , "siliconflow" )
18- LIGHTRAG_LLM_NAME = os .getenv ("LIGHTRAG_LLM_NAME" , "zai-org/GLM-4.5-Air" )
19-
2018
2119class LightRagKB (KnowledgeBase ):
2220 """基于 LightRAG 的知识库实现"""
@@ -53,8 +51,8 @@ def delete_database(self, db_id: str) -> dict:
5351 """删除数据库,同时清除Milvus和Neo4j中的数据"""
5452 # Drop Milvus collection
5553 try :
56- milvus_uri = os .getenv ("MILVUS_URI" , "http://localhost:19530" )
57- milvus_token = os .getenv ("MILVUS_TOKEN" , "" )
54+ milvus_uri = os .getenv ("MILVUS_URI" ) or "http://localhost:19530"
55+ milvus_token = os .getenv ("MILVUS_TOKEN" ) or ""
5856 connection_alias = f"lightrag_{ hashstr (db_id , 6 )} "
5957
6058 connections .connect (alias = connection_alias , uri = milvus_uri , token = milvus_token )
@@ -73,9 +71,9 @@ def delete_database(self, db_id: str) -> dict:
7371 logger .error (f"Failed to drop Milvus collection { db_id } : { e } " )
7472
7573 # Delete Neo4j data
76- neo4j_uri = os .getenv ("NEO4J_URI" , "bolt://localhost:7687" )
77- neo4j_username = os .getenv ("NEO4J_USERNAME" , "neo4j" )
78- neo4j_password = os .getenv ("NEO4J_PASSWORD" , "0123456789" )
74+ neo4j_uri = os .getenv ("NEO4J_URI" ) or "bolt://localhost:7687"
75+ neo4j_username = os .getenv ("NEO4J_USERNAME" ) or "neo4j"
76+ neo4j_password = os .getenv ("NEO4J_PASSWORD" ) or "0123456789"
7977
8078 try :
8179 driver = GraphDatabase .driver (neo4j_uri , auth = (neo4j_username , neo4j_password ))
@@ -118,7 +116,7 @@ async def _create_kb_instance(self, db_id: str, kb_config: dict) -> LightRAG:
118116 if isinstance (metadata .get ("language" ), str ) and metadata .get ("language" ):
119117 addon_params .setdefault ("language" , metadata .get ("language" ))
120118 # 默认语言从环境变量读取,默认 English
121- addon_params .setdefault ("language" , os .getenv ("SUMMARY_LANGUAGE" , "English" ) )
119+ addon_params .setdefault ("language" , os .getenv ("SUMMARY_LANGUAGE" ) or "English" )
122120
123121 # 创建工作目录
124122 working_dir = os .path .join (self .work_dir , db_id )
@@ -181,10 +179,8 @@ def _get_llm_func(self, llm_info: dict):
181179 model_spec = f"{ llm_info ['provider' ]} /{ llm_info ['model_name' ]} "
182180 logger .info (f"Using user-selected LLM: { model_spec } " )
183181 else :
184- provider = LIGHTRAG_LLM_PROVIDER
185- model_name = LIGHTRAG_LLM_NAME
186- model_spec = f"{ provider } /{ model_name } "
187- logger .info (f"Using default LLM from environment: { provider } /{ model_name } " )
182+ model_spec = config .default_model
183+ logger .info (f"Using default LLM from environment: { model_spec } " )
188184
189185 model = select_model (model_spec = model_spec )
190186
0 commit comments