Bsport体育app一|风吹亚吉拉|个智能助手搞定软件开发全流程从设计到运维统
这款AI助手专门针对开发领域设计✿◈ღღ,避免了通用大模型不可靠✿◈ღღ、信息不及时✿◈ღღ、领域任务不完善等问题✿◈ღღ。
这个AI助手名为DevOps-ChatBot✿◈ღღ,由蚂蚁Codefuse项目组研发✿◈ღღ,安装过程简单快速✿◈ღღ,还可通过docker完成一键部署✿◈ღღ。
随着ChatGPT等通用大模型以及各类垂直领域大模型的出现✿◈ღღ,各个领域的产品交互模式✿◈ღღ、用户信息获取模式都在逐步发生改变✿◈ღღ。
但DevOps对于事实的准确性✿◈ღღ、信息的及时性✿◈ღღ、问题的复杂性风吹亚吉拉✿◈ღღ、数据的安全性要求都比较高✿◈ღღ,通用大模型生成内容不可靠✿◈ღღ、信息不及时✿◈ღღ、领域任务不完善的问题始终存在✿◈ღღ。
于是✿◈ღღ,Codefuse团队发起并开源DevOps-ChatBot端到端AI智能助手✿◈ღღ,专为软件开发的全生命周期而设计✿◈ღღ:
通过DevOps垂类知识库 + 知识图谱增强 + SandBox执行环境等技术来保障生成内容的准确性✿◈ღღ、及时性并让用户交互修改代码编译执行✿◈ღღ,确保答案的可靠性✿◈ღღ;
通过静态分析技术 + RAG检索增强生成等技术来让大模型感知上下文✿◈ღღ,实现代码库级别的组件理解✿◈ღღ、仓库项目级的代码文件修改✿◈ღღ、生成✿◈ღღ,不单单只是函数片段级的代码补齐✿◈ღღ;
通过完善链路级的Multi-Agent调度设计✿◈ღღ、协同知识库✿◈ღღ、代码库✿◈ღღ、工具库✿◈ღღ、沙盒环境✿◈ღღ,来让大模型可以实现DevOps领域复杂多步骤的任务✿◈ღღ;
通过DevOps领域专属的领域模型和评测数据构建支持私有化部署来保障数据的安全性✿◈ღღ,以及特定任务的高可用性✿◈ღღ。
Codefuse团队期望通过本项目逐步改变原有的开发运维习惯✿◈ღღ,从各处资料查询✿◈ღღ、独立分散平台操作的传统开发运维模式转变到大模型问答的智能化开发运维模式✿◈ღღ,让“天下没有难做的Coder”✿◈ღღ。
除了上述功能模块的组装协同✿◈ღღ,DevOps-ChatBot项目还具有以下核心差异技术和功能点✿◈ღღ:
在处理复杂问题时✿◈ღღ,我们可以通过ReAct过程来选择✿◈ღღ、调用和执行工具反馈✿◈ღღ,实现多轮工具使用和多步骤执行Bsport体育app✿◈ღღ。
研究团队希望构建一个可扩展✿◈ღღ、易于使用的多智能体(Multi-Agent)框架✿◈ღღ,通过简易的配置即可辅助完成日常办公✿◈ღღ、数据分析✿◈ღღ、开发运维等各种通用任务✿◈ღღ。
本项目的多智能体框架汲取兼容了多个框架的优秀设计✿◈ღღ,比如metaGPT中的消息池(message pool)✿◈ღღ、autogen中的代理选择器(agent selector)等✿◈ღღ。
智能体信息交互(Agent Communication)✿◈ღღ:Agent之间有效的信息交流对于上下文管理以及问答效率提升至关重要✿◈ღღ。包含两种通信模式✿◈ღღ:简洁直观易于理解的链式对话✿◈ღღ、借鉴metaGPT的消息池框架✿◈ღღ;
标准操作过程(Standard Operation Process✿◈ღღ,SOP)✿◈ღღ:定义智能体的输入和输出范围和定义SOP标识✿◈ღღ,如Tool✿◈ღღ、Planning✿◈ღღ、Coding✿◈ღღ、Answering风吹亚吉拉✿◈ღღ、finished等✿◈ღღ,对LLM的生成结果进行标准化解析和处理✿◈ღღ;
计划与执行器(Plan and Executor)✿◈ღღ:增加大模型的工具使用✿◈ღღ、智能体调度Bsport体育app✿◈ღღ、代码的生成✿◈ღღ;
长-短期记忆管理(Long-short term memory Management)✿◈ღღ:为了模拟人类团队协作过程✿◈ღღ,增加一个专门负责内容总结(类似于会议助理)的Agent✿◈ღღ,对长期记忆总结并提取更有效的信息进行传递✿◈ღღ;
人-智能体交互(Human-agent interaction)✿◈ღღ:面对复杂场景✿◈ღღ,由人类介入智能体交互过程并提供反馈✿◈ღღ,使大模型能准确理解人类的意图✿◈ღღ,从而更有效地完成任务✿◈ღღ;
Prompt控制与管理(Prompt Control and Management)✿◈ღღ:负责协调和管理智能体间的Prompt交互✿◈ღღ,提升系统的复杂性控制和交互效率✿◈ღღ。输入和输出采用Markdown结构化设计✿◈ღღ,实现清晰规范的结果展示✿◈ღღ,方便阅读和解析✿◈ღღ。
实际操作过程中Bsport体育app✿◈ღღ,用户可通过组合多个智能体来实现一个完整且复杂的项目上线场景(Dev Phase)✿◈ღღ,如需求链(CEO)✿◈ღღ、产品论证链(CPO✿◈ღღ、CFO✿◈ღღ、CTO)风吹亚吉拉风吹亚吉拉✿◈ღღ、工程组链(选择者✿◈ღღ、开发者1~N)✿◈ღღ、部署链(开发者✿◈ღღ、部署者)等Bsport体育app✿◈ღღ。
研究团队归纳了开发中遇到的主要问题✿◈ღღ,从下图中可以看到在开发的过程中✿◈ღღ,现有代码库✿◈ღღ、依赖包的理解✿◈ღღ,代码检索✿◈ღღ、元信息查询等占用的时间更长✿◈ღღ:
针对如上问题✿◈ღღ,团队通过程序分析获取代码的逻辑结构并存入知识图谱✿◈ღღ,然后通过RAG迭代查询增强获取必要的上下文信息✿◈ღღ,又结合多智能体角色扮演✿◈ღღ,实现了大模型和代码库的有机结合Bsport体育app✿◈ღღ。
代码结构分析✿◈ღღ:针对代码原文进行清洗和去重来保留住有价值的代码部分✿◈ღღ。然后通过静态分析的手段✿◈ღღ,从代码库中挖掘到代码之间的依赖图✿◈ღღ,同时借助于大模型的理解能力来针对代码进行解读✿◈ღღ,在生成的结构化信息图谱中作为重要的补充✿◈ღღ。
代码检索生成✿◈ღღ:提供三种不同的检索模式✿◈ღღ。Cypher检索生成主要面向用户对于代码库结构的理解(比如查询类的数量等需求)✿◈ღღ,图谱检索主要面向用户的问题含有具体的类和方法名的时候来检索代码Bsport体育app✿◈ღღ。
同时风吹亚吉拉✿◈ღღ,团队也在探索通过多智能体的模式✿◈ღღ,迭代搜索代码仓库获取上下文信息✿◈ღღ,同时由其他智能体来负责阶段性提炼总结信息以及结果生成等其他任务✿◈ღღ。
大模型在涉及到专业领域知识问答(比如医疗✿◈ღღ、通讯)✿◈ღღ、私有知识问答(私域数据)✿◈ღღ,容易出现幻觉导致生成的答案不可信✿◈ღღ。
于是研究团队选择知识库外挂的手段和检索增强生成的方式✿◈ღღ,将与问题相关的数据从知识库中检索出来✿◈ღღ,作为额外知识输入到大模型中✿◈ღღ,保障结果的可靠性&实时性✿◈ღღ,同时避免训练开销✿◈ღღ。
整个DocSearch含三种检索链路✿◈ღღ,用户可自行选择检索链路✿◈ღღ,也可以三个都选择以获取不同的结果✿◈ღღ。
传统的文档向量数据库查询✿◈ღღ:文档向量数据库是当前最主流的知识库构建方法✿◈ღღ。使用Text Embedding 模型对文档进行向量化并在向量数据库中存储✿◈ღღ,结合上下文学习的成果✿◈ღღ,本项目可选择不同的检索策略抽取知识库中相应知识✿◈ღღ。
知识图谱查询✿◈ღღ:本项目采用Nebula图数据库对知识图谱进行存储和管理✿◈ღღ,支持导入现有知识图谱进行知识检索✿◈ღღ;也支持通过大模型自动抽取实体和关系✿◈ღღ,挖掘出数据中多种复杂关系✿◈ღღ。
知识图谱推理+向量数据查询✿◈ღღ:本项目也提供两者的融合搜索✿◈ღღ。先对每篇文档提取标签✿◈ღღ,同时结合用户提问建设图谱中的相关标签✿◈ღღ。最后✿◈ღღ,基于标签集合在文档向量数据库中检索出与原问题相关的文档Bsport体育app✿◈ღღ。
如前文介绍✿◈ღღ,通过知识库外挂和增强检索生成的手段可以很好的解决专有/私域知识问答的问题✿◈ღღ,接下来的核心问题是如何更好的构建知识库✿◈ღღ。
研究团队接下来会注重于DevOps领域数据的收集和构建✿◈ღღ,同时也期望为这条标准化的数据获取✿◈ღღ、清洗能力&智能化处理流程为更多的私有知识库构建提供帮助✿◈ღღ。
随着大型语言模型(LLM)的出现✿◈ღღ,我们见证了问题解决方式的变革✿◈ღღ,比如智能客服系统从依赖小规模模型微调和固定规则转向更为灵活的智能体交互✿◈ღღ。
研究团队期望和周边开源的DevOps平台打通兼容✿◈ღღ,通过API的注册✿◈ღღ、管理和执行能够实现对话式交互驱动完成各种特定任务(数据查询✿◈ღღ、容器操作等)✿◈ღღ。
目前已封装工具清单如下✿◈ღღ:k-sgima异常检测✿◈ღღ、代码检索✿◈ღღ、文档检索✿◈ღღ、duckduckgo搜索✿◈ღღ、百度ocr识别✿◈ღღ、股票信息查询✿◈ღღ、天气查询✿◈ღღ、时区查询✿◈ღღ。
目前DevOps框架还处于初期✿◈ღღ,还有很多不完善的地方Bsport体育app✿◈ღღ,接下来研究团队计划在如下方面做核心演进✿◈ღღ:
用户通过简单的自然语言查询风吹亚吉拉✿◈ღღ,就可以获取特定股票的详细信息✿◈ღღ,包括历史股价图表✿◈ღღ、市场表现和可能的市场走向✿◈ღღ。
除了这些应用场景✿◈ღღ,DevOps-ChatBot还可以回答与具体的网络游戏相关的问题✿◈ღღ。包含英雄信息✿◈ღღ、登场时间✿◈ღღ、所属城邦等✿◈ღღ。
Codefuse团队发布了一个针对DevOps领域大模型相关的开源项目DevOpsGPT✿◈ღღ,主要分为三个模块✿◈ღღ,本文中的DevOps-ChatBot就是其中之一✿◈ღღ。
团队的目标是在DevOps领域✿◈ღღ,包含开发✿◈ღღ、测试✿◈ღღ、运维✿◈ღღ、监控等场景✿◈ღღ,真正地结合大模型来提升效率✿◈ღღ、成本节约✿◈ღღ。
团队期望相关从业者一起贡献自己的才智✿◈ღღ,来让“天下没有难做的coder”✿◈ღღ,也会定期分享对于LLM4DevOps领域的经验&尝试✿◈ღღ。博体育BsportsAPP下载✿◈ღღ。Bsport体育平台登录✿◈ღღ。博体育Bsports官网✿◈ღღ。bsports网站登录✿◈ღღ!bsports网页版在线登录✿◈ღღ。博体育Bsports网站✿◈ღღ,