单智能体自主规划模式下完全由大模型根据自然语言提示词进行自主决策,调用外部的的多个工作流、多个外部工具、多个外部数据库、多个RAG知识库,如何提高大模型决策的准确性,如何流程执行的一致性?

Coze 单智能体自主规划模式:提升决策准确性 + 保障流程执行一致性完整方案

一、核心场景说明

自主规划模式 = 大模型作为调度中枢,自主解析用户需求、判断需要调用的工具 / 工作流 / 数据库 / 知识库、编排执行顺序、整合多源结果,全程无人工预设固定分支。

核心两大痛点:

  1. 决策偏差:大模型选错工具、漏调用资源、错误判断执行顺序、幻觉编造不存在的资源;
  2. 执行混乱:多次相同输入,工具调用顺序、入参、分支走向不一致,输出结果不稳定(执行流程取决于上下文,不受控)。

第一部分:提升大模型自主决策准确性(解决选错、漏选、幻觉)

1. 约束层:标准化工具 / 资源元数据注入,消除模型认知模糊

1.1 统一结构化资源清单(强制注入系统 Prompt)

把全部可调用资源做标准化 JSON Schema 定义,完整写入系统提示词,杜绝模型 “不知道有什么工具”“记错工具能力”。 模板示例:

json

{
  "工作流列表": [{"id":"wf_qa","名称":"产品问答子流程","能力":"查询产品参数、售后政策","入参":["用户问题","产品ID"]},...],
  "外部工具列表": [{"id":"tool_search","名称":"全网搜索","能力":"获取实时行业资讯","限制":"不可查询企业内部数据"},...],
  "数据库列表": [{"id":"db_order","数据表":"订单表","可查询字段":"订单号、购买时间、用户手机号","禁止操作":"删除/更新数据"},...],
  "RAG知识库列表": [{"id":"kb_product","文档范围":"全系列产品说明书","适用场景":"产品参数咨询"},...]
}

配套 Prompt 约束:

你只能使用上方清单内存在的资源,禁止编造不存在的工作流、工具、数据库、知识库;调用前必须匹配资源能力与用户需求。

1.2 资源能力边界强限制

明确每一类资源的适用场景、禁止场景、输入输出约束,减少模型跨范围错误调用:

  • 知识库 kb_product 仅能回答产品参数,用户问订单必须调用 db_order 数据库;
  • 联网搜索工具仅处理实时信息,内部业务问题禁止调用。

2. 推理层:分步式规划思维链,降低一次性决策难度

自主规划不要让模型一步完成 “判断 + 调用 + 整合”,强制拆分 3 阶段推理,分步输出结构化规划,每一步做校验:

阶段 1:需求拆解

要求模型输出:用户核心诉求、所需信息类型、信息来源分类(内部知识库 / 数据库 / 外部工具);

阶段 2:资源匹配

逐条匹配需求与可用资源,输出调用清单,写明「为什么选择该资源」;

阶段 3:执行顺序编排

判断资源依赖关系,生成有序调用链路(有依赖的前置资源优先执行)。

Prompt 强制约束:

严格按三步输出规划,必须以 JSON 格式返回规划结果,禁止自由文本;未完成规划前,禁止发起任何资源调用。

配套校验节点(Coze 流程拦截)

在大模型规划节点后,增加代码节点做结构化校验:

  1. 校验规划 JSON 格式合法性;
  2. 校验规划内所有资源 ID 是否存在于资源清单;
  3. 校验依赖逻辑是否合理(如查询订单必须先获取用户 ID); 校验失败直接返回大模型重新规划,阻断错误调用。

3. 信息层:RAG 前置检索,给模型提供事实参考,减少主观臆断

3.1 资源描述知识库(专用规划辅助库)

将所有工作流、工具、数据库、知识库的完整能力、参数、限制全部存入独立 RAG 库; 用户提问后,先检索资源知识库,把匹配度最高的资源描述送入规划大模型,模型基于检索到的客观资料做决策,而非依靠自身训练知识。

3.2 业务知识库前置召回

用户业务问题先检索业务 RAG,把业务事实注入上下文,模型能精准判断是否需要调取数据库 / 子流程,避免凭空编造答案。

4. 模型层:分层双大模型架构(规划模型 + 执行模型)

  1. 规划大模型(高逻辑能力模型,如高精度推理模型) 仅负责需求拆解、资源匹配、生成调用规划,不负责生成最终回答;专注逻辑推理,降低决策错误;
  2. 执行大模型(轻量化模型) 仅接收规划模型输出的标准化调用指令,填充参数、执行工具调用、汇总结果; 分离职责,避免单一模型同时承担推理 + 生成双重任务导致逻辑混乱。

5. 纠错层:规划失败自动重试机制

  1. 限制最大重试次数(3 次),避免无限循环;
  2. 每次重试把上一轮错误原因(资源不存在、参数缺失、依赖错误)追加进 Prompt,让模型修正规划;
  3. 达到重试上限后,触发兜底分支,告知用户无法完成需求,人工介入。

6. 权限层:资源黑白名单过滤

通过 IF 选择器前置拦截:

  • 基于用户身份、会话场景过滤可调用资源;
  • 高敏感数据库 / 修改类操作(更新 / 删除)加入权限校验,模型即使规划调用也直接拦截,避免误操作。

第二部分:保障流程执行一致性(相同输入得到稳定链路、稳定输出)

1. 输出标准化:强制规划结构化 JSON,消除自由文本随机性

核心问题根源

若允许模型用自然文字描述调用计划,每次返回文本格式、顺序、描述词汇都会变化,下游解析逻辑不稳定。

解决方案

强制规定固定 JSON Schema,所有规划输出必须严格遵守字段,不允许额外文本:

json

{
  "plan_id": "唯一规划编号",
  "demand_analysis": "用户需求拆解",
  "call_list": [
    {
      "resource_type": "工作流/工具/数据库/知识库",
      "resource_id": "资源唯一ID",
      "params": {"入参key":"入参值"},
      "dependency": ["前置调用资源ID,无依赖为空"],
      "execute_order": 执行序号
    }
  ],
  "summary_logic": "多资源结果整合规则"
}

代码节点强校验 Schema,字段缺失、类型错误、顺序混乱全部打回重规划,保证每次规划数据结构完全统一。

2. 执行层:标准化调度引擎,固定执行逻辑,隔离模型随机波动

自主规划仅负责输出调用清单,实际执行完全脱离大模型控制,由固定代码节点作为调度引擎执行:

  1. 调度引擎读取规划 JSON,按execute_order有序执行;
  2. 自动处理依赖等待:存在前置依赖时,阻塞等待前置资源执行完成;
  3. 统一封装所有资源调用逻辑:
    • 子工作流调用:固定变量映射规则;
    • 数据库查询:固定参数绑定、SQL 防注入;
    • RAG 检索:固定召回条数、相似度阈值;
    • 外部工具:固定超时、重试、参数校验规则;
  4. 所有资源调用的底层逻辑固定,不受大模型输出措辞、随机变化影响。

3. 环境层:固定模型参数,压缩生成随机性

规划大模型全局固定参数,全程不动态调整:

  • 温度 temperature = 0(核心,完全消除创意随机性,只输出确定性逻辑);
  • top_p = 0.1;
  • 关闭流式输出,强制一次性完整返回规划 JSON;
  • 固定最大输出 Token,避免输出内容长短波动。

4. 上下文层:隔离无关干扰变量,统一输入上下文

4.1 规划阶段上下文纯净度控制

  1. 规划大模型的上下文仅保留三类数据:资源清单、用户当前提问、资源检索结果;
  2. 过滤历史闲聊、无关对话、上一轮工具返回的冗余长文本,避免干扰本次决策;
  3. 区分「规划上下文」和「最终回答上下文」,两套上下文隔离,互不污染。

4.2 会话记忆(上行文)结构化压缩

多轮对话记忆不直接灌入规划模型,先通过代码节点摘要压缩为结构化关键信息(仅保留需求、已调用资源、关键业务数据),消除长历史文本带来的随机干扰。

5. 幂等性设计:相同输入得到完全一致的执行结果

  1. 会话 + 输入指纹缓存 代码节点对「用户输入 + 用户 ID」生成唯一指纹,存入数据库; 短时间内相同指纹直接读取上一次完整执行链路与输出,跳过大模型重新规划,100% 保证一致性;
  2. 资源调用幂等封装
    • 查询类知识库 / 数据库:无状态,天然幂等;
    • 新增 / 写入类操作:增加唯一业务标识,重复调用不会重复生成数据;
  3. 消除动态随机因子: RAG 检索固定召回数量、固定排序规则;外部工具关闭随机采样、固定查询参数。

6. 结果整合层:固定聚合模板,统一多源数据汇总逻辑

多资源返回的数据,不交由大模型自由整合,使用固定变量聚合节点 + 标准化汇总 Prompt

  1. 变量聚合节点统一收拢所有工具 / 数据库 / 知识库输出,固定字段结构;
  2. 汇总大模型使用固定 Prompt,仅做信息整理,禁止自由发挥;
  3. 固定输出格式(如结构化 Markdown/JSON),每次输出排版、信息维度完全统一。

7. 观测与回滚:日志全链路留存,异常统一兜底

  1. 全流程日志持久化:数据库存储每一次的「用户输入→规划 JSON→每一步资源调用入参 / 返回→最终输出」;
  2. 一致性校验:定时抽检相同输入的执行链路,对比调用顺序、参数、输出,发现波动自动告警;
  3. 兜底固定分支:大模型规划异常、资源调用失败时,统一进入预设兜底流程,不会出现随机错误回复。

第三部分:落地架构总流程(Coze 画布可直接搭建)

plaintext

输入节点(用户提问)
    ↓
【分支1:辅助RAG检索】资源知识库检索 + 业务知识库检索 → 输出资源参考信息
    ↓
规划大模型节点(temperature=0,强制输出规划JSON)
    ↓
代码节点1:规划校验(Schema校验、资源合法性、依赖校验)
    ↓(校验失败→重试规划,最多3次;超限走兜底)
代码节点2:标准化调度引擎(按规划有序执行所有资源)
    ├─ 子工作流调用
    ├─ 外部工具调用
    ├─ 数据库查询/写入
    └─ RAG知识库检索
    ↓
变量聚合节点:收拢全部资源输出,固定结构化数据
    ↓
汇总大模型(固定整合Prompt)
    ↓
数据库新增:存储全链路日志+输入指纹缓存
    ↓
输出节点返回结果

第四部分:关键总结

提升决策准确性核心手段

  1. 给模型完整、结构化、带边界约束的资源清单,消除信息差;
  2. 思维链分步规划 + 前置 RAG 检索,降低单次推理难度;
  3. 规划结果代码强校验,拦截错误调用;
  4. 规划 / 执行双模型分离,各司其职;
  5. 错误自动重试 + 权限黑白名单兜底。

保障执行一致性核心手段

  1. 强制 JSON 标准化规划,杜绝自由文本带来的随机波动;
  2. 调度引擎固化资源调用逻辑,执行流程脱离大模型控制;
  3. 规划模型温度置 0,关闭所有随机生成参数;
  4. 输入指纹缓存、幂等资源调用,相同输入复用历史链路;
  5. 上下文净化,隔离无关干扰信息;
  6. 固定数据聚合与输出模板,统一结果格式。
Logo

脑启社区是一个专注类脑智能领域的开发者社区。欢迎加入社区,共建类脑智能生态。社区为开发者提供了丰富的开源类脑工具软件、类脑算法模型及数据集、类脑知识库、类脑技术培训课程以及类脑应用案例等资源。

更多推荐