您的浏览器禁用了JavaScript(一种计算机语言,用以实现您与网页的交互),请解除该禁用,或者联系我们。[开放运维联盟&高效运维社区&DevOps时代]:探索如何利用LLM打造面向DevOps场景的AI助手 - 发现报告

探索如何利用LLM打造面向DevOps场景的AI助手

AI智能总结
查看更多
探索如何利用LLM打造面向DevOps场景的AI助手

李胤霖解决方案架构师 个人介绍 李胤霖数澈软件Seal解决方案架构师 CNCF认 证 领 域 专 家,多 年 云 原 生、DevOps、平 台 工 程 等 相 关 领 域 从 业 经 历,先 后 在Rancher等多家云原生厂商负责解决方案工作。多年来持续深度参与了国内多个标杆金融、制造与零售客户的相关平台建设,具备丰富的解决方案和最佳实践落地经验。 AIGC技术在DevOps领域的业界探索与实例讲解 1 目录 DevOps工程师的AI助手—Appilot的架构与实现原理2 CONTENTS A IA g e n t模 式 如 何 使 能D e v O p s工 程 师—能 力 演 示 3 未 来 发 展 方 向 与 工 程 师 如何 动 手 开 发 自 己 的A I助 手4 01AIGC技术在DevOps领域的业界探索与实例讲解 AI时代下IT所面临的挑战 AI时代的到来,使得IT的挑战从云计算领域从过去的优化机器资源,转变向通过AI优化人力资源。 无论是各种虚拟化、云计算、云原生技术的发展,本质上是在优化机器资源。 11月30日2月3日3月16日4月初3月14日3月24日 大语言模型的应用阶段 相关项目 •https://github.com/k8sgpt-ai/k8sgpt•https://github.com/feiskyer/kube-copilot•https://github.com/sozercan/kubectl-ai•https://github.com/AntonOsika/gpt-engineer•https://github.com/kuafuai/DevOpsGPT•https://github.com/seal-io/appilot 相关领域 实例演示——Appilot Appilot Chat to deploy and manage applications on any infrastructure. 02DevOps工程师的AI助手—Appilot的架构与实现原理 Appilot架构 Appilot实现——Agent 在人工智能(AI)领域,Agent是指一个能够感知环境并通过执行动作来实现目标的实体。 Agent的基本特征包括: •感知(Perception):Agent能够从其环境中获取信息,这些信息可能通过传感器、输入数据或其他途径收集。•决策(Decision Making):Agent能够根据它从环境中获取的信息做出决策,以实现其预定的目标。•行动(Action):Agent可以通过执行特定的动作来影响环境,并采取步骤来实现其目标。•目标导向(Goal-Oriented):Agent的设计和行为是为了实现特定的目标或任务,这些目标可能是预先定义的,也可能是通过学习和优化得到的。•自主性(Autonomy):Agent通常是自主的,即它可以独立地做出决策和执行动作,而不需要持续的人类干预。 Appilot实现——Agent Agent是构建LLM应用的基石,一般定义由LLM和记忆(Memory)、任务规划(Planning Skills)以及工具使用(Tool Use)三大关键组件组成。 Appilot实现——Agent 基于AIAgent模式的热门框架有AutoGPT和LangChain,都是为了处理各种自然语言处理任务而设计的。 •AutoGPT:AutoGPT可以自主实现用户设定的任何目标。它会把一项目标进行拆解,然后自主地提出一个实施计划,然后进入完成计划的循环,自主处理地任何出现的问题。AutoGPT着重执行结果,擅长自动化和适应多步骤任务。 •LangChain:LangChain是一个简化使用LLM开发应用的框架。用于将LLM、外部工具集和数据集结合起来,允许LLM与环境进行交互,通过Agent使用各种tools完成任务。相比于AutoGPT,它更擅长推理和演绎。 G O P S全 球 运 维 大 会2 0 2 3 ·上 海 站 Appilot实现 Appilot基于AIAgent、ReAct和一些PromptEngineering,即提示词工程实现,包括: •检索增强生成(Retrieval Augmented Generation,RAG)•链式思考提示(Chain-of-Thought Prompting,CoT)•Function Calling•…… Appilot实现——检索增强生成(RAG) 检索增强生成(Retrieval Augmented Generation,RAG):接受输入并检索一组给定来源(例如维基百科)的相关/支持文档。这些文档作为上下文与原始输入提示连接起来,并输入到生成最终输出的文本生成器。这使得RAG能够适应事实可能随时间变化的情况。这非常有用,因为LLM的参数知识是静态的。RAG允许语言模型绕过retraining,访问最新的信息,从而通过基于检索的生成来生成更准确可靠的输出。 Appilot实现——链式思考提示(CoT) 链式思考提示(Chain-of-Thought Prompting,CoT):通过中间推理步骤实现复杂的推理能力。 Appilot实现——Function Calling Function Calling:给出tools list和task,让LLM针对task的需求选择对应的tools •Langchain Tools Prompt Appilot实现——ReAct Reason & Act,即推理和执行,让LLM以交替的方式生成推理轨迹和任务特定操作。ReAct可以生成推理轨迹,允许模型归纳、跟踪和更新行动计划,甚至处理异常。操作允许与外部源(例如知识库或环境)交互并收集信息。 ReAct是一种使用自然语言推理解决复杂任务的语言模型范例。 Appilot实现——ReAct ReAct克服了思维链推理中普遍存在的幻觉和错误传播问题,并生成类似人类的任务解决轨迹。 研究表明ReAct应用于多种语言推理和决策任务,在可解释性和可信赖性方面优于直接内容生成、单纯的思维链、动作范式等基线。 G O P S全 球 运 维 大 会2 0 2 3 ·上 海 站 03AIAgent模式如何使能DevOps工程师—能力演示 AIAgent可以为DevOps工程师提供什么 以应用管理领域为例,可以让AIAgent辅助DevOps工程师执行以下一些管理操作: •应用管理:如部署、升级、回滚、查看日志•环境管理:如克隆、查看环境架构拓扑、回收•资源管理:申请主机、存储、负载均衡、DNS等基础设施资源•诊断排障:排查、修复系统异常 对话式驱动AIAgent部署应用(Kubernetes) 对话式驱动AIAgent进行故障排查和建议修复 对话式驱动AIAgent部署应用(Walrus) 对话式驱动AIAgent进行应用管理(查看拓扑、应用克隆等) 对话式驱动AIAgent从源码部署应用 04未来发展方向与工程师如何动手开发自己的AI助手 未来发展方向——Multi-Agent 项目:https://github.com/microsoft/autogen 未来发展方向——Multi-Agent Multi-AgentConversation是LLMApplication领域目前最受关注的发展之一。AutoGen则是一个支持使用多Agent来开发LLMApplication的Multi-Agent Conversation框架。 基于Multi-AgentConversation,Appilot可以提供多种Agents,例如K8s、K8sCluster&Context、Streamlit UI、Plugin Manager等,不同Agent可以接入不同的LLM和基于LangChain推理框架实现的各种Tools,或者是人类输入。多个Agent之间相互对话以协同工作,共同完成复杂任务。 G O P S全 球 运 维 大 会2 0 2 3 ·上 海 站 未来发展方向——RAG inWarlus/Kubernetes/UI通用的语言模型可以进行微调以实现一些常见 的任务,通常不需要额外的背景知识。 如果是更复杂和知识密集型的任务,则需要访问外部知识源来完成任务,其中一种方法即检索增强生成(RAG)。 利用RAG的模式,将各种Backend的Documents和API数据喂给LLM,可以提高Appilot识别任务的能力和完成任务的事实一致性。 G O P S全 球 运 维 大 会2 0 2 3 ·上 海 站 未来发展方向——Tree of Thought + MCTS •ToT:思维之树(TreeofThought)维护一棵思维树,其中思维作为解决问题的中间步骤。LLM可以自我评估中间思维的进展,使整个推理过程更加合理,犹如经过深思熟虑。 •MCTS:蒙特卡洛树搜索(Monte Carlo Tree Search)一种启发式的树搜索算法,用于树的决策过程。 •LLM可以将TOT与MCTS相结合,形成系统的思维链。 G O P S全 球 运 维 大 会2 0 2 3 ·上 海 站 如何动手开发自己的AI助手 LangChain:https://github.com/langchain-ai/langchain Appilot:https://github.com/seal-io/appilot 利用LangChain和Appilot项目,开发Toolkit支持自己所需的Backend,DevOps工程师可以将AI助手的能力扩展到任意DevOps相关的管理范围,例如CI、测试等场景,或者任何所需应用管理场景。 G O P S全 球 运 维 大 会2 0 2 3 ·上 海 站 如何动手开发自己的AI助手 G O P S全 球 运 维 大 会2 0 2 3 ·上 海 站 平台工程社区公众号 开放运维联盟高效运维社区DevOps时代 荣誉出品