我厌倦了AI代理拥有“上帝模式”,所以我为Python构建了一个工具防火墙。

Reddit r/AI_Agents 工具

摘要

ToolRampart 是一个开源的 Python 框架,它为 AI 代理的工具调用添加了安全边界,具有 Pydantic 验证、审批流程、速率限制和审计日志等功能。

我一直在用AI代理和MCP工具开发,有个问题始终困扰我:我们给代理赋予真实能力的速度,远快于给它们设定安全边界的速度。所以我做了 **ToolRampart**,这是一个开源的 Python 框架,位于你的代理和 Python 函数之间。思路很简单:你的代理可以调用有用的工具,但每次调用都可以经过以下约束: * Pydantic 输入验证 * actor 作用域 * 自定义策略检查 * 高风险操作的审批流程 * 幂等键用于重试 * 速率限制 * 超时/重试 * 可选的子进程隔离 * 输出验证 * 脱敏审计日志 * 可选的 OpenTelemetry * MCP 兼容的工具暴露 说白了就是:**面向安全 AI 工具的 FastAPI。** 简单示例: ```python from toolrampart import require_approval, scope, tool @tool("billing.refund") @require_approval(over_amount=500) def refund_user(user_id: str, amount: float, reason: str) -> dict: return {"status": "refund_started", "user_id": user_id} ``` 然后运行: ``` toolrampart serve my_tools ``` 目前是 alpha 阶段,所以我不会假装它是什么久经考验的企业级安全产品。我真正想要的是来自那些正在构建代理、MCP 服务器、内部工具、支持机器人、运维机器人,或者任何让 LLM 接触真实系统的人的真实反馈。 我想解决的问题是:**“LLM 想调用函数”和“函数实际运行”之间,应该存在什么?** GitHub/文档链接在评论区。欢迎大家给出尖锐反馈,尤其是关于安全模型、API 设计以及下一步应该添加哪些集成方面的意见。
查看原文

相似文章