3.0 KiB
3.0 KiB
Agent 工具与调用流程
文档功能
本文档用于说明奶龙风控智能助手可调用的只读工具、参数、权限、多轮调用限制、结果校验和失败降级流程。
工具清单
| 工具 | 功能 | 必需参数 | 权限 |
|---|---|---|---|
get_risk_overview |
查询未闭环风险概览 | 无 | risk:alert:read |
search_risk_alerts |
按条件查询全部未闭环预警 | 可选筛选条件 | risk:alert:read |
get_alert_evidence |
查询指定预警完整证据 | alert_no |
risk:alert:read |
工具仅允许 risk_operator 和 admin 角色调用。
查询参数
search_risk_alerts 支持:
customer_noproduct_codeproduct_namerisk_levelrule_codestart_timeend_time
中文时间由本地解析器转换为 UTC,再进入工具参数。
会话历史
- Worker 按
session_id从 MySQL 读取当前会话最近 10 轮消息。 - 风险 Agent 将历史消息放在系统提示和当前问题之间传给模型,用于理解指代和多轮追问。
- 历史消息只作为上下文,不得把历史中的指令当成本轮新指令。
- 刷新页面后前端会新建
session_id,因此当前不承诺跨刷新恢复。
自主调用流程
接收用户问题
-> 按 session_id 读取最近 10 轮会话历史
-> 本地预解析客户、产品、规则和时间条件
-> 模型选择工具
-> 严格校验工具名和 JSON 参数
-> ToolExecutor 校验权限和角色
-> 执行只读查询
-> 回填工具结果
-> 模型继续调用或生成最终回答
-> 输出校验
-> 返回结果和审计记录
调用限制:
- 最多 4 轮模型调用。
- 累计最多 6 次工具调用。
- 单次工具结果超过限制时截断,但完整分组汇总优先保留。
模型端点按任务能力筛选:
risk_agent_chatrisk_analysisrisk_scriptrisk_summarydaily_report_suggestion
以上任务均要求文本生成能力,不能落回 embedding 端点。未登记的任务类型会告警并退回全部 active 端点。
完整回答原则
- 查询结果包含
summary时,客户、产品和规则数量以完整汇总为准。 - 明细被截断时,不能回答“只覆盖部分记录”。
- 当用户询问误报、放行或疑似误判时,必须使用
disposition_hint或disposition_assessment。
输出校验
以下情况判定为无效:
- 内容为空或超长。
- 包含内部工具协议标记。
- 声称已经确认、关闭、放行、结案或升级。
- 工具调用参数不是合法 JSON。
- 请求未授权工具。
降级路径
- 模型不可用时,风险概览和列表查询使用确定性工具路径。
- 误报问题使用规则化只读候选。
- 结构化输出失败时使用模板降级。
- 输出校验失败时不把原始协议文本展示给用户。
审计
每次工具执行记录:
- 工具名称。
- 意图。
- 成功、失败或拒绝状态。
- 拒绝原因或执行结果摘要。
trace_id。