链载Ai

标题: OpenAI的ResponseAPI介绍 [打印本页]

作者: 链载Ai    时间: 昨天 17:54
标题: OpenAI的ResponseAPI介绍

2025是Agent的元年,上周Manus的爆火让大家真实体验了一把什么是Agent,同时也让Anthropic去年就提出的MCP协议再次爆火了一把。本周OpenAI也出了大招,开源了一系列Agent套件。观察下来,感觉这次发布会真正开源了一些可以实战应用的效率工具,同时也开放了两款搜索模型,今天我们详细讲讲这些更新具体为我们带来了哪些有价值的东西~


1、主要功能和受益场景







2、核心特点


2.1 核心概念


1)原子概念


2)循环机制

当调用 `Runner.run()` 时,AgentSDK会运行一个循环,直到获得最终输出。

通过 `max_turns` 参数,可以用来限制循环执行的次数;




2.2 核心特性


核心特性可以用一句话概括:一个全新API、三个内置工具,以及一个开源SDK。具体包括:

图片


3、MCP对比


2024 年 11 月,Anthropic 发布了MCP协议,强调其目标是 打破信息孤岛,解决传统集成中因数据源多样性导致的扩展难题。


用通俗的话讲,MCP就像是专为AI应用设计的通用接口,类似我们日常使用的USB-C。正如USB-C简化了不同设备与计算机的连接方式,MCP简化了AI模型与数据、工具和服务之间的交互方式。通过MCP,AI助手不仅能够「读懂」代码,还能「理解」团队讨论、涉及文档等外部信息,提供更加精准的回答。



具体实现起来并没有那么复杂,形式上跟flask没有特别大的差异:









python的mcp-sdk提供了一个高阶的客户端界面用来连接MCP服务器,下面是一个具体的例子:


总体来看,MCP更多在于提出了一种交互标准,而AgentSDK则更多的给了Agent交互具体的实现,入门程度更低且更偏向于实际应用。如果ResponseAPI更早一点,感觉OWL和OpenManus可能会更优先选择后者了。



4、实际效果演示


4.1 接口的变化

从接口输入来看,与completion接口的主要差别是入参从messages替换成inputs参数,这样可以覆盖更多的属性,例如tools/function都可以作为参数传递进来。





4.2、完整调用链路

我们通过官方给的一个case调用来解析下一次请求具体做了哪些事情。


我们通过守住与openAI最终交互的入口处,来监控AgentSDK的具体动作:

${HomePython}/site-packages/openai/resources/responses/responses.py-1414行,使用pycharm加入一个断点:


1、调用调用栈

整体看起来更像是一个异步消息的分发处理机制,这个整体跟chatgpt出现之前的rasa框架很类似,多线程和协程搭配工作,然后对每一步失败后按照最大重试次数进行重试。


2、路由链路

通过triage_agent将问题路由到shopping_agent,发生一次handoff交接处理;


3、搜索链路

shopping_agent调用WebSearchTool联网查询问题;

这里的tools参数type=web_search_preview是一个调用联网模型的过程,搜索引擎直接返回结果目前没有直接透出。这里看起来是一个多步的操作,先调用搜索引擎,然后加工处理,最后透出输出结果。貌似没有看到openAI前台页面可以选择不同搜索引擎的参数。



4、后处理链路

shopping_agent处理返回结果保存成消息输出,下图为变量ouput的最终结果,包括前文介绍的统一结构的item,可以结合代码具体观察一下。


存在的一些问题:

在实际应用的时候,需要考虑到比较多的兜底路由情况,如果不能完整定义调用链路,那么很容易导致模型产生错误的路由。比如上面这个case中,我问的天气,但是最后路由到shop的agent下。如果客户的输入比较随意,可能会导致一些意料之外的事情,会出现比较尴尬的事情。


5、商用案例


开发者可以使用计算机使用工具,来自动化基于浏览器的工作流程,如执行网络应用程序的质量保证或在传统系统中执行数据录入任务。对于那些缺乏API和标准化数据的企业,就可以利用计算机使用工具自动化复杂的运营流程。


在最近与一家主要社区服务组织的试点项目中,Luminai仅用几天时间就实现了申请处理和用户注册流程的自动化——这是传统 RPA(机器人流程自动化)经过数月努力都难以实现的。


Coinbase⁠使用Agents SDK快速开发并部署了 AgentKit,这是一个让AI智能体能够无缝连接加密钱包和各种区块链活动的工具包。Coinbase仅用几小时就将其开发者平台SDK的自定义操作集成到了一个功能完备的智能体中。AgentKit的精简架构简化了添加新智能体操作的流程,让开发者能够更专注于有价值的集成,而不是消耗在复杂的智能体配置上。


未来小编就准备把之前做过的RAG和查询、搜索类工具结合AgentSDK做一个无缝的集成,大大降低代码复杂度。






欢迎光临 链载Ai (https://www.lianzai.com/) Powered by Discuz! X3.5