传统 LLM-based AI Agent 运维平台在复杂应用开发方面存在一定局限 ,复旦大学人工智能创新与产业研究院(AI³)徐盈辉研究员与 AI2Apps 团队打造的 AI2Apps 可视化集成开发环境集成了工程级的开发工具,覆盖 AI Agent 完整开发周期,具有完全开放的扩展性,并自带浏览器沙盒环境,借鉴 Figma 的理念,支持开发者向协作者实时共享创作进度实现协作开发,帮助开发者一站式高效构建 AI Agent 应用,减少创作过程中的“拘束”。Enjoy。
《AI2Apps: A Visual IDE for Building LLM-based AI Agent Applications》
AI2Apps 系统架构
解决问题:传统 LLM-based AI Agent 运维平台在大幅降低用户开发门槛的同时,往往难以兼顾对专业开发者的需求,从而制约了设计、编码、调试的灵活性,不利于发展更复杂的 AI Agent。AI2Apps 作为首个面向 LLM-based AI Agent 应用的可视化集成开发环境(Virtual IDE),覆盖了从原型设计、代码编写、Agent 调试以及最终打包发布的完整开发周期,帮助开发者高效地构建 AI Agent
模型框架: AI2Apps 框架包括 1. 原型画布 2. 代码编辑器 3. Agent 调试器 4. 发布工具 5. 插件扩展系统 6. 基于自研浏览器操作系统(Tab-OS)构建的管理系统
使用效果:AI2Apps 集成了工程级开发工具,以及覆盖前后端全栈式可视化组件,使得开发者能够通过组件拖拽与代码编程并行方式在一套“画布”GUI 上进行一站式 Agent 应用构建,开发效率大大提升。在团队协作方面,AI2Apps 借鉴了知名协作设计工具 Figma 的理念,支持开发者通过二维码链接向协作者实时共享其创作进度,并通过内置的版本控制功能实现协作开发。在部署方面,AI2Apps 具备 Web-IDE 特性,部署后打开浏览器即可使用,并自带沙盒环境,将每个 Agent 项目低消耗地安全隔离在独立的浏览器 Tab 页面,无需在端侧配置 Docker 等容器环境
应用空间: 任何领域任何类型的 LLM-based AI Agent 开发,就像 VScode 等开源通用 IDE 一样,AI2Apps 具有完全开放的扩展性,开发者可以将外部代码封装成微服务形式,插入 AI2Apps 作为新的可视化组件使用。AI2Apps 既可以单独作为 Web-IDE 使用,也便于被集成进大语言模型运维平台
AI2Apps 开发工具集成度/组件可视化程度
绿洲:您认为 Agent 与大家讨论的 AGI 底层关系是什么?
徐老师:目前已经进入后大语言模型时代,除了 OpenAI,其他人很难显著拉开底层基模的差距。Agent 设立过程包括规划(Planning)、模型选择(Model Selection)和执行(Execution),其体系最有效的方式是“搭积木”一样快速做一个任务。目前“搭积木”还得靠人,例如 AI2Apps 也需要人进行编排,无限光年会考虑将 AI2Apps 的技术理念融入光语启智大模型研发平台,为业界提供高效灵活的大模型智能体构筑能力。
目前 Agent 一方面可用于开发系统应用,另一方面它可以做指令微调(IFT)的数据处理工具,过去收集数据完全靠人工,难度不小。OpenAI 有比较大的流量,十几亿人在用,可以通过用户 QA 形式完成,QA 过程中会微调一些工具。人使用大模型的过程就是一个 Agent,使用过程中产生的大量数据,用于大语言模型微调,使得大模型持续生产能力强化,模型自然学会更多指令,并精准执行。未来 Agent 能够自动整理并收集大模型的用户数据,随着这样的数据越来越多,基模通过超级对齐利用 Agent 能力进行微调逐渐变成可能。
AGI 是什么意思?一言而概之,即通过人工智能让机器像人一样思考。每个人能力都不一样,老司机可以一把到位,欠缺经验的需要绕一绕,好的智能化大模型应该去适配不同的平台工作风格。但总体来说我认为 Agent 是没到 AGI 终局的中间过渡态,换句话说就是软件 1.0 到软件 2.0 的过渡。单靠 LLM 无法胜任人类复杂的任务体系,很多行业的数据需要在系统应用过程中沉淀出来,再教模型如何做事。这是一个过程,在实现 AGI 之前,Agent 就是最佳解决方案。
至于 AGI 何时会实现?我的理解是,日常生产生活中,办公室里至少有一半“员工”是硅基生物,就差不多实现 AGI 了(笑)。
绿洲:虽然每个人心中有不同的 AGI,但最终 AGI 实现后,可能大家就不再需要 Agent 了,类似于过去软件替代自动化的逻辑,这样理解对么?
徐老师:对,我们有很多客户和身边的人表示很需要非结构化数据的结构化,比如金融领域,其数据的结构化处理非常难,各种证券银行都需要通过爬虫、采买进行数据结构化处理形成有价值的研究,万得做的就是这个业务。医疗领域也一样,需要收集大量数据汇总,其中的问题是原来这种系统里对结构化要求很强的数据,必然会导致业务系统仅在结构化表面建立,例如辅助智能问诊,生动化系统,这些都是人思考之后流程化、界面化互动变成的模块,背后有一堆规则,然而过程中产生的交互数据会天然成为从软件 1.0 到软件 2.0 所必须的基层数据。我认为今后不再需要软件 1.0,会利用所有交互数据输入大模型,自然地把软硬件替代掉,这就是 Agent 在做的事情。
Agent 的流程是用户输入指令,后端调用大语言模型,期间可能会调用 RAG,出完结果以后将多轮对话存储到记忆,这期间我们可以将 AI2Apps 的 A Agent 与 B Agent 记忆连接,构建两个人对话的环境。例如 A 模拟医生,B 模拟患者,模拟医患之间对话进行问诊训练,医生利用就医指南微调,患者利用个人家族史、病史等数据微调,这种对话环境已经能够很好地映射现实世界应用了。
另外在这种对话环境中我们会生成合成数据,Agent 天然就是很好的合成数据产生集,数据越多,就可以搭建更好的应用。为 Agent 注入思考,将 Agent 行为流程化,这背后的价值很大。
绿洲:您一直提到用户数据的重要性,在处理用户数据进行微调的时候您的团队有没有特别的处理方式?
徐老师:和做预训练数据一样,我们要根据反馈去看数据到底要不要纳入最终学习体系,我们希望找到整个人类社会解决问题的方法。就像我们要找到通往罗马的道路,“找到道路”是最终反馈,但“何时找到”是反馈中间的偏好和信号,因此我们要建立反馈中优先选项的信号,然后帮助用户筛选所有可能的产品。
整个人类社会不是整齐划一,按照一个范式去执行任务,认知程度也参差不齐,因此要建立数据处理的引擎,对所有数据进行统一管理,才能让这些数据有生命力,反向提升 Agent 的能力。
绿洲:Agent 能不能只学最佳案例(Best Practice)?
徐老师:拿经济来类比,最大的问题是资源分配,一个人的知识就是他的资源,你无法让所有人都受最好的教育,得到最好的资源,因为资源是有限的。硅基时代资源稀缺性也一样,你无法让所有人都获得 H800 或 A800,最终 Agent 的知识水平以及能力也是有边界的。
筑聪:我自己的博士课题做科学智能体,AGI 是我们最高级别的目标。我们时常在思考 AGI 最高的目标是不是拓宽人类的边界,如果是,应该去做科研探索。但每个人做科研的方式不同,大家只能通过试错才能从不同角度拓宽人类边界。这个过程中使用的数据,都是个人的 Know-How,我们无法让所有人齐头并进学习最佳案例再去做科研。
当然从数据收集的角度来看,假如我们将科学 Agent 部署好,它会源源不断收集任务,让人类科学家去和 Agent 交互,这个过程也可以搜集到大量人类思考和数据,利用这些数据调出很多的 Agent。这时只有简单问题存在最佳案例,难或复杂的问题很难存在公认的最佳案例,还是需要在不断的数据收集、调优之后才能评估。也就是说复杂情况下很难利用最佳案例进行部署。
现在每个人无形之中已经从碳基进入硅基了,过去有个概念是 Machine-in-the-human-loop(机器在人的循环),现在已经逐渐变为 Human-in-the-machine-loop(人在机器的循环)。传统产线从 20 个工人减少到 2 个工人,只有机器出问题的时候人类才会干预。未来人有人的优势,机器有机器的优势。机器不会像人一样有情绪,而工厂的规范可能完全变革为规范机器的工作效率,与现在规范人的行为是完全不同的。
筑聪:刚才徐老师也提到了 AI 员工的概念,以后 SaaS 会由 AI 员工直接操纵,AI2Apps 的目标是冲着 AI 员工去的,AI 员工又是冲着全 AI 驱动的公司实体去的。之前 Sam Altman 的采访提到,未来的公司只需要人做销售和当法人,剩下的可以由 AI 员工担任。
未来在科研场景有科研助理 Agent,公司场景会存在财务 Agent、产品经理 Agent、程序员 Agent 等,且可以无限复制,AI 员工占比越来越大。Agent 从交互中汲取的知识形成新的 Agent 内容,这种工作方式是很值得期待的。底层基础决定上层建筑,为了实现未来像 AI 员工等更复杂的应用,社区需要更强大的开发环境,因此有了 AI2Apps。谈到社区,我们团队希望 AI2Apps 能够像 Figma(著名的界面设计工具,可用于网站设计等用途,Adobe 曾试图花费 200 亿美元收购 Figma)一样,开发者可以随时向协作者展示开发进度,从而根据建议调整方案。
团队在 AI2Apps 上还倾注了对 Agent 开发的两个思考。第一,目前 Agent 与人的主流交互方式仍只是对话,但自然语言不会是唯一的方式,也往往不是在真实场景下最有效的方式。因此 AI2Apps 还引入了菜单、按钮等十几种前端交互组件。第二,Docker(应用容器引擎)是否一定是跑 Agent 应用最佳的容器?因为 Agent 太“轻”而 Docker 又太“重”了,Docker 可能更适合服务器跑大模型而不是在端侧跑 Agent,因此我们团队探索了一种使用浏览器作为沙盒的方式,把每个 Tab 页面作为 Agent 的容器。
绿洲:两位老师如何看待今年多模态能力提升对 Agent 功能带来的变化?
徐老师:Sora 和文生图等其他相关的基础模型,最终都会成为开发者搭建任务链条里面的一个 MLOps(机器学习运维实践)。和系统对话的时候,需要 Agent 拥有对应文字、语言、图像等多模态的能力进行协同。当前从 Sora 披露的技术细节来看,底层应该利用了大量信息图像符号化(Tokenization)的技术路径,后面会加上生成视频和图像的超分来实现,换句话说无论是语言、图像还是声音,最后都嵌入到仅有解码器(Decoder-Only)的架构里,都是离散的。
当前大家的观点各异,有一派认为连续建模效果更好,我个人更倾向于离散建模,因为离散建模的文本态跟多模态的优化目标是一样的,这样长序列的生成就不会有问题。但一旦用来连续建模想做长序列内容生成的统一成本是很高的。目前国内还没有一家能够做到,离散建模对于算力的要求非常高,对于数据的贪婪程度远大于连续建模。我们很重视多模态为 Agent 能力带来的多样数据处理能力,同时也很关注离散建模方式的发展。
绿洲:AI2Apps 中设计各个功能模组、可扩展模块、用户交互等的可视化效果的原因是什么?
筑聪:因为 Prompt Engineering 不够可控的缘故,真正能落地的复杂 Agent 应用的开发变得很繁琐,尽可能追求更全面的可视化是降低其开发难度的好办法。可视化能让开发者从高维俯瞰整个项目,不断减少创作过程中的“拘束”。
AI2Apps 设计的可视化“画布”界面
绿洲:您认为 AI2Apps 比较适用于哪些行业?
筑聪:AI2Apps 适用于任意类型的 Agent 开发,这要看什么行业会有旺盛 Agent 的开发需求。我相信 Agent 的浪潮会逐步把如今所有的软件产品重做一遍。
绿洲:徐老师,之前您认为历史上只有搜索引擎做到了“技术及商业”,大模型和 Agent 时代,您觉得什么可以达到成为您心目中大模型时代新的技术及商业结合点?
徐老师:我觉得现在已经有端倪了,未来通过 Google 找信息的时代仍然存在,但相当一部分信息获取将通过 Chatbot 实现。Chatbot 目前最大的问题是偏知识型,专业性解答的问题,会衍生出很多垂类信息引擎,例如围绕医疗、娱乐分成大类。医疗可能是一个大的知识引擎,这个知识引擎未来的商业模式会发生改变,可能是商业融入到信息流里,例如个性化保健品推荐,符合个人饮食习惯的当地餐厅推荐……大模型生成的信息流里会嵌入合理的商业价值内容,和搜索时代商业与搜索引擎结合为一体的发展历程相似。
文章来自于微信公众号“緑洲资本 Vitalbridge”(ID:Vitalbridge),作者:参赞生命力
【开源免费】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
【开源免费】ScrapeGraphAI是一个爬虫Python库,它利用大型语言模型和直接图逻辑来增强爬虫能力,让原来复杂繁琐的规则定义被AI取代,让爬虫可以更智能地理解和解析网页内容,减少了对复杂规则的依赖。
项目地址:https://github.com/ScrapeGraphAI/Scrapegraph-ai
【开源免费】graphrag是微软推出的RAG项目,与传统的通过 RAG 方法使用向量相似性作为搜索技术不同,GraphRAG是使用知识图谱在推理复杂信息时大幅提高问答性能。
项目地址:https://github.com/microsoft/graphrag
【开源免费】Dify是最早一批实现RAG,Agent,模型管理等一站式AI开发的工具平台,并且项目方一直持续维护。其中在任务编排方面相对领先对手,可以帮助研发实现像字节扣子那样的功能。
项目地址:https://github.com/langgenius/dify
【开源免费】RAGFlow是和Dify类似的开源项目,该项目在大文件解析方面做的更出色,拓展编排方面相对弱一些。
项目地址:https://github.com/infiniflow/ragflow/tree/main
【开源免费】phidata是一个可以实现将数据转化成向量存储,并通过AI实现RAG功能的项目
项目地址:https://github.com/phidatahq/phidata
【开源免费】TaskingAI 是一个提供RAG,Agent,大模型管理等AI项目开发的工具平台,比LangChain更强大的中间件AI平台工具。
项目地址:https://github.com/TaskingAI/TaskingAI
【开源免费】MindSearch是一个模仿人类思考方式的AI搜索引擎框架,其性能可与 Perplexity和ChatGPT-Web相媲美。
项目地址:https://github.com/InternLM/MindSearch
在线使用:https://mindsearch.openxlab.org.cn/
【开源免费】Morphic是一个由AI驱动的搜索引擎。该项目开源免费,搜索结果包含文本,图片,视频等各种AI搜索所需要的必备功能。相对于其他开源AI搜索项目,测试搜索结果最好。
项目地址:https://github.com/miurla/morphic/tree/main
在线使用:https://www.morphic.sh/
【开源免费】XTuner 是一个高效、灵活、全能的轻量化大模型微调工具库。它帮助开发者提供一个简单易用的平台,可以对大语言模型(LLM)和多模态图文模型(VLM)进行预训练和轻量级微调。XTuner 支持多种微调算法,如 QLoRA、LoRA 和全量参数微调。
项目地址:https://github.com/InternLM/xtuner
【开源免费】LangGPT 是一个通过结构化和模板化的方法,编写高质量的AI提示词的开源项目。它可以让任何非专业的用户轻松创建高水平的提示词,进而高质量的帮助用户通过AI解决问题。
项目地址:https://github.com/langgptai/LangGPT/blob/main/README_zh.md
在线使用:https://kimi.moonshot.cn/kimiplus/conpg00t7lagbbsfqkq0