OpenAI Agents SDK 强化安全防护:如何有效阻止不当操作与内容
近日,OpenAI在其官方文档中推出了AI Agents SDK的最新版本,重点强调了“护栏”机制(guardrails)。这一机制旨在确保AI代理在运行过程中不会违反预设的安全规则或执行不合适的行为。具体来说,OpenAI采用了乐观执行模型,即主代理在生成输出时会主动执行任务,而护栏则以并行方式监控这些行为,一旦发现违反约束的情况,便会及时引发异常。 为了更好地理解和应用这一机制,Cobus Greyling在其Medium博客上发布了一篇详细的示例教程。Greyling是一位在Kore.ai担任首席布道师的技术专家,专注于探索AI与语言的交集。在他的演示代码中,他通过一个简单的Python脚本展示了如何实现AI代理的输入验证和动作限制。 首先,用户需要创建一个名为openai的虚拟环境,并激活该环境。然后,安装OpenAI Agents SDK库。这一示例代码包括了一个AgentGuardrail类,该类中有三个主要方法: 验证输入:validate_input方法会检查用户输入是否包含预定义的禁止词汇,如“危害”、“暴力”、“非法”等。如果检测到任何禁止词汇,系统将记录警告日志并返回错误消息。 限制动作:restrict_action方法会检查用户请求的动作是否在允许的动作列表中。例如,允许的动作包括发送消息、获取数据和安排活动。如果动作不在允许列表中,系统同样会记录警告日志并返回错误消息。 执行安全动作:execute_safe_action方法会先调用上述两个方法来确保输入和动作都是安全的,然后模拟执行允许的动作,并记录成功的日志。 通过几个具体的测试案例,可以看出这一机制的有效性。例如,当输入内容为“请团队发消息”且请求动作为“send_message”时,系统成功执行了动作。然而,当输入内容为“执行非法行为”或“对系统造成伤害”时,系统会立即拒绝这些请求并记录相应的警告信息。