内容提要
在生产级LLM系统中构建确定性层:将模型限制在单一节点,其余部分为可测试的普通代码。智能体只提出建议,不直接改变业务状态,由经审批的底层组件执行。每个能力采用固定流程图,模型仅负责判断节点,输出须经结构化约束与校验,失败则重试或拒绝。置信度由多信号合成,用于路由至自动、人工或拒绝。所有决策写入只追加账本。若需自主循环,须设步数上限、工具白名单和完整追踪。
延伸解读
确定性层:生产级LLM系统的基石
文章将确定性层列为六级成熟度模型的第一级,强调在评估、置信度路由等更高层能力之前,必须先让底层稳定。核心思路是将模型限制在单一节点,其余部分为普通可测试代码。这要求智能体仅提出建议,由经审批的底层组件执行,从而将不可预测性降至最低。
智能体只提议,不直接改变业务状态
智能体被设计为纯函数,从上下文到提议决策,不直接修改业务状态。提议包含决策ID、能力、动作、置信度、路由和推理等字段。底层组件是唯一修改器,且仅在获得批准后应用提议。这种分离带来可测试性、安全性和可组合性,避免隐藏的副作用链。
固定流程图与结构化输出
每个能力采用固定节点序列,模型仅用于需要判断的节点,其余为普通代码。模型输出必须符合结构化模式,并通过验证和重试机制确保合规。结构化输出减少解析失败,但不保证正确性,因此仍需验证、评估和置信度合成。
置信度路由与只追加账本
置信度由模型信号、验证和抽样评审合成,路由节点根据阈值将决策分为自动、人工推荐、人工必需或拒绝。所有决策写入只追加账本,记录不可变,修正通过新行取代。账本哈希输入而非存储原始数据,平衡可验证性与隐私。
Q&A
如何让LLM智能体在生产系统中变得可测试和可审计?
将模型限制在单一节点,其余部分为普通可测试代码。智能体只提出建议,不直接改变业务状态,由经审批的底层组件执行。每个能力采用固定流程图,模型仅负责判断节点,输出须经结构化约束与校验,失败则重试或拒绝。所有决策写入只追加账本。
为什么智能体应该只提出建议而不直接执行业务操作?
因为智能体作为纯函数,无权限改变业务状态。这样即使智能体被越狱或存在缺陷,也只会产生不良建议而非不良操作,爆炸半径止于“护栏或人类说不”。同时,纯函数便于测试,相同上下文产生相同建议,无需模拟世界。
如何确保LLM输出结构化且可靠?
通过三种方式约束模型输出:模式引导(JSON Schema)、工具/函数调用、语法约束解码。然后验证每个响应,若不符合则重试并反馈验证错误,限制重试次数并失败关闭。这样下游只接收类型化对象,避免解析自由文本的脆弱性。
置信度路由是如何工作的?
置信度由模型信号、验证结果和抽样评审合成。路由节点根据置信度和验证标志,使用单一阈值将决策分为四类:自动、建议人工、必须人工、拒绝。路由在提案形成前运行,阈值按能力配置,初始保守,随数据证明安全后逐步降低。
决策账本的作用和设计要点是什么?
决策账本是每个决策的不可变记录,作为最后节点无条件写入。设计要点:只追加,无更新/删除权限;更正通过新行并设置supersedes;输入哈希而非原始敏感数据;可选哈希链防篡改;负载下也不可跳过写入。
在什么情况下可以使用有界ReAct循环?如何控制?
当决策需要根据发现动态决定步骤数量和顺序时,可使用有界ReAct循环。控制措施包括:硬性迭代上限(用for循环)、每能力工具白名单、每步完整追踪、输出仍经过护栏、验证、置信度和路由,且只提议不执行。