feat: 完成极简 LangGraph 架构迁移,添加 Baosi API 支持
Some checks failed
构建并部署 AI Agent 服务 / deploy (push) Failing after 6m36s

主要变更:
- 迁移到极简 LangGraph 标准架构(START → init_state → 记忆 → Agent ⇄ Tools → finalize → END)
- 添加 Baosi API 支持,配置 ops4.7 模型
- 保留本地模型作为默认首选,Baosi 作为备选
- 新架构使用 LangGraph 原生 ToolNode 和 bind_tools
- 移除旧的混合路由、JSON 解析等复杂逻辑
- 把旧代码移到 deprecated/ 目录
- 添加新的 Agent 节点和 Tools 模块
- 添加测试脚本验证新架构
- 所有测试通过 ✓
This commit is contained in:
2026-05-07 00:48:17 +08:00
parent 5e762da740
commit 22fdb625a4
23 changed files with 1232 additions and 494 deletions

View File

@@ -0,0 +1,59 @@
#!/usr/bin/env python3
"""
简单测试:验证 Baosi API 是否正常工作
"""
import sys
from pathlib import Path
# 添加项目路径
project_root = Path(__file__).resolve().parent.parent
sys.path.insert(0, str(project_root))
import asyncio
from dotenv import load_dotenv
# 加载环境变量
load_dotenv(project_root / ".env")
from backend.app.model_services.chat_services import BaosiChatProvider
async def test_baosi_provider():
"""测试 Baosi API Provider"""
print("=" * 60)
print("测试 Baosi API Provider")
print("=" * 60)
# 创建 provider
provider = BaosiChatProvider()
# 检查是否可用
print(f"\n检查是否可用: {provider.is_available()}")
try:
# 获取 LLM
llm = provider.get_service()
print(f"\n✓ LLM 获取成功: {type(llm)}")
# 测试简单调用
print(f"\n测试简单调用...")
from langchain_core.messages import HumanMessage
response = await llm.ainvoke([
HumanMessage(content="你好,请简单介绍一下你自己")
])
print(f"\n✓ 响应成功:")
print(f" 响应类型: {type(response)}")
print(f" 响应内容:\n{response.content}")
return True
except Exception as e:
print(f"\n✗ 测试失败: {e}")
import traceback
print(f"堆栈:\n{traceback.format_exc()}")
return False
if __name__ == "__main__":
asyncio.run(test_baosi_provider())