提交最新代码。 代码动态执行存在一些问题,无法执行。

This commit is contained in:
2025-06-26 10:17:05 +08:00
parent 5acfd1f90b
commit 31224ba359
11 changed files with 273 additions and 199 deletions
+27 -5
View File
@@ -1,5 +1,6 @@
import logging
import asyncio
import os
logging.basicConfig(
level=logging.DEBUG, # 生产环境可改为 INFO 或 WARNING
@@ -17,19 +18,30 @@ httpx_logger.setLevel(logging.WARNING) # 设置httpcore及其子模块的级别
# 可选:禁用传播(防止被根logger处理)
httpx_logger.propagate = False
# 获取logger并设置级别
openai_logger = logging.getLogger("openai")
openai_logger.setLevel(logging.WARNING) # 设置httpcore及其子模块的级别
# 可选:禁用传播(防止被根logger处理)
openai_logger.propagate = False
# 获取logger并设置级别
langsmith_logger = logging.getLogger("langsmith.client")
langsmith_logger.setLevel(logging.WARNING) # 设置httpcore及其子模块的级别
# 可选:禁用传播(防止被根logger处理)
langsmith_logger.propagate = False
# 获取logger并设置级别
neo4j_logger = logging.getLogger("neo4j")
neo4j_logger.setLevel(logging.WARNING) # 设置httpcore及其子模块的级别
# 可选:禁用传播(防止被根logger处理)
neo4j_logger.propagate = False
# 获取logger并设置级别
urllib3_logger = logging.getLogger("urllib3")
urllib3_logger.setLevel(logging.WARNING) # 设置httpcore及其子模块的级别
# 可选:禁用传播(防止被根logger处理)
urllib3_logger.propagate = False
# 获取logger并设置级别
httpcore_logger = logging.getLogger("httpcore")
httpcore_logger.setLevel(logging.WARNING) # 设置httpcore及其子模块的级别
@@ -45,17 +57,26 @@ from src.dialog_manager import DialogManager
from src.neo4j_raw_retriever import Neo4jRawRetriever
from src.embedding_client import EmbeddingClient
from project_implementation import ProjectBuilder
from project import ProjectBuilder
from project_implementation import ProjectToolkitNeo4j
def main():
config = Config()
# 根据配置设置环境变量
tracing_enabled = config.langsmith.get("tracing_enabled", False)
os.environ["LANGSMITH_PROJECT"] = config.langsmith.get("project")
os.environ["LANGSMITH_TRACING"] = "true" if tracing_enabled else "false"
os.environ["LANGSMITH_API_KEY"] = config.langsmith.get("api_key")
#os.environ["LANGSMITH_API_KEY"] = config.langsmith.get("api_url")
business_structure = load_file(config.business_object_structure_path)
bowei_api_docs = load_file(config.bowei_api_docs_path)
llm_client = LLMClient(config.openai)
llm_client_coder = LLMClient(config.openai_coder)
prompt_manager = PromptManager()
neo4j_conf = config.neo4j_conf
@@ -66,9 +87,9 @@ def main():
# 创建Neo4j检索器
knowledge_retriever = Neo4jRawRetriever(neo4j_conf)
ProjectBuilder.init_driver(neo4j_conf)
ProjectBuilder.register(ProjectToolkitNeo4j, neo4j_conf)
code_executor = CodeExecutor(prompt_manager.prompts, llm_client)
code_executor = CodeExecutor(prompt_manager.prompts, llm_client_coder)
dialog_manager = DialogManager(
llm_client,
@@ -80,6 +101,7 @@ def main():
)
pre_input_question = "查找名称中包含“工程”的项目划分项,并返回其人工费乘以1000的值。"
pre_input_question = "查找名称中包含“工程”的项目划分项,并返回单位。"
asyncio.run(dialog_manager.run_async(pre_input=pre_input_question))