随着各家商业大模型的竞争进入白热化,单一的模型很难筑起长久可靠的护城河,主流大厂纷纷在应用生态与平台方向进入大模型“卷”的下半场。在服务上,从自有大模型服务进行衍生与拓展。包括:
提供第三方/开源大模型服务能力的MaaS
提供算力租用为主的基础设施服务
提供大模型微调、训练、评测为主的模型开发服务
提供开发、测试与发布的大模型应用开发平台服务
本文简单试用了来自百度、阿里与字节跳动的三家大模型应用开发平台的Agent开发,并做简单的总结供参考。
百度:AppBuilder
阿里:百炼
字节跳动:Coze
小结
需特别说明的是,本文试用的三个平台都尚处在快速迭代与更新中,因此文中的介绍可能与您体验时会有区别,请自行甄别。
01
SPRINGHASARRIVED
百度把原来在千帆平台上的大模型应用开发分离出来,作为单独的AppBuilder平台,也凸显了百度对未来大模型应用落地与生态的重视。
【功能实测】
AppBuilder包含应用创建/测试/发布、组件管理与知识管理三大功能(大部分LLM应用开发平台都类似),借助AI向导,可以快速的生成一个应用,然后进行个性化配置即可。我们以一个简单的“图片天气”的Agent应用为例:
创建应用。要求AI帮助生成配置或者直接自己配置
应用配置。包含应用基本设定与能力设定两个主要部分:
基本设定:配置应用的图标、说明和Prompt指令,支持AI优化
能力设定:即Agent可以使用的组件(工具)、用来做RAG增强的知识库、开场白与推荐问题等。这里我们选择两个组件,文生图和天气查询。
3.预览调试。对话测试Agent的能力,这里会展示详细的思考过程和执行细节,并且可以分别设定思考和问答的大模型(只支持自有模型)。这里可以看到智能体应用能够根据设定自动使用两个工具,完成了任务。
5.AppBuilder-SDK。AppBuilder提供了一套PythonSDK(开源,可使用pipinstallappbuilder-sdk安装),提供能力包括:
通过SDK调用自己创建的应用
通过SDK直接开发RAG类应用
通过SDK直接使用组件广场的组件
6.插件与工作流编排
目前在AppBuilder平台暂时还不支持自定义插件和工作流编排。
【使用总结】
Agent的配置功能较为全面。支持组件、知识库、检索策略、AI建议问题、思考与问答的大模型等
知识管理支持从URL自动更新。根据设定的频率从指定URL定期更新知识库,这非常方便。
SDK支持代码态创建RAG应用。
发布功能全面。支持快速发布成网页应用,对接多种渠道及API调用。
官方的工具组件较全面和强大,能够满足常见的LLM应用开发需求,特别是把一些AI能力包装成了组件(比如OCR识别、物体识别等)。
SDK暂时还不支持创建Agent应用。
暂不支持自定义组件。这限制了Agent与自有应用对接的能力。
暂不支持Agent工作流编排。完全依赖于LLM的规划与执行,在一些复杂场景下可能难以支持。
目前如果你需要更灵活的定义与开发Agent,需要借助百度的另一个独立的Agent开发与共享平台:灵境矩阵,一个对标OpenAI的GPTStore的平台。提供了零代码(简单配置)、低代码(Flow编排)、全代码(AssistantAPI,未发布)多种创建Agent的方式,支持自定义插件、Workflow可视化编排等。(后续与AppBuilder如何区分定位尚待观察)
我们用一个表格来总结AppBuilder的Agent能力:
appbuilder暂不支持。
灵境矩阵支持
02
阿里云的百炼大模型服务平台类似原百度的千帆,其主要功能包含两大部分,一个是模型中心(灵积),一个是应用中心应用中心就是这里的重点,用来在线开发LLM应用。
基本功能与百度类似,包括应用创建、插件与知识库管理等,但当前百炼的应用广场与插件广场还不够完善,仅有少量的官方插件提供。我们简单体验应用的开发过程:
1.创建应用
目前百炼创建应用主要是两种主要途径:
智能体API创建,有两种方式:
可视化创建:点击进入后默认是可视化配置Agent的方式;通过简单的应用配置与插件选择即可构建Agent。
AssistantAPI创建:通过官方的AssistantAPI用代码创建智能体
应用模版创建,目前看到两种模版:
流程编排应用:通过画布做工作流编排,定义自己的LLM应用。
RAG应用:基于私有知识库构建增强的LLM问答应用。
百炼的可视化智能体的配置与RAG应用配置目前都非常简单,基本就是定义指令、选择插件,或者选择知识库(RAG)后,剩下的就交给大模型来完成了。这里我们用流程编排构建一个测试应用“工作小助手”:
2.流程编排
我们试图在这里尽量使用到更多的功能:应用会识别输入者的意图(包括闲聊、查询客户信息、知识对话),并根据不同的意图路由到不同的分支,其中查询客户信息会调用API来完成,并且不同的分支使用不同的模型。
用到的全部节点类型包括:
开始结束节点:用于接受输入并定义输出信息
大模型:用于意图识别、闲聊输出,提取API参数
代码:对输出的JSON字符串处理并提取
判断节点:根据不同意图进行路由
API调用节点:使用问题中的参数调用API查询客户信息
百炼没有提供知识库RAG的节点,所以暂时没有实现知识对话的分支。
主要配置如下:
3.流程测试
在编排完成后,可以直接进行流程测试。输入问题后,可以观察到整个执行过程每一步的输入输出,整体较为友好:
4.应用发布
百炼目前主要支持通过SDK/HTTP来调用自己创建的Agent应用,将其接入自己的产品或系统。支持多轮对话、流式输出等。
5.AssistantAPI
百炼也提供了一套SDK用来开发与对接自己的应用。除了用来调用自己应用的SDK/HTTP接口外,还提供了一套AssistantAPI用于代码态下开发自己的Agent,且借鉴了与OpenAI的AssistantAPI类似的设计,支持插件的使用以及functioncall。
6.插件开发
百炼支持自定义插件,可通过OpenAPI的插件接口协议来定义,从而可以把应用对接到自己企业的系统和数据。
百炼的整体感觉是大量的功能仍在开发与完善之中,且在定位上更偏向于面向企业应用客户。
灵活的开发方式选择。有零代码可视化配置、AssistantAPI开发、流程编排三种方式构建Agent。
支持自定义插件。方便接入企业自有应用与系统
一些特有功能。比如应用可以做对话干预配置,有助于做一些风控干预;比如知识库管理支持向量存储的配置
支持应用评测。可以自定义评测数据,创建评测任务等,有助于更好的评估应用质量与效果,帮助快速上线
Agent中不支持配置RAG。Agent开发中(无论哪种方式)不支持配置使用私有知识库。RAG应用必须独立创建
知识管理与维护相对简单。缺少知识导入分片的配置、管理、命中测试、URL导入等
应用仅支持API调用接入。如需接入公众号等渠道,较为麻烦
目前提供的官方插件不够丰富。仅提供了搜索、计算器、代码解释器等少数几个插件
一些常见的Agent配置缺失。比如推荐问题等。此外RAG应用也不支持常见的高级检索配置,如多路检索
百炼的Agent开发能力总结如下:
03
Coze是字节跳动旗下的一站式AI应用开发平台,从出生开始就是比较纯粹的LLM应用平台,功能与体验也相对更简洁直观。
Coze的功能分布简单清晰,除去都有的插件商店和应用商店,进入个人空间,就是你所有可以开发的组件。包括:
Bots:就是AI应用。
插件:可基于API接口定义,也支持内置IDE开发。
工作流:这是Coze平台的工作流编排功能。但是与其他平台有所差异的是,Coze并不直接在应用中编排工作流,而是把工作流作为一种独立的“技能”(类似于一种更复杂的插件)进行独立配置,配置与测试完成后,可以在Bots的技能中进行引用或者在其他工作流中调用。
知识库:用来做RAG的私有知识库管理。
卡片:这也是Coze比较独特的功能。支持在Bot回复的时候使用表达形式更丰富的卡片进行回复,比如结合新闻标题/图片/描述的卡片,并且在点击时可以进行跳转。卡片的内容通常来自工作流或者插件的回复。
这里也创建一个简单的“工作助手”来体验Coze,功能是:
回答关于公司HR/行政制度的问题(RAG)
使用自然语言保存客户拜访记录并可翻阅
1.应用创建与配置
基于Coze的设计,这里存在两种Bot的技能配置方式:
一种是给Bot配置知识库技能(查询知识)、插件(客户查询)、以及数据库功能(保存客户拜访记录),并在人设中进行指示(Prompt):
另外一种方法是先编排一个工作流,完成以上逻辑。然后在bot配置中将该工作流配置成技能。这种方式下的指令相对简单:
2.应用测试
无论在插件设计、还是工作流编排、或者bot开发,都有直观、易用且有很完整跟踪信息的预览调试功能。
3.应用发布
Coze开发的应用支持发布到如下渠道进行对接,并可以提交到应用商店。但目前没有看到提供API方式做Bot调用。
4.插件开发
Coze支持自定义插件,并采用了插件->工具的两级管理方式,一个插件可以提供多个工具。Coze提供了目前我们认为最强大的插件开发功能:
基于已有的API创建。自行开发部署API后,可以在此通过向导配置,或者直接导入OpenAPI接口协议等方式增加插件。
基于Coze的IDE创建。可以在Coze中借助内置的开发环境,直接开发插件与工具,支持NodeJS与Python语言开发。
5.工作流编排
Coze也提供了很强大的工作流编排功能,除了常见的输入输出、大模型调用、条件判断节点、自定义代码等节点外,还支持知识库RAG,插件调用,其他工作流调用等,具备了较复杂Agent工作流创建的能力。我们应用中的工作流配置如下:
6.知识库管理
Coze的知识库管理不仅提供了常规的文本与表格文档的导入,还支持飞书文档、URL抓取、Notion导入,甚至还支持基于API的JSON数据导入,且支持根据设定的频率进行自动更新,这非常适合一些企业通过API定期将RAG需要的知识同步更新到Coze,而无需定期导出导入,非常方便。
个人感觉Coze是几个里面目前完成度最高且功能最强的LLM应用开发平台,其弱势可能是底层模型较单一(目前只支持云雀)。
Coze的各个模块的功能都较为完整,照顾到了多种实际使用场景与需求。一些留下较深印象的特有能力包括:
支持简单的内置数据库功能,可以用自然语言进行交互
插件支持多种方式导入,且支持内置的IDE进行在线开发与托管
知识库管理支持更多的导入与更新方式,特别是基于API的知识同步
工作流以独立组件的方式进行编排,且可以互相调用,提高了重用性
直接支持语音输出
工作流与插件的输出支持卡片的形式,并提供了很多官方模板
丰富的Bot商店与插件商店的选择
一些还可以进一步提升的地方包括
开发的SDK/API提供
更多底层大模型的支持与选择
工作流编排中更多的内置组件,比如意图识别、参数提取等
应用评测功能,方便基于测试数据进行应用评估
Coze的Agent构建能力总结如下:
04
结束语
经过基础模型爆炸式的发展阶段后,下游应用将成为大模型主流服务商的兵家必争之地。构建一个具备良好体验与较大粘性的大模型应用开发、共享与发布平台,将有助于占领先机并构建自己的生态圈,从而在未来获得竞争优势。而对于使用者与开发者来说,一个繁荣的应用生态将让更多的AI应用走近生活与工作。让我们一起期待这些平台的不断完善与强大!
再次强调,文中平台测试感受仅供参考,且限于本文发布时的当前版本。