我想问您一个问题:上次为了让AI代理调用某个第三方API,您花了多长时间写包装代码?一天?三天?还是一周?不过现在,Brandeis大学的研究者们带来了一个让人眼前一亮的解决方案——Doc2Agent,它能从API文档直接生成可执行,MCP可调用的Python工具,而且成功率还挺不错。
链接:https://github.com/coolkillercat/Doc2Agent [1]
现在大部分AI代理框架都假设API文档是完美的——格式统一、参数清晰、示例完整。但现实是什么样的呢?研究者们收集了167个真实API文档,发现只有24个算得上"高质量",剩下的要么缺参数示例,要么文档格式乱七八糟,有些甚至连基础URL都没写清楚。这就像您拿到一份没有说明书的家具,却要求马上组装好一样困难。
Doc2Agent的核心思路其实很直观:既然人能从文档理解API怎么用,那AI为什么不行?它设计了一个四步流程——工具生成、工具验证、工具优化、代理部署。第一步用GPT-4o从HTML或Markdown文档中提取结构化信息,就像您阅读文档时会标记重点一样。接下来把这些信息转换成Python函数,每个API调用都被包装成一个独立的工具。
自动修复:Claude来当"调试专家"
工具生成后怎么保证能正常运行呢?Doc2Agent设计了一套验证机制,用GPT-4o判断API响应是否符合预期,如果出错就让Claude-3.5-Sonnet来修复代码。这个组合很巧妙——GPT-4o善于理解和评估,Claude善于写代码和调试。最多经过三轮迭代,大部分工具都能达到可用状态,就像有个经验丰富的同事在帮您调试一样。
从代码实现角度看,Doc2Agent的工程化做得很扎实。它为不同HTTP方法准备了模板(GET、POST、PUT、DELETE),支持动态参数注入、认证函数集成、错误处理等。最有意思的是它的"目标导向生成"策略——对于复杂API,先生成一个函数"指纹"(定义用途和输入输出),再基于指纹生成完整代码。这就像先画草图再填细节,让生成的工具更贴近实际使用场景。
为了验证Doc2Agent的实际效果,我基于作者源代码开发了一个专门针对跨境电商场景的Doc2Agent代码,使用Deepseek v3替代GPT-4o进行文档解析,Deepseek R1负责代码修复,配合SentenceTransformer实现参数智能匹配。
实测结果如上:处理Stripe支付API仅需84秒,DHL物流API用时101秒,基础功能测试100%通过,自动修复后代码可直接用于生产环境。传统方式下一个5人团队需要2-3个月才能完成的API集成工作,现在90秒就能自动生成包含完整错误处理、类型注解和测试示例的生产级代码。
以上图跨境电商Doc2Agent生产的create_payment_intent(创建支付意图)工具为例,这并非一个简单的API调用封装,而是一段生产级的Python代码:
可以说,Doc2Agent输出的不仅是一个能跑通的脚本,而是一个遵循了软件工程最佳实践、可以直接集成到严肃商业项目中的可靠工具。
这种自动化带来的商业价值是显而易见的。按照每个高级工程师1000元/小时计算,传统API集成成本约20,000元/个,而自动化方案几乎为零成本,ROI超过1500%。更重要的是,生成的代码可以直接被AI客服调用:客户询问支付问题时,系统2秒内自动创建新支付链接;查询物流时,3秒返回包裹详细状态;价格换算1秒完成实时汇率计算。对于需要快速集成多个第三方服务的创业公司来说,这种"一个文件、开箱即用"的解决方案堪称降维打击,让原本需要专业开发团队数月完成的工作变成了产品经理也能搞定的配置任务。
这里有个很有意思的发现——当API文档缺少参数示例时,直接让GPT-4o猜测的成功率很低。所以研究者们想了个聪明的办法:构建一个参数数据库,从已经验证成功的API响应中提取参数值,然后用语义相似度匹配来推断新API的参数。比如一个API需要"user_id"参数,系统会从数据库中找到类似的用户标识符,成功率比盲猜高了一倍。
在WebArena基准测试中,Doc2Agent表现确实不错:平均成功率从29.2%提升到45.3%,这是55%的相对提升。更重要的是成本控制——每个任务只需要0.12美元,而直接调用API的方法需要1.20美元。为什么会有这么大的差异?主要是因为工具化后,代理不需要每次都解析冗长的API文档,而是直接调用现成的Python函数。
研究者们还做了一个很有意思的实验——为糖生物学领域构建专门的AI代理。这个领域的API特别复杂,不同数据库用的标识符和格式都不一样,比如同一个糖分子可能有IUPAC、GLYCAM、GlyTouCan ID等多种表示方法。Doc2Agent自动生成了70个工具,成功率达到81.5%,证明这套方法在专业领域也很实用。
您可能担心这些生成的工具怎么集成到现有项目中?Doc2Agent支持两种部署方式:MCP服务器和OpenAPI规范导出。MCP是Anthropic提出的标准协议,可以直接集成到Claude Desktop、LangGraph、LlamaIndex等框架中。想象一下,您只需要把API文档丢给Doc2Agent,几分钟后就能得到一套完整的工具包,直接在您的AI应用中使用。
当然,Doc2Agent也有局限性。它依赖现有的API文档,对于没有文档的API就束手无策了。另外,对于有状态的API(需要多步操作的),验证机制还不够完善。还有就是参数推断主要依赖API间的依赖关系,如果是完全独立的API,效果会打折扣。不过考虑到这是第一个系统性解决这个问题的方案,这些局限性都可以理解。
如果您正在开发需要大量API集成的AI产品,不妨直接试一下Doc2Agent。虽然现在还是研究阶段,但核心思路已经很成熟了。您可以考虑在项目中实验这种自动化的API包装方法,特别是对于那些文档质量不高的第三方服务。毕竟,能让机器做的事情,为什么要让人来做呢?
未来已来,有缘一起同行
文章来自于微信公众号“AI修猫Prompt”。
【开源免费】OWL是一个完全开源免费的通用智能体项目。它可以远程开Ubuntu容器、自动挂载数据、做规划、执行任务,堪称「云端超级打工人」而且做到了开源界GAIA性能天花板,达到了57.7%,超越Huggingface 提出的Open Deep Research 55.15%的表现。
项目地址:GitHub:https://github.com/camel-ai/owl
【开源免费】Browser-use 是一个用户AI代理直接可以控制浏览器的工具。它能够让AI 自动执行浏览器中的各种任务,如比较价格、添加购物车、回复各种社交媒体等。
项目地址:https://github.com/browser-use/browser-use
【开源免费】AutoGPT是一个允许用户创建和运行智能体的(AI Agents)项目。用户创建的智能体能够自动执行各种任务,从而让AI有步骤的去解决实际问题。
项目地址:https://github.com/Significant-Gravitas/AutoGPT
【开源免费】MetaGPT是一个“软件开发公司”的智能体项目,只需要输入一句话的老板需求,MetaGPT即可输出用户故事 / 竞品分析 / 需求 / 数据结构 / APIs / 文件等软件开发的相关内容。MetaGPT内置了各种AI角色,包括产品经理 / 架构师 / 项目经理 / 工程师,MetaGPT提供了一个精心调配的软件公司研发全过程的SOP。
项目地址:https://github.com/geekan/MetaGPT/blob/main/docs/README_CN.md
【免费】ffa.chat是一个完全免费的GPT-4o镜像站点,无需魔法付费,即可无限制使用GPT-4o等多个海外模型产品。
在线使用:https://ffa.chat/
【开源免费】LangGPT 是一个通过结构化和模板化的方法,编写高质量的AI提示词的开源项目。它可以让任何非专业的用户轻松创建高水平的提示词,进而高质量的帮助用户通过AI解决问题。
项目地址:https://github.com/langgptai/LangGPT/blob/main/README_zh.md
在线使用:https://kimi.moonshot.cn/kimiplus/conpg00t7lagbbsfqkq0