AI Agent重塑微服务治理

人工智能
商业产品包含效果广告(搜索广告,信息流广告)和展示广告(品牌广告,开屏广告)两大类广告产品,以及基木鱼和观星盘、电商等营销工具。为了保障复杂系统的稳定性,业务同学需投入大量人力运维微服务,从而保证业务功能快速交付和线上高稳定性。

1.项目背景

传统场景下,软件的研发主要依靠人,需求沟通、开发、测试、部署等阶段都需要大量人力投入。大模型优秀的代码生成和一定的思维链推理能力,能够激发微服务研发、运维等环节“智能涌现”,重塑软件研发全生命周期。

商业产品包含效果广告(搜索广告,信息流广告)和展示广告(品牌广告,开屏广告)两大类广告产品,以及基木鱼和观星盘、电商等营销工具。为了保障复杂系统的稳定性,业务同学需投入大量人力运维微服务,从而保证业务功能快速交付和线上高稳定性。这些工作包含两类:

  • 常规流程操作:日常上线部署、调整部署和发布 API、配置修改、路由参数更改等常规操作。
  • SRE架构优化:技术栈持续升级,针对线上报警等稳定性问题,进行深层次的根因定位和故障处理、架构优化。

平台工程团队面向商业产品打造的 Jarvis 平台,提供了一整套的运维工具包括自动化部署和微服务治理分析能力。但是这些治理工具存在以下问题:

图片图片

  • 组合操作复杂:完成单一目的需要大量的组合操作,这些操作入口深(隐藏在重重菜单中),链路长。
  • 强依赖人工经验:对于根因定位和故障处理、架构优化, Jarvis 平台开发了微服务治理、性能分析、自动化监控、调用链分析等高阶能力。但是这些工具使用门栏较高,定位问题严重依赖于人工经验。如果对该业务应用无运维经验,则需要耗费大量时间去定位止损和优化架构。

图片图片

为了提升商业产品维护的效率问题,Jarvis 平台使用 AI 原生应用思维来全新重塑产品形态,革命性提升业务研发运维效率,基于多智能体架构将专家经验内化,大幅降低使用门槛,显著提升微服务维护的效率(包括故障处理和根因定位、架构优化、部署操作等)。

主要有两个关键环节:

  • 全流程对话式交互:用户依靠自然语言发出指令,多轮持续对话完成一项完整的升级操作,比如灰度发布、配置限流熔断、流量录制和回放等复杂操作。
  • LLM 推理诊断处理:基于定位问题的经验,依靠LLM的推理能力,进行根因分析,通过智能诊断、报警等机制来驱动系统故障的高效处理,实现人工运维经验的可复制性。

图片


2.效果演示

应用使用JarvisBot 升级到jdk17(全流程对话式交互)

  • 用户要求升级 JDK17;
  • DirectorAgent解析SOP规划执行路径,组装CoderAgent、OpsAgent解决该需求;
  • CoderAgent自动升级代码并发出CR;代码负责人 CR 合入;
  • OpsAgent部署上线,并将录制流量回放保证服务正常,承接线上流量;

基于思维链推理的报警处理(LLM 推理诊断处理)

  • 用户要求诊断错误日志报警;
  • DirectorAgent解析 SOP 规划执行路径,组装DiagnosisAgent、OpsAgent解决该问题;
  • DiagnosisAgent拉取 Metrics 日志和 Tracing 日志定位到问题实例,提出”屏蔽实例“优化建议;
  • 用户确认后,OpsAgent执行优化止损操作;

3.基于SOP的多智能体协作

3.1 业界探索

图片图片

单个AI智能体=LLM+记忆+规划+工具等,参考述上OpenAI理论基础。

 多智能体则需要由多个Agent依靠既定SOP互相进行交流,从而保证智能体能够正确的合力完成一个复杂的长程任务。智能体的关键在于SOP,是不同工种技能的关键,能让每一个智能体扮演一个特定角色。

SOP指的是Standard Operating Procedure,即标准操作程序,它提供了执行特定任务所需涉及的角色分工和详细操作步骤,以确保在不同情况下都能保持作业结果的准确性和高效性。SOP 在软件开发、系统维护和团队协作中起着重要作用,有助于确保开发人员遵循最佳实践、减少错误和提供工作效率。

为了解决项目开篇提到用户需求,系统为了快速产出大量的能力,因此经过多次迭代,有了一系列演进:

△SOP架构演进△SOP架构演进

阶段一:多智能体协作。Agent 之间需要相互调用才能完成复杂的对话目标。但是Agent 的工作存在大量重复,比如几乎所有智能体都需要调用底层的 API agent进行数据查询,诊断的智能体其实也需要大量的优化操作。智能体直接的边界非常不清晰,交互的方式也比较多样,有通过自然语言,有通过直接调用的,非常混乱。

图片图片

阶段二:智能体协作SOP 标准化。通过标准操作程序(SOPs)编码作为智能体Prompt,指导大模型按照结构化流程工作并协调智能体各个环节,允许具有领域专长的智能体验证输出并减少复合错误,有效避免大模型的幻觉问题。SOPs 总结人工操作流程经验,从而让 agent 的职责和产出结果标准化、agent 间的协作完全符合要求。

3.2 SOP格式定义

问题场景

SOP

自然语言描述的场景

自然语言描述的操作步骤

举例:

问题场景

SOP

错误日志报警诊断分析

1:信息收集,收集要诊断排查的所有相关数据和信息

2:分析诊断,分析诊断具体的原因

3: 止损建议,根据诊断原因给出止损建议

信息收集

1. [TOOL]查询错误信息详情,获取结果列表中第一条数据traceId, stack_error_message, localBns

2. [TOOL]查询错误日志信息,获取traceId相关联的所有日志信息

分析诊断

1. [TOOL]分析错误日志信息,根据日志信息总结错误根因

2. [TOOL]分析错误信息详情,根据错误信息的描述和stack_error_message分析错误原因

止损

1. [TOOL]查询止损建议,根据诊断原因查询止损建议


4.多智能体架构落地实践

图片

JarvisBot是一个中枢神经模块,做决策和触发任务,不做具体的业务逻辑。它链接用户(LUI层)和业务层,跟用户进行自然语言的交互,理解自然语言描述的SOP ,指挥底层系统完成对应的任务。它的几个重要部分包括:

  • Agents(智能体集合):包含DirectorAgent(技术负责人)、CoderAgent(程序员)、OpsAgent(操作智能体)、DiagnosisAgent(诊断智能体)等一系列智能体。

智能体都基于 BaseAgent 构建,具有基础的 SOP 理解和LLM ReAct 思维链规划能力。

△Agent基座框架△Agent基座框架


不同的 Agent 具有不同的技能,比如DirectorAgent规划智能体工作流、CoderAgent监听PRD生成代码,DiagnosisAgent监听诊断类问题产生诊断结论等。

Agents之间通过消息总线进行交互,不同的 Agent 产生和订阅不同主题的消息。

  • 知识管理端:管理各种静态数据,并提供一定的自动化手段进行更新。比如借助数据飞轮管理和优化Prompts,录入并管理 SOP,自动化录制知识。
  • 工具集合:链接底层业务接口,封装一些复杂操作,通过HTTP或者 RPC 请求获取业务模块的数据。
  • 模型管理:对模型一些的封装管理,包括一些重试策略、排队算法等。

下图是一个典型的基于 SOP解决诊断问题的流程图:

图片图片

5.数据飞轮驱动多智能体架构持续进化

既然SOP是驱动多智能体协作的关键,如何持续产出 SOP 是让多智能体架构真正具有自主进化的能力关键。如何产出 SOP依赖于数据提炼的能力。因此:如何构建数据飞轮并且利用数据飞轮持续优化提炼SOP, 是实现多智能体持续进化的关键。

图片图片

5.1 大小模型飞速协同进化,是智能性进化的根基

智能体架构底层依靠一系列不同尺寸的模型。其中通用大模型用于通用知识理解和复杂推理,轻量级模型用于SFT 微调。

图片图片

上表看出,模型尺寸越小,成本越低、响应速度越快,但是通识能力和复杂问题推理能力就越来越差。

JarvisBot智能体的核心思路是用大模型教会小模型,借助大模型去构建小模型SFT训练优质数据集,在不同细分场景大量的使用小模型,从而达到智能性和成本的完美平衡。

△不断剪裁模型尺寸△不断剪裁模型尺寸

△大模型教会小模型△大模型教会小模型

△大小模型协同进化架构△大小模型协同进化架构

基于离线AI 对话评估系统利用规则库、参考历史相似语料打分、语料聚类抽样、多LLM(文心4、GPT4、专精SFT模型等)群体智能打分,评估线上对话语料。单日机器可自动完成评估对话条目4w+,产出大量的评估报告推动JarvisBot从产品、LUI技术解析和模型基座多个角度飞速进化。

图片图片

5.2 如何实现持续进化—数据飞轮训练专家模型,自动提炼SOP

通过自动化评估系统,可以不断评估智能体的智能性,不断洞察用户的需求,包括产品功能使用情况、未满足的功能诉求、用户习惯操作动线等。借助数据飞轮可以不断训练出专家模型,自动提炼SOP,从而帮助多智能体不断的持续进化。

图片图片

6.AI Agent微服务治理平台Jarvis总结


图片图片


责任编辑:武晓燕 来源: 百度Geek说
相关推荐

2020-08-11 07:40:37

数组数据存储

2020-09-29 07:00:00

微服务API架构

2023-05-04 07:27:20

NLP 算法微服务治理

2021-12-03 10:30:25

WOT技术峰会技术

2019-09-18 09:05:58

技术SQLDevOps

2020-12-28 11:52:36

微服务数据中台去中心化

2024-06-07 14:54:55

2018-11-07 10:00:00

微服务Service MesIstio

2022-04-20 07:48:09

微服务链路服务器

2021-03-05 18:05:56

JavaServerless 微服务

2020-04-20 10:04:56

微服务架构数据

2022-08-16 08:50:40

微服务动态读写分离

2023-11-02 17:52:30

架构模式微服务服务治理

2019-08-16 08:59:33

技术软件HTML

2020-11-13 10:45:44

微服务架构数据

2020-04-26 09:00:00

微服务架构软件开发

2022-02-12 21:08:56

微服务SpringIstio

2023-09-05 15:00:04

微服务架构

2022-12-16 09:29:23

携程微服务

2024-06-21 11:11:22

点赞
收藏

51CTO技术栈公众号