一旦人工智能智能体制定了初步计划,任务还远未完成。接下来的重要一步是判断该计划是否合理、可实现并与预期目标真正一致。本节展示了如何精心设计的提示可以帮助智能体进行这种自我评估,仔细检查其计划的可行性和质量。如果没有这种内部审查,智能体可能会走上存在缺陷或效率低下的路线,浪费资源并无法实现预期成果。定义计划可行性与质量在智能体评估计划之前,它需要判断标准。我们可以大致将这些标准分为可行性和质量。一个可行计划是智能体能够实际执行的计划。这意味着:可操作性:每个步骤都必须对应于智能体可以执行的动作,无论是内部计算、使用既定工具还是调用API。资源可用性:计划不应假定存在智能体不具备或无法获得的资源(数据、API密钥、计算能力)。约束遵守:计划必须在任何规定的约束范围内运行,例如时间限制、预算限制或允许的操作。而计划质量则指计划实现目标的程度。质量方面包括:有效性:计划是否直接解决核心问题或实现既定目标?效率:是否没有不必要的步骤或资源浪费而实现目标?是否最直接的路径,还是有更直接的选择?完整性:计划是否涵盖了目标的所有必要子任务和方面?逻辑连贯性:步骤是否遵循逻辑顺序?是否有任何矛盾或不合逻辑的过渡?韧性(隐含):虽然更难直接通过提示要求,但一个高质量的计划可能隐含地更能应对微小的变化或不确定性。我们可以提示进行明确的风险评估。提示工程使我们能够指导智能体系统地考虑这些因素。计划评估的提示策略可以采用多种提示技术来促使智能体评估其生成的计划:自我批评提示 让智能体评估其计划最直接的方法之一是,指示它批评自己的工作。这涉及将生成的计划返回给智能体(或保留在上下文中),并询问有关其优点和缺点的具体问题。例如,在智能体生成计划后:[生成的计划] ... 步骤 1: 动作 A 步骤 2: 动作 B 步骤 3: 动作 C ... 现在,请批判性地审查此计划: 1. 每个步骤是否明确定义,并可根据您当前的能力执行? 2. 步骤之间是否存在未解决的歧义指令或依赖关系? 3. 该计划是否直接有助于实现主要目标:'[原始目标]'? 4. 找出此计划中最多 3 个潜在弱点或可改进之处。您也可以直接在提示中提供清单或评分标准,引导智能体关注您希望它评估的特定属性。约束检查提示 如果智能体的操作受特定规则或限制约束,则必须对照生成的计划进行重新验证。提示可以明确列出这些约束,并要求智能体确认是否符合。考虑一个规划社交媒体活动并有预算限制的智能体:原始目标:为产品 X 规划一个为期 7 天的社交媒体活动,最高预算为 $500。 [生成的计划] ... 第 1 天:投放广告 A(预估成本:$100) 第 2 天:推广帖子 B(预估成本:$50) ... 第 7 天:举办竞赛 C(预估成本:$150) 总预估成本:$550 审查上述计划。最高预算为 $500。 1. 计划是否遵守此预算约束? 2. 如果没有,请指出导致超支的步骤,并提出修改建议以使计划符合预算。资源评估提示 计划可能看起来不错,但如果缺少必要资源则会失败。提示可以要求智能体清点每个步骤所需的资源与可用资源。使用外部 API 的智能体示例:[生成的计划] 步骤 1: 使用 UserProfileAPI 获取用户数据。 步骤 2: 使用 SentimentAnalysisAPI 分析情感。 步骤 3: 总结发现并存储到数据库。 针对上述计划: 1. 列出每个步骤所需的所有外部工具或 API。 2. 确认您为每个识别出的 API 都拥有有效凭据和足够的速率限制。 3. 如果任何资源不可用或不足,请将其标记为严重问题。风险识别提示 主动进行风险评估可以避免失败。提示可以指导智能体思考可能出现的问题以及如何处理。这涉及创建更能应对问题的计划。示例:[生成的计划] ... 考虑此计划相关的潜在风险: 1. 对于每个步骤,识别一到两种潜在的故障模式(例如,API 超时、意外数据格式、工具故障)。 2. 对于每个已识别的风险,提出简要的应急措施或错误处理策略。 3. 是否有任何步骤风险特别高?效率与优化提示 虽然不总是主要关注点,但效率可能很重要。您可以提示智能体寻找简化其计划的方法。示例:[生成的计划] ... 评估此计划的效率: 1. 是否有任何冗余步骤可以在不影响结果的情况下移除? 2. 是否可以重新排序或并行化某些步骤以更快地实现目标? 3. 如果存在更高效的替代方案,请提出。完整性检查 大型语言模型(LLM)很容易遗漏复杂目标的子要求。完整性检查提示确保所有方面都得到处理。示例:用户请求:'预订一张从纽约到伦敦的往返机票,找到一家海德公园附近对宠物友好的酒店住 3 晚,并为两人安排机场接送。' [生成的计划] - 步骤 1: 搜索纽约-伦敦航班。 - 步骤 2: 预订选定航班。 - 步骤 3: 搜索海德公园附近酒店。 - 步骤 4: 预订选定酒店。 对照原始用户请求审查计划: 1. 计划是否解决了用户请求的所有部分(航班、酒店、接送、宠物友好、人数)? 2. 找出计划中未涵盖的任何缺失组件或要求。通过评估进行迭代改进评估计划通常不是一个单一的、最终的步骤。更常见的是,它是迭代循环的一部分:智能体生成计划、评估计划,然后利用评估反馈来优化计划。这个循环可以重复,直到计划达到所需的可行性和质量标准。评估提示的输出(例如,识别出的缺陷、未满足的约束或建议的改进)可以直接整合到后续提示中,要求智能体修改其之前的计划。例如,如果评估显示预算超支:原计划(成本:$550): ... 评估反馈:计划超出预算 $500。超支 $50。 修改原计划以符合 $500 的预算限制。整合评估反馈。解释您的更改。这种迭代过程对于构建更可靠、更智能的智能体很关键。我们可以将此循环可视化如下:digraph G { rankdir=TB; node [shape=box, style="filled,rounded", fillcolor="#e9ecef", fontname="Arial"]; edge [fontname="Arial"]; Start [label="初始目标 / 任务", shape=ellipse, fillcolor="#a5d8ff"]; Planner [label="智能体生成计划\n(大型语言模型)", fillcolor="#b2f2bb"]; Plan [label="生成的计划", shape=document, fillcolor="#ffec99"]; Evaluator [label="智能体评估计划\n(带批评提示的LLM)", fillcolor="#b2f2bb"]; Evaluation [label="评估结果\n(反馈、问题、得分)", shape=document, fillcolor="#ffec99"]; Decision [label="计划可接受?", shape=diamond, style="filled", fillcolor="#ffc9c9"]; Refine [label="根据反馈优化计划", fillcolor="#ffd8a8"]; Execute [label="执行计划", shape=ellipse, fillcolor="#96f2d7"]; Start -> Planner; Planner -> Plan; Plan -> Evaluator; Evaluator -> Evaluation; Evaluation -> Decision; Decision -> Execute [label="是"]; Decision -> Refine [label="否"]; Refine -> Planner; }一个图表,展示了智能体系统中计划生成、评估和优化的迭代循环。计划质量指标(由智能体判断)定性反馈,通常有用的是提示智能体对其计划提供量化或结构化的评估。这可以帮助整个系统决定是否继续执行计划、请求进一步修改,或者如果计划质量始终很低,则放弃当前方法。您可以要求提供:置信度评分:“在 1 到 10 的评分中(10 表示高度自信),您对该计划能否成功高效地实现目标有多大信心?请说明您的理由。”可行性评级:“将此计划的可行性评为低、中或高。请解释您的理由。”风险等级:“评估此计划的总体风险等级(例如,低、中、高)。列出导致此风险等级的主要因素。”比较分数(如果存在多个计划):“如果您生成了多个计划变体,请根据可行性(1-5)和效率(1-5)对每个计划进行评分。”这些结构化输出可以由智能体工作流程的控制逻辑解析,以做出自动化决策。例如,置信度评分低于 7 的计划可能会自动触发一个带有更明确指导的重新规划周期。示例:提示智能体评估旅行计划我们将此应用于更具体的场景。假设智能体负责制定旅行行程。生成初步草稿后,精心设计的评估提示可以帮助发现错误或遗漏。智能体的初始任务: “规划下个月旧金山两名成人 3 天周末旅行。包括从洛杉矶国际机场(LAX)的往返航班,渔人码头附近评价良好(4 星以上)的酒店,以及每天至少一个主要旅游景点。预算为 $1500。”智能体的(可能存在缺陷的)初始计划输出:预订航班:洛杉矶国际机场到旧金山国际机场,总计 $300。酒店:“旧金山中心青年旅馆”,2 晚,总计 $200(评论:3 星)。第 1 天:参观金门大桥。第 2 天:游览恶魔岛。第 3 天:在 39 号码头附近散步。评估提示:这是提议的旅行计划: [在此处插入智能体的初始计划输出] 请根据原始请求和一般旅行计划的最佳实践评估此计划。考虑以下方面: 1. **目标一致性**:计划是否完全解决了原始请求的所有组成部分(目的地、时长、人数、航班出发地、酒店位置偏好、酒店星级、每日景点、预算)?列出任何偏差或遗漏。 2. **可行性与实际性**: * 下个月的机票和酒店价格是否实际?(您可以说明是否需要使用工具检查此项)。 * 酒店的星级和位置是否符合要求? * 考虑到航班、酒店、景点、餐饮和当地交通(必要时估算),$1500 的预算是否可能满足? 3. **质量与完整性**: * 是否包括往返航班? * 是否考虑或提及了旅行/景点的具体日期或时间,并需要最终确定? * 酒店选择是否适合“两名成人”(例如,如果暗示不是青年旅馆的宿舍)? 4. **整体评估**:简要总结计划的质量(例如,优秀、良好、一般、差),并列出 2-3 条具体的改进建议。通过使用这样的提示,智能体被引导自行发现问题,例如酒店星级不符、如果未考虑餐饮/当地交通可能存在的预算问题,以及“两名成人”的青年旅馆选择不当。此反馈随后推动了优化过程。使人工智能智能体具备批判性评估自身计划的能力,是迈向更自主、更可靠系统的重要一步。通过细致的提示工程,我们可以指导智能体仔细检查其提议行动的可行性、效率、完整性以及对约束的遵守情况。这种自我纠正机制,通常在迭代循环中应用,使智能体能够优化其策略,避免失误,并最终产生更高质量的成果。在您进入实际练习时,您将应用这些技术来构建不仅能够规划,而且能够反思这些计划质量的智能体。