在当今快节奏的互联网环境中,交易系统的复杂性和高要求给研发团队带来了前所未有的挑战。从问题排查的低效到测试数据构造的繁琐,再到团队经验的流失,每一个环节都可能成为研发效率的瓶颈。本文将探讨如何利用AI技术,特别是AI Agent,来破解这些难题,提升研发效率。通过具体的案例和实践,我们将看到AI Agent如何在问题排查、测试数据生成和知识传承等方面发挥重要作用,成为工程师们高效工作的“神队友”。
微信扫码
与创始人交个朋友
我要投稿
在当今快节奏的互联网环境中,交易系统的复杂性和高要求给研发团队带来了前所未有的挑战。从问题排查的低效到测试数据构造的繁琐,再到团队经验的流失,每一个环节都可能成为研发效率的瓶颈。本文将探讨如何利用AI技术,特别是AI Agent,来破解这些难题,提升研发效率。通过具体的案例和实践,我们将看到AI Agent如何在问题排查、测试数据生成和知识传承等方面发挥重要作用,成为工程师们高效工作的“神队友”。
下单,作为交易业务的核心链路,其系统复杂得像个“千层饼”,对稳定性和效率的要求也高得离谱。交易链路长、涉及系统多、数据量庞大,这给研发同学带来了巨大的挑战。在日常研发过程中,我们面临着以下几大痛点:
1. 问题排查像“挤牙膏”,效率低到怀疑人生:新人面对复杂的交易系统,如同进入迷宫,往往需要花费大量时间熟悉系统架构和业务流程,定位问题更是难上加难。即使是经验丰富的工程师,也常常被海量的日志和复杂的调用链路所淹没,尤其在618、双11等大促期间,一旦出现故障,更是需要争分夺秒地排查问题,长时间的高强度工作给工程师们带来了巨大的身心压力。
2. 测试数据构造的“造数魔咒”:完整的交易流程涉及用户、商品、订单、支付、物流等多个环节,需要构造各种复杂的测试数据以覆盖不同的业务场景。这就像一个“造数魔咒”,繁琐且易错。团队成员常常需要在不同的测试平台和系统之间来回切换,手动填写大量的参数,稍有不慎就会导致测试数据无效,严重拖累了研发进度,同时也增加了测试成本。
3. 团队经验的“黑洞效应”:随着业务的快速发展和人员的流动,知识的沉淀和共享成为一个巨大的挑战。一些宝贵的经验往往只存在于少数资深工程师的头脑中,难以有效地传承和分享。这导致团队整体效率难以提升,新成员的成长周期变长,工作幸福感也受到影响。
想解决的问题
针对这些“头大”的问题,我们希望借助AI技术的力量来“破局”,提升研发效率,具体目标如下:
1. 问题排查不再“挤牙膏”:借助AI实现日志自动分析、异常检测和问题诊断,将问题排查的效率提升至少50%,让工程师们从繁琐的排查工作中解放出来,专注于更有价值的工作,例如系统优化和新功能开发。
2. 测试数据构造不再是“修行”:探索基于AI的自动化测试数据生成方案,根据测试用例自动生成所需的测试数据,简化测试流程,降低测试成本,并提高测试覆盖率。
3. 打破团队经验的“黑洞效应”:将专家经验沉淀到AI Agent中,经验即代码(Experience is code),方便团队成员快速获取所需信息,提升团队整体的研发效率,促进知识共享和传承。
交易AI-lab的“效率革命”
为了达成这些目标,我们启动了交易AI-lab项目,并取得了阶段性的成果:
1. 交易AI诊断:让问题排查不再“令人发指” 我们基于团队内部AI-Studio、BSP星环运维、全端质量等平台研发了智能日志分析和问题诊断Agent。该Agent能够自动解析用户输入的查询或问题描述,理解用户的意图,并结合系统日志、监控数据和知识库进行分析,快速定位问题根因,并提供解决方案建议。目前,该Agent已集成到微信支付、顺手买、消费券等多个核心业务场景中,有效提升了问题排查效率。我们还建立了反馈机制,不断收集用户反馈,迭代优化Agent的性能和准确性。
2. 交易数据构造:摆脱手工造数的“苦海” 我们通过对营销研测过程中的原子操作进行抽象和封装,构建了包含近100个原子能力的工具库,覆盖了营销创建、购物车、下单、订单物流等核心场景。通过自然语言接口和知识库的串联,我们实现了基于对话的测试数据生成。用户只需通过简单的自然语言描述测试场景,AI Agent即可自动生成所需的测试数据。目前,平台已拥有30多个Agent、120多个工具,累计处理用户提问4500次以上,显著降低了测试数据构造的门槛和时间成本。
AI Agent是一个能够感知环境上下文、进行决策并执行动作的自主程序。它可以理解用户的意图,并根据预设的目标和策略,自主地完成一系列任务。我们基于ideaLAB平台提供的大模型统一SDK、工具调用、向量知识库、上下文管理等技术,搭建了具备理解、推理、规划和学习能力的Agent。
适合干的:
自动化的重复任务: 例如日志分析、数据清洗、代码审查、测试数据生成等。Agent可以不知疲倦地执行这些任务,解放工程师的生产力。
提供智能决策支持: 例如根据历史数据预测系统性能瓶颈,提供优化建议;根据用户行为推荐个性化商品等。Agent可以辅助工程师做出更明智的决策。
实时反馈与监控: 例如实时监控系统运行状态,并在出现异常时发出警报;根据用户反馈自动调整推荐策略等。Agent可以提供及时的反馈,帮助工程师快速响应变化。
不适合干的:
高精度的算术活儿: 尽管Agent聪明,但在面对需要高精度的计算时,它可能会出错,特别是在交易金额计算等领域,依然需要依赖人类专家的判断。
需要主观判断和伦理道德的任务: 例如代码评审中的代码风格、用户隐私数据的处理等。这些任务需要人类的价值判断,Agent难以做出合适的决策。
处理高度不确定和复杂的环境: 例如在极端网络环境下进行故障诊断,需要依靠工程师的经验和判断力。
在实践中,我们不断迭代优化AI Agent,使其在不同场景下发挥更大的作用。
交易AI诊断: 我们通过构建专业的知识图谱,将交易领域的专家经验沉淀到Agent中,使其能够更准确地理解用户的问题并提供更有效的解决方案。同时,我们也在持续迭代,根据用户反馈不断改进,提高诊断准确率。
自动化测试数据构造: 我们设计了用户友好的交互界面,让用户能够通过自然语言或图形化界面轻松地描述测试场景。同时,我们也不断优化Agent的prompt,使其能够生成更符合业务需求的测试数据。
以下我们以交易AI诊断中的Agent为例,介绍下具体是怎么搭建和实现的。
这是AI-Agent的核心部分,负责理解用户意图、规划行动并执行任务。
上下文管理: 维护对话历史,记录用户之前的输入和Agent的输出,以便Agent理解当前对话的上下文。上下文信息对于多轮对话至关重要,能够帮助Agent理解用户意图,提供更连贯的回复。
意图识别: 通过自然语言理解 (NLU) 技术,分析用户输入,识别用户想要执行的操作或获取的信息。例如,用户输入"帮我查一下明天的天气",Agent需要识别出用户的意图是查询天气,以及查询的时间和地点。
规划 & 分解任务: 将复杂的任务分解成多个子任务,并规划执行顺序。例如,用户输入"帮我订一张从杭州到北京的机票",Agent需要将这个任务分解成查询航班、选择航班、填写乘客信息、支付等多个子任务。
工具调用: 根据任务需求,调用合适的工具或API完成子任务。例如,查询天气需要调用天气API,订机票需要调用机票预订API。Agent需要具备选择和调用不同工具的能力。
响应生成: 将工具执行的结果整合,生成最终的回复内容。回复可以是文本、图片、表格等多种形式。
输出处理阶段负责将Agent的回复发送给用户,并进行必要的处理。
安全审查: 对输出内容进行安全检查,防止泄露敏感信息或包含恶意内容。
多通道输出: 支持将回复内容发送到不同的渠道,例如钉钉群、网页端、邮件等。
日志记录: 记录用户输入、Agent处理过程以及输出结果,以便后续分析和改进。
提示词工程 (Prompt Engineering) 是引导AI-Agent有效工作的关键。
提示词是指导AI-Agent行为的指令,它告诉Agent要做什么、如何做以及输出什么。
清晰明确: 使用简洁明了的语言,避免歧义和模糊的表达。
上下文相关: 根据对话历史和当前场景,动态调整提示词。
目标导向: 明确指出任务目标,引导Agent朝着正确的方向努力。
要: 使用具体的示例、提供必要的背景信息、设定明确的约束条件。
不要: 使用含糊不清的指令、提出无法完成的任务、提供不相关的上下文。
迭代优化: 不断尝试不同的提示词,根据Agent的输出结果进行调整和优化。
A/B 测试: 比较不同提示词的效果,选择最佳方案。
自动化生成: 利用自动化工具生成和优化提示词。
# Role: 日志数据分析&问题诊断助手
# Profile:
- author: 淘天业务技术团队
- version: 0.1
- description: 专业辅助用户进行业务日志分析和问题诊断的智能助手。
## Goals:
- 基于用户提出的问题,识别用户意图,并路由到对应工具
- 提取必要参数并拼接,将参数作为工具的入参,调用工具查询日志。
- 分析日志结果并展示给用户,确保以对用户友好且易理解的方式解释诊断结果。
## Constraints:
- 如果需要调用工具/执行function_call,你需要提取并返回响应中的 function_call 部分,并且一次仅提供当前步骤的信息,其他步骤将在随后的请求中提取。
- 在调用相关API工具后,你需要解释结果,用markdown加粗标记重点以清晰的语言表述给用户。
- 对于同一个问题,用户可以重复问多次
## Skills:
- 消费券不可用性诊断:下单时消费券不可用或者没有透出的诊断
- 用户下单失败诊断:分析用户下单失败,无法下单的原因。
- 顺手买一件诊断:分析顺手买一件业务不生效、不展示、以及详细处理过程
- 微信支付诊断:分析下单页微信支付不生效、不展示等问题
注意:如果无法识别用户意图,或者意图不在的Skills范围内中,请提示用户你当前已拥有的Skills,进行重新提问。
## Workflows:
1. 接收用户输入的问题
2. 识别意图,提取工具入参,如果没有识别到入参,提示用户输入必要参数;
3. 携带入参调用对应工具获取日志
4. 分析工具返回的日志并诊断
5. 给用户展示诊断结果
## Initialization:
作为下单问题诊断助手,我擅长分析日志并诊断原因。我将用清晰和精确的语言与您对话。请告诉我您想要问的问题,我将竭诚为您提供分析结果.
为了支持AI-Agent的开发和运行,我们需要一个功能齐全的工具支持平台,目前我们选择了内部星环bsp平台:
1. 工具动态编写: 基于平台动态编译实时生效的特性,我们可以实时编写工具,供Agent调用。
2. 日志查询和分析: 平台提供便捷的日志查询和分析接口,支持实时日志查询、关键词搜索、统计分析等功能。
3. 链路数据: 根据traceId获取链路调用数据、性能数据,例如出入参、耗时等。
4. HSF泛化调用: 支持通过HSF泛化调用业务服务,获取必要的诊断数据。
组装prompt和工具提示词后,投喂给AI模型的输入DEMO:
模型输出:
高质量的业务日志对于AI-Agent的输出效果至关重要。
1. 结构化日志: 使用JSON等结构化格式记录日志,方便解析和分析。
2. 语义丰富: 包含丰富的业务信息,例如用户行为、订单状态、商品信息等。
3. 可追溯性: 记录完整的请求链路信息,方便追踪问题。
Agent从9月初上线至今,应用场景包括微信支付、88vip消费券、顺手买一件等业务,累计使用人数超过400+,使用次数达到3000+。特别是在微信支付内测期间,AI Agent在项目时间紧迫的情况下,帮助研发测试节省了大量问题排查时间,从而使得团队有更多的时间投入到需求的开发和稳定性保障上,显著提升了研发效率和问题响应速度。
AI Agent的引入,为我们解决问题和提升效率提供了新的思路和方法。它不仅可以减轻工程师的负担,还可以提升团队的整体效能。未来,我们将继续探索AI Agent在更多场景下的应用,让它成为阿里巴巴研发队伍中不可或缺的“神队友”,助力我们打造更加高效、智能的研发体系。
团队介绍
我们是淘天集团-交易业务技术团队,一支负责淘宝购物车、下单、支付、逆向退款等核心交易链路的技术团队。我们面向亿万用户,致力于打造极致流畅、安全稳定的C端购物体验,并支撑集团下形态各异电商的交易平台应用。此外,我们全程保障每一次大促的平稳运行,在流量洪峰的考验下确保交易链路的丝滑顺畅,并持续推动平台架构演进,为用户每一次的购物车浏览和下单保驾护航,致力于让每一次交易都成为愉悦的体验。
53AI,企业落地应用大模型首选服务商
产品:大模型应用平台+智能体定制开发+落地咨询服务
承诺:先做场景POC验证,看到效果再签署服务协议。零风险落地应用大模型,已交付160+中大型企业
2024-07-20
2024-07-18
2024-07-16
2024-07-25
2024-07-14
2024-07-24
2024-08-13
2024-08-06
2024-06-22
2024-07-21