引言
Agent在AI应用层面有巨大的潜力,然而今天对于开发者而言,构建Agent绝不是一件容易的事情,需要构建文本向量化,RAG(增强检索), 工具调用,长记忆存储,生成式Ui等多项技术能力,此外在Agent的交付,运维和内容安全等方面也有非常多的挑战,本篇针对以上挑战,尝试探索以解决Agent构建和交付的相关问题。
Agent平台
Agent介绍
Agent是指能自主感知环境并采取行动实现目标的智能体。基于大语言模型(LLM)的 AI Agent 利用 LLM 进行记忆检索、决策推理和行动顺序选择等。
更直观的可以理解为 Agent是具备理解自然语义并且进行实际行动和过程思考,最终完成人类指定任务的程序。
Agent应用案例
- 比如你可以一句话要求智能体帮助完成订餐,购物,旅行规划等任务;
- 比如你可以通过简单对话就能获取特性领域的知识;
- 比如你可以通过设定任务,直接获得大量资讯简化总结后的内容。
Agent平台介绍
基础模型管理
除了基础大语言模型以外,构建实际业务场景的Agent往往需要更多的多模态模型来完成复杂任务,那么统一管理这些基础模型是有必要的
数据集
数据是知识的根源,Agent要输出有价值的知识,数据的准备是必不可少的,通常在Agent领域,数据是需要被进行向量转化的,这也是作为基础平台能力一种
工具构建能力
前面提到了智能体能够感知世界,他感知世界的载体就是工具,快速构建工具服务,并且进行高效安全的管理运维是有必要的
智能体编排
在基础模型,工具,数据这些要素都具备之后,对他们进行有效的排列组合是生成Agent关键的一步
能力交付
构建出来的智能体只有真正应用到实际业务中才能发挥价值,这时候Agent本身的交付就至关重要,基于平台,可以将智能体交付成一个api, 一个独立客户端,多个服务构建的群聊机器人以及可集成到已有站点多sdk或者脚本等
生成式UI
生成式UI属于交付特性的一种,但对于真正发布Agent的价值有着非常大的作用,因为人们需要的是更丰富的交互场景,而目前纯粹的LLM智能输出文字。
有无Agent平台构建Agent对比
Agent开发步骤 | 不基于Agent平台开发 | 基于Agent平台开发 |
---|---|---|
数据准备 | 需要编写代码实现对不同数据源的处理,并进行向量化,持久化 | 可视化上传文件自动完成切片,向量化,持久化 |
LLM适配 | 基于闭源LLM编写代码进行API调用,或者使用开源进行兼容适配 | 提供兼容性的LLM接入方案,以及提供开箱即用的开闭源LLM应用模板 |
工具能力建设 | 需要设置本地环境,开发,调试,部署发布,运维 | 开箱即写,提供场景模版,一键发布,安全运维 |
智能体编排 | 需要代码编写提示词进行调试,复杂推理提示词需要结合推理架构进行编写,成本较高 | 可视化的提示词编写,所见即所得,内置主流推理架构,开发者只需关注业务关联的信息 |
安全兜底 | 自己处理内容安全,数据安全,应用程序安全等问题 | 集成成熟的安全方案, 包括内容,数据,应用程序等 |
前&后应用开发,部署 | 编码开发前后端的逻辑,并且需要部署服务器 | 服务端无代码生成,自动托管到云服务,前端支持自动化接入和模板化部署,并且支持定制UI |
Agent平台技术方案
云上架构设计
功能技术拆解
核心模块
Agent平台的核心模块负责完成对外的api透出以及,领域模型的承载, 此外包含RAG 核心技术和AgentRuntime 在内,复用于不同场景构建出的智能体应用
数据处理
各类文本的非结构化数据,通过Bert模型进行向量转化,存储于向量数据库中,通过向量的近似匹配进行检索增强
基础模型
对基础模型的服务商进行托管或者将开源模型部署到函数计算之上,再通过中间协议层的打通可以实现不同基础大模型的无缝切换
执行工具
工具的构建和运行均有阿里云函数计算提供相应的服务, 结合内核的AgentRuntime可以无限扩展Agent的能力
客户端连接
通过构建连接层的服务,可以将智能体的能力跟钉钉,微信,浏览器等终端连接,解决用户使用AI能力最后一公里的问题
总结
Agent可以将业务能力跟LLM连接,已经非常确定其在AI应用落地中不可或缺,今天构建Agent的方案势必无法满足未来广泛爆发的需求,通过平台化的平台可以最大程度的缓解Agent供给不足的压力,更详细的Agent平台使用及介绍参考AgentCraft使用教程