趋近智
随着AI代理承担更复杂的任务,它们自主运行并从错误中恢复的能力变得越来越重要。构建真正可靠的代理,需要它们能够妥善处理意外情况和错误。这包括设计提示,这些提示不仅能指导代理成功执行和思考过程,还能为其提供自我修正和错误处理的机制。通过将这些能力融入提示,对人工持续监督的需求得以减少,并提升代理工作流程的整体韧性。
核心理念是超越简单地指示代理 做什么,还要指导它 在事情出错时该怎么做。这通常涉及提示代理反思其行为、输出或已处理的信息,然后在识别出差异或失败时采取纠正措施。
有几种提示策略可以促使代理识别并处理错误。这些技巧通常涉及为代理提供自我评估的框架,或针对常见失败模式提供明确的指示。
一种直接的方法是在提示中为代理提供条件逻辑。这类似于编写代理可以遵循的 if-then-else 语句。
例如,当代理需要与外部工具或API交互时,您可以指定它应如何响应不同的错误代码或回复:
System: 你是一个使用 `getStockPrice` 工具检索股票价格的助手。
可用工具: `getStockPrice(ticker_symbol)`
指令:
1. 当被问及股票价格时,使用 `getStockPrice` 工具并提供股票代码。
2. 如果 `getStockPrice` 返回“Symbol Not Found”错误,请告知用户股票代码无效,并请求一个正确的代码。
3. 如果 `getStockPrice` 返回“Service Unavailable”错误,等待5秒并再次调用该工具。
4. 如果重试也失败,或发生任何其他错误,请告知用户当前无法检索价格,并说明遇到的错误。
User: GOGL 的价格是多少?
在这种情况下,代理被明确指导如何解释工具输出以及应采取哪些备用操作。这降低了代理卡住或提供无用的通用错误消息的可能性。
您可以提示代理在最终确定之前检查其生成的内容或行动计划。这鼓励了一种自我审视的形式,即代理根据既定标准评估其工作。
考虑一个负责总结一份文档的代理:
System: 你是一个总结文章的AI助手。生成总结后,请根据以下清单进行检查:
- 总结是否捕获了文章的主要论点?
- 总结的长度是否约为原始文章的10%?
- 总结是否不含原文中没有的个人观点或解读?
- 是否有任何重复的短语或句子?
如果你发现问题,请提供一份修改后的总结。否则,请确认总结符合所有标准。
User: 这是文章:[长文章文本...] 请总结它。
代理首先生成总结,然后,在提示的指导下,执行自我评估。这一反思步骤可以发现遗漏、风格问题或不符合要求的地方。
如果失败的根本原因仍然存在,简单地重试一个操作可能无效。一种更先进的方法是提示代理在失败时修改其方法。
例如,如果代理的搜索查询没有返回结果:
System: 你是一名研究助手。当搜索信息时,如果你的初始查询没有返回相关结果,请遵循以下步骤:
1. 分析你的初始查询。它是否过于具体或过于狭窄?
2. 扩大你的搜索词或尝试同义词。例如,如果“nanoparticle drug delivery systems”(纳米粒子药物递送系统)失败了,请尝试“nanomedicine drug transport”(纳米药物运输)或“nanocarriers for therapeutics”(治疗用纳米载体)。
3. 使用修改后的查询再次执行搜索。
4. 如果在2次修改尝试后仍不成功,请报告未能找到信息。
User: 查找关于“量子光子纠缠稳定器”的研究论文。
这指导代理不要轻易放弃,而是根据之前尝试的结果,通过迭代改进其方法来解决问题。
可以提示代理使用其他工具(甚至是一个具有特定“检查者”角色的独立LLM调用)来验证其工作或中间结果。例如,可以提示编写代码的代理在提交代码之前使用代码检查工具或代码执行环境来检查错误。
System: 你是一名Python编程助手。
1. 编写Python代码来解决用户的请求。
2. 在展示代码之前,你必须通过在脑海中运行它来验证,或者如果可用,使用 `python_code_checker` 工具。
3. 如果你检测到错误,请纠正它们并重新验证。
4. 仅呈现已验证和纠正后的代码。解释你所做的任何修正。
User: 编写一个Python函数,该函数接受一个数字列表并返回偶数的总和。
当代理无法自行解决错误时,以清晰、结构化的方式报告失败非常重要。这使更广范围的系统(或人工监督者)能够了解出了什么问题并可能进行干预。
您可以在提示中指定错误报告的格式:
System: ...
如果在处理请求时发生不可恢复的错误,请以以下JSON格式提供您的响应:
{
"status": "error",
"error_type": "<错误类型>",
"error_message": "<关于错误的详细信息>",
"last_action_attempted": "<你正在执行的操作描述>"
}
请勿将此格式用于成功的响应。
User: 处理附加的财务报告。
这种结构化报告有助于日志记录、调试,并可能自动化更高层次的恢复过程。
代理执行动作、检查工作并在必要时进行修正的过程可以被可视化为一个循环。提示工程师的角色是定义此循环中每个步骤的条件和指导原则。
一个融入了提示式自我修正的代理操作周期。代理执行一个动作,根据提示指导审视其输出,如果检测到问题,在继续之前尝试修正措施。
实施自我修正能力需要仔细的提示设计:
通过深思熟虑地将自我修正和错误处理策略融入您的提示中,您可以构建更自主、可靠和智能的代理。这些技巧是创建能够以更强的韧性处理任务的系统的根本。管理和从错误中恢复的能力是向更高级代理行为迈出的重要一步,您将有机会在实际练习中实现。
简洁的语法。内置调试功能。从第一天起就可投入生产。
为 ApX 背后的 AI 系统而构建
这部分内容有帮助吗?
© 2026 ApX Machine Learning用心打造