本文基于开源项目进行解读与拓展
- 官方项目地址:GitHub – microsoft/ai-agents-for-beginners
- 项目许可证:MIT License
构建值得信赖的 AI 代理
对于 AI 代理来说,系统提示更为重要,因为它们需要非常具体的指令来完成我们为其设计的任务。
为了创建可扩展的系统提示,我们可以使用一个元提示系统来为应用程序中的一个或多个代理构建提示:

- 什么是元提示?
元提示是指用于指导或优化提示工程(Prompt Engineering)的高层次提示。简单来说,它是”关于提示的提示”,用于帮助创建更有效的AI交互提示。
- 元提示的主要特点
- 自我参照性:元提示通常包含关于如何构建更好提示的指导原则
- 优化功能:旨在提高原始提示的质量和效果
- 通用性:可以应用于多种不同的具体提示场景
- 元提示的常见用途
- 帮助非专业人士编写更有效的提示
- 作为AI系统自我改进提示的工具
- 在提示工程中建立最佳实践标准
- 自动化提示优化过程
- 元提示示例
一个简单的元提示可能是:
“请帮我优化以下提示,使其更清晰、具体,并增加获得高质量回应的可能性。原始提示是:[插入原始提示]”
1)第一步:创建元提示或模板提示
元提示将被提供给 LLM,用于生成我们为代理创建的系统提示。我们将其设计为模板,这样如果需要,可以高效地创建多个代理。
以下是我们可能提供给 LLM 的元提示示例:
2)第二步:创建基础提示
下一Agent 智能体步是创建一个基础提示来描述 AI 代理。应该包括代理的角色、代理需要完成的任务以及代理的其他职责。
示例如下:
3)第三步:将基础提示提供给 LLM
现在,我们可以通过将元提示作为系统提示,并结合基础提示来优化这个提示。
这将生成一个更适合指导 AI 代理的提示:
4)第四步:迭代与改进
这个元提示系统的价值在于能够更轻松地为多个代理扩展创建提示,并随着时间推移改进提示。很少有提示能在第一次就完全适用于用例。通过更改基础提示并将其运行通过系统,可以进行小幅调整和改进,从而比较和评估结果。

1)任务与指令
描述: 攻击者试图通过提示或操控输入来更改 AI 代理的指令或目标。
缓解措施: 执行验证检查和输入过滤,以检测潜在危险的提示,在它们被 AI 代理处理之前拦截。由于这类攻击通常需要频繁与代理交互,限制对话轮数也是防止此类攻击的有效方法。
2)对关键系统的访问
描述: 如果 AI 代理可以访问存储敏感数据的系统和服务,攻击者可能会破坏代理与这些服务之间的通信。这可能是直接攻击,也可能是通过代理间接获取这些系统的信息。
缓解措施: AI 代理应仅在需要时访问相关系统,以防止此类攻击。代理与系统之间的通信应确保安全。实施身份验证和访问控制也是保护信息的有效手段。
3)连锁错误
描述: AI 代理依赖多种工具和服务来完成任务。攻击者引发的错误可能导致其他系统的故障,使攻击范围扩大且更难排查。
缓解措施: 一种避免方法是让 AI 代理在受限环境中运行,例如在 Docker 容器中执行任务,以防止直接系统攻击。创建回退机制和重试逻辑,以应对某些系统返回错误的情况,也是防止更大范围系统故障的有效手段。
4)资源和服务过载
描述: AI 代理可以访问不同的工具和服务来完成任务。攻击者可能利用这一能力,通过代理发送大量请求来攻击这些服务,可能导致系统故障或高昂成本。
缓解措施: 实施策略以限制 AI 代理对服务的请求数量。限制对话轮数和请求次数也是防止此类攻击的另一种方法。
5)知识库污染
描述: 这种攻击并不直接针对 AI 代理,而是针对代理将使用的知识库和其他服务。这可能包括篡改代理完成任务所需的数据或信息,导致代理向用户提供偏颇或意外的响应。
缓解措施: 定期验证 AI 代理在其工作流程中使用的数据。确保对这些数据的访问是安全的,并且只有受信任的人员才能更改,以避免此类攻击。
3.人类参与AI Agent
这将创建一个流,用户可以在运行期间向代理提供反馈。用户实质上充当多代理系统中的代理,并通过批准或终止正在运行的进程来充当代理。

下面是使用 AutoGen 的代码片段,用于展示如何实现此概念:
1)代理创建:
- 是AI代理,使用GPT-4模型
- 是人类代理,通过函数从控制台获取用户输入
2)人类干预机制:
- 通过将人类纳入对话循环
- 每次轮到时,系统会暂停并等待用户输入
- 用户可以直接影响对话流程和内容
3)终止条件:
- 设置了一个特殊终止词
- 当用户输入”APPROVE”时,对话会自动终止
- 这给了人类完全控制对话何时结束的权力
4)交互流程:
- 使用轮询调度()让AI和人类交替发言
- 人类可以在每轮干预时:
- 提供反馈
- 修改AI的输出
- 决定继续或结束对话
5)实时交互:
- 和实现了实时流式输出
- 人类可以看到AI的即时响应并进行干预
这种设计模式常见于需要人类监督的AI应用场景,如:
- 内容审核
- 创意协作
- 敏感决策
- 质量把控
人类干预既可以是轻度的(仅终止对话),也可以是深度的(逐轮指导),取决于具体实现需求。
发布者:Ai探索者,转载请注明出处:https://javaforall.net/240805.html原文链接:https://javaforall.net
