GaoYiYuan_0626 301c78edc3 feat: T-04 Core RO Tool 节点——chat Tool 接入+归属校验+agent_tool_call 落库
- app/tool/core_tools.py: 三只读 Tool(query_customer_profile/holdings/recent_trades, Core RO 仅 SELECT) + TOOL_REGISTRY 白名单(requires_customer); JSON 安全化(Decimal 两位/时间 isoformat)
- app/service/tool_service.py: match_intent 关键词意图(仅 customer/advisor; risk/analyst 空转归 C1/C2) + assert_tool_access 归属断言(customer 本人/advisor assigned/risk_officer 全量/其余拒, 口径对齐 deps.assert_customer_access) + run_tool 编排(白名单→校验→执行→agent_tool_call 落库, 落库失败降级 warning)
- agent_service: 图 START→tool→llm→guard; Tool 结果注入 LLM 上下文(SystemMessage); 降级回复带 Tool 摘要; chat() 可选 session 上下文(缺省空转, T-07 兼容)
- session_repository: insert_tool_call(message_id 一期 NULL, session_id+trace_id 可还原)
- 归属拒绝口径: Tool 层不抛 403 改 blocked 留痕(AUTH_403_* 同码), 对话内呈现——API 层 deny 铁律不变
- tests: test_chat_tools 20 例(三态+落库字段+降级+图注入) + test_chat 4 例(全链路/JWT 外 debug 通道), _ddl 补 agent_tool_call/core_holding, 297 绿
- 真库冒烟: uvicorn+真 MySQL/Redis chat 触发持仓查询 success 落痕 47ms, 现场已清理
2026-09-07 08:43:36 +08:00

JinRong · 金融四 Agent 智能管家

四个 Agent(客户财富 / 代理人助手 / 数据分析 / 风控监测)共用统一数据层与合规底座。

文档

目录 内容
docs/memory/MEMORY.md 项目记忆入口(新 Agent 读 §0 交接清单)
docs/需求拆解/ 业务场景、数据矩阵、合规
docs/项目框架设计/ 表设计、技术选型、JWT 手册

后端结构

app/
├── api/          # 路由:chat、knowledge、admin
├── service/      # Agent、RAG、记忆
├── tool/         # 解析、Embedding、Milvus
├── model/        # Pydantic + ORM
├── repository/   # Core 只读 core_ro(已实现)
├── config/       # settings、database
├── utils/
└── main.py

环境要求

  • Python 3.13+、MySQL 8.0、Redis 8、Neo4j Desktop、Ollama(bge-m3)
  • Windows 原生部署(见技术选型文档)

快速启动

cp .env.example .env
pip install -r requirements.txt
# 首次:灌 Core 模拟库与同步 — 见 docs/memory/FLOW.md §0
uvicorn app.main:app --reload

健康检查:GET http://127.0.0.1:8000/health

前端

React 19 + Vite 7 + Ant Design 5(待 init web/ 目录)。

S
Description
金金融融的
Readme
24 MiB
Languages
Python 84.5%
TypeScript 9%
JavaScript 4.3%
CSS 1.1%
PowerShell 1%