|
大语言模型(LLM)在理解和生成自然语言方面展现了强大的能力,但它们输出的不确定性在一些需要高度准确、结果可预测和可审计的企业场景中,却限制了AI智能体(Agent)的应用:回答的随机偏差甚至“幻觉”式错误可能带来严重后果。这种不确定性会侵蚀企业领域对AI的信任,甚至引发损失。因此,如何控制LLM带来的Agent行为的不确定性,成为企业Agent系统的最大挑战之一。本文总结控制生成式AI Agent不确定性的常见策略。它们有的来自LLM使用层面、有的来自Agent架构与设计层面,以及AI治理层面,实际应用中可组合使用。 精心设计和优化提示词是控制LLM行为最基础与直接的手段。通过明确指令、约束模型角色、提供上下文和Few-Shot示例,可以在很大程度上引导模型遵循你的预期轨道输出内容。 提示工程相当于给模型“立规矩 + 输出示范”,是提升 Agent确定性与可预测性的最经济、迭代最快的方式。 实现方法 角色扮演:比如明确指示AI“你是一名专业的财务分析师”。 清晰指令:使用强硬的约束次,减少模型发挥空间,如“必须”、“禁止”。 Few-Shot示例:提供1-3个“问题-答案”范例,让模型模仿,提高输出一致性。 思维链(CoT):对于非推理模型,也可以在提示中明确要求模型“一步一步地思考”或“请先列出你的推理步骤,然后再给出最终答案”。这可以让AI决策更加合理,而且也方便事后的核查与优化。
优点
局限性
提示词具有一定的“脆弱性”,细微变化可能导致输出剧烈波动。此外,对于复杂的长对话与上下文,模型可能会“忘记”初始指令,偏离预期;而且对于企业高度动态与多变的业务规则,单靠提示工程难以全面控制模型行为。 此外,对于思维链的提示技术,也会显著增加输出的长度与计算延迟。 通用的LLM虽然强大,但具体应用到企业的垂直业务场景中,可能会由于不理解行业术语、缺乏最新的领域知识等原因导致幻觉、答非所闻,输出内容“飘忽不定”。 通过在企业(或行业)特定的、高质量的领域数据上对LLM进行微调训练,使模型更贴近垂直场景,从而提升输出的确定性与准确性。 实现方法
收集企业内部的专业文档、对话记录、FAQ等数据,经过清洗标注后,形成训练需要的格式,选择基础模型与微调方式,进行训练与评估(可以借助LLM厂家的微调平台,也可以用开源工具)。 优点
微调后的模型更懂“行话”和业务规则,同类问题回答更稳定,不易偏离 可通过训练“塑造”模型的语气、风格和默认行为,在模型内部建立一致性 由于知识被学习到模型内部,在推理时无额外消耗,输出性能更高
局限性
我们所熟知的RAG本质上也是一种让模型减少幻觉,能够根据企业/行业领域知识来精准输出答案的技术手段,也是当前最务实的企业LLM应用方案之一。它通过在生成答案前从专有知识库中检索相关信息,为模型提供事实依据。 将RAG管道/工具应用到Agent也是一种常见的控制方法。 实现方法
系统首先将用户(或其他应用)的输入问题转化为查询向量,在企业知识库(如产品手册、政策文件、数据库)中检索最相关的信息片段,然后将这些片段连同原始问题一起作为上下文输入给LLM,让模型基于这些“参考知识”来回答。 优点
极大缓解模型的知识盲区和幻觉问题,确保知识的实时性和准确性 输出的答案也可以附上引用来源,增强了可信度和可审计性 RAG与模型微调可以相互配合,互相补充,获得最大收益
局限性
RAG的效果高度依赖背后知识库的质量和知识召回的精度,在数据质量、文档解析、多模态处理、索引、检索算法、结果合成等多个环节有很多的优化技巧,并非是一个简单向量检索。如果不重视,RAG管道输出质量不佳,进而影响到整体应用效果。 在企业应用中,Agent 往往并非直接面向用户,而是处于更大业务系统中的一环。它的输出结果可能需要被下游的业务流程、数据库或自动化脚本可靠地“消费”。但LLM输出的不确定性(字段名不一致、多余的解释文本等)可能导致:
数据接口无法解析,流程中断 下游系统收到错误格式的数据,引发级联错误 无法进行批量处理和监控,难以形成稳定的业务闭环
结构化输出策略的目标就是通过“强格式化”手段,将模型输出约束在可预测的结构内,提升整体系统的确定性与可控性。它本质上不改变模型生成的内容方式,但通过“结构化的容器”提高了可预测性。 实现方法 优点 局限性 结构化输出并没有根本上改变生成内容的方式:格式正确不等于内容正确。策略主要作用在输出层,对任务执行过程的控制力有限。 企业中的许多场景是流程性强、风险容错率低的任务,如开户、理赔、税务申报、合规审批等。如果让LLM在这些场景中“自由发挥”,完全自主规划执行,就可能: 跳过关键步骤,或对流程分支理解错误 用户输入超出预期,模型进入未定义状态 对话路径不一致,难以追踪与回溯
因此,Agent工作流通过预定义明确的任务/对话流程,将Agent的行为限制在可控的路径中。相当于在Agent的工作“道路”上,铺设了清晰的“护栏与路标”,让系统整体更稳定、可靠、可预测。 实现方法 借助 LangGraph、LlamaIndex、Google ADK等框架,明确定义对话或者任务流程:明确的步骤,及每个步骤的输入、输出与执行动作等。而LLM则在局部发生作用,比如在各个步骤调用AI完成子任务,如信息提取、意图识别、文档解析等。 优点 局限性 流程约束策略的本质是用灵活性、智能化来换取更高的确定性与可控性,这在企业的部分场景是可接受的。但也可能导致无法更智能的处理“流程外”的突发情况;此外流程的维护是需要成本的:要与业务部门协作,确保流程的正确。 即使使用同一个提示和模型,LLM的输出也可能因以下原因而不同: 推理参数(如温度)带来的采样随机性 后端更新模型版本导致行为变化 不同硬件/库/线程策略引起的细微差异
这些“隐性变动”会导致企业场景中的Agent出现不可重复、不可预测的输出,极大增加调试难度。通过严格控制推理参数、随机种子、模型版本与运行环境,也可以一定程度提升Agent输出的稳定性。 实现方法 温度参数:通过将 temperature 设为 0,一定程度降低随机性ingFang SC", system-ui, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;letter-spacing: 0.034em;background-color: transparent;">
ingFang SC", system-ui, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;letter-spacing: 0.034em;background-color: transparent;">随机种子锁定(部分模型支持):确保同一输入多次调用输出一致 ingFang SC", system-ui, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;letter-spacing: 0.034em;background-color: transparent;">模型版本固定:比如不使用“latest”,而是锁定具体版本,升级需经过完整测试 ingFang SC", system-ui, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;letter-spacing: 0.034em;background-color: transparent;">环境一致性:保证开发/测试/生产环境的一致,避免环境差异导致输出“漂移” ingFang SC", system-ui, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;letter-spacing: 0.034em;background-color: transparent;">
优点 局限性 调整模型参数与环境配置固然简单,但是“降低输出的随机性”也并不等于“数据结果的准确性”;由于牺牲了某些场景下需要的创造性,导致回答可能僵硬;此外,在实际部署中,维持环境一致性也不太容易。 有一些专注于高服务要求的企业场景的Agent开发框架开始引入一种显式、可执行的行为规则系统,通过“在什么条件下,AI必须/不得执行什么动作”的规则形式,给Agent制定一套行为准则,并通过技术手段确保遵循。 
这种行为规则系统不是一次性通过指令灌入LLM(区别于提示工程),而是根据上下文按需激活必要的一个或者多个“规则”,从而避免在提示与越来越长的上下文中被“淹没”。这让AI的行为逻辑变得可编排、可观察、可强制执行。 实现方法 大致的实现方法是: ingFang SC", system-ui, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;letter-spacing: 0.034em;background-color: transparent;">输出监测与纠正 ingFang SC", system-ui, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;letter-spacing: 0.034em;background-color: transparent;">为了确保规则的遵循,这种策略应该设置输出的“监测员",实时监测模型输出,发现跑题、违规、敏感内容时强制拉回或过滤。
ingFang SC", system-ui, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;letter-spacing: 0.034em;background-color: transparent;">行为决策解释与调试 ingFang SC", system-ui, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;letter-spacing: 0.034em;background-color: transparent;">系统记录每条规则的触发时间和原因,方便后续审查与优化 ingFang SC", system-ui, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;letter-spacing: 0.034em;background-color: transparent;">
优点 规则触发不依赖模型“记忆”,在输出环节强制约束,尽量避免指令“遗忘”问题 自然语言描述,可以更好的与业务人员协作确定各种业务红线、话术等 更容易覆盖细粒度的控制场景,因为提示工程很难覆盖大量的边缘场景
缺点 实现的技术复杂度较高,特别是如何动态的绑定规则并强制执行 在规则集规模变大后,管理与更新都会变得困难,需要有治理机制 执行的监测与强制拉回可能导致性能的下降(需要多次尝试)
当单个Agent难以绝对可靠时,可以考虑引入“AI监督AI”的多Agent架构,让模型之间互相校对、协作完成任务。 实现方法 主AI生成初步回答后,引入第二个监督Agent来审查其逻辑和事实。监督Agent可以提示纠正主回答,或直接拦截交由人工处理。这种多Agent模式一定程度上可以进行纠偏,让Agent的输出更一致与准确。 比如让模型对同一问题生成多种回答,再用一个判别模块(可由AI或规则实现)交叉验证这些回答,选择最一致可信的版本。这种方式在很多时候也可以限制模型随意发挥的空间。 优点 多代理协作和自检机制相当于给AI配备了“复核员”,在输出阶段发现并纠正错误,减少了对事后错误处理的依赖(相信随着技术的发展,未来会有更多自我诊断,自我修复的AI Agent)。
这种策略也提升了系统鲁棒性:如果主Agent发生异常,监督Agent可及时发现。 缺点 很显然,这种多策略回答导致系统架构的复杂度上升,需要良好的设计,否则可能出现一些异常(比如死循环);同时也会带来更高的推理成本与响应延迟(毕竟监督Agent也需要借助LLM来完成)。 此外,监督Agent本身也可能不可靠,或者与主工作Agent的“思路”不同(比如用了不同的模型)。 在设计层面的一个重要策略是:根据不同场景与任务的风险等级与对确定性的要求,设计不同的AI参与程度或技术方案。
比如在容错率高、结果更宽容的场景(比如创意策划、文案撰写、客服中的非关键性问题)中多依赖LLM的自动化;而在零失误要求、关乎重大决策的场景(比如金融交易、医疗辅助、客服中涉及赔偿的问题)中更适合让AI暂时仅作为辅助工具,而关键输出则考虑人工参与(HITL,Human-in-the-Loop)。 即使在同一个场景中,不同任务也可以采取不同的技术策略。比如: 实现方法 识别业务场景与任务,对其进行风险等级划分,按等级限制AI的“参与”。比如划分成低中高三个等级: 低风险:Agent自主完成。比如内部知识问答、文案草稿生成等 中风险:Agent生成,但是需要人工审核后发布(比如客户邮件回复) 高风险:Agent作为信息提供与草稿撰写的辅助工具,最终决策必须人类作出
设计干预点:在流程中设置明确的人工干预节点。例如,当AI的置信度低于某个阈值,或检测到用户情绪负面时,自动将对话转接给人工坐席。 优点 局限性 三、管理与治理层面的控制策略 将AI智能体引入企业业务,建立一套全面的治理框架,涵盖从模型与Agent的开发部署、测试验证、系统评估、运行监控等各个环节。通过这种方式让Agent持续的优化,不断的提高其一致性与准确性。 实现方法 AI的治理涵盖众多软件生命周期的环节与方法: 制定AI使用政策:明确AI的职责边界、数据隐私规则和错误处理流程 对抗测试与评估:定期大规模的测试评估Agent输出的稳定性与正确性。比如组织“对抗性测试”,用各种模糊、误导性的任务来“攻击”Agent,以发现边缘问题 建立监控仪表盘:实时追踪AI Agent的关键性能指标(KPIs),如回答准确率、用户满意度、幻觉率、响应时间等。一旦指标偏离基线,立即告警 日志与审计:记录所有AI与用户的交互日志,监控AI智能体的输入输出,以便在Agent行为出现“漂移”时进行回溯、分析和追责 模型生命周期管理:对依赖的模型进行版本控制、性能基准测试等,以控制与追踪可能的模型升级带来Agent的输出异常 建立跨职能治理团队:由技术、业务、法务和风控等部门共同组成,定期审查AI的行为和风险。
优点
完善的治理使Agent系统从“黑箱”变成更可控的企业资产,为稳健地扩大AI应用范围提供保障。特别是对于Agent这样的新型AI应用,技术手段固然重要,但治理框架可以帮助企业不断发现问题、积累经验,降低风险,最终形成真正的竞争优势。 缺点 需要投入管理资源,甚至必要的技术工具,短期内可能增加项目开销,延长项目周期,但从长远看这是必要的。 以上总结了不同层面控制Agent不确定性的常见策略: 技术上:提示工程、检索增强到规则护栏、自我监督的多种策略来提高模型输出的一致性和准确性; 设计上:分层的任务场景和人机协作流程,可以把AI的优势用在刀刃上、把风险控制在人可管控的范围内; 管理上:建立完善的AI治理和监控体系,通过持续的完善改进,确保其能够沿着企业期望的轨道不断优化。
不确定性(及相关的不可控、难以预测甚至准确性问题)都是生成式AI目前难以避免的“黑箱”属性。如果不对这些问题设计合适的策略进行控制,把它们“关在笼子里”,Agent在企业的大规模应用只能是一厢情愿,甚至会让管理者逐渐对AI失去信心。 当然,完全消除LLM的不确定性仍然是AI研究领域的前沿挑战。我们期待未来的模型在不确定性、可解释性和可控性上取得突破。 |