使用LangChain的自定义Tool+Agent, 构建全新的AIOps故障分析流程?

本文涉及的产品
阿里云百炼推荐规格 ADB PostgreSQL,4核16GB 100GB 1个月
简介: 如果能够利用LangChain的Agent对问题的推理、任务的编排能力, 再进一步结合自定义的检查脚本工具, 是否就能够更好的实现故障分析的流程化智能编排和执行。

前言思考:

ChatGPT最近可谓是火炸地球。 伴随着这一波LLM热, 各种使用方式也是层出不穷, AutoGPT, agentGPT, 以及看上去更加完善的LangChain都在不断刷新大家的认知。

而本人则一直在AIOps领域做应用研究,如何结合LLM, LangChain,实现更好的更智能化的根因分析,故障分析则是一个很有价值,也很贴合时势的话题。 目前看来, 在AIOps领域中有几个很有前景的应用场景:

  1. 智能答疑机器人:

更智能化的答疑机器人, 进一步降低答疑成本, 完全覆盖可用文档回答的问题。

  1. 故障分析(工单分析):
  • 微软最近刚刚发布了一篇关于LLM应用在故障报告分析的论文: 《Recommending Root-Cause and Mitigation Steps for Cloud Incidents using Large Language Models》帮助大家打开了一些思路。
  • 这篇论文更多的是从历史故障文本(故障描述、根因报告、推荐方案)中进行推理和总结, 从而实现对新出现问题的推荐根因和推荐解决方案。
  • 而无论在真实的根因分析流程中,还是工单分析中, 我们自己的代码是可以看到真实发生的指标,日志,trace,告警事件数据的。 如何把这些更多的数据输入给LLM?

因此, 如果能够利用LangChain的Agent对问题的推理、任务的编排能力, 再进一步结合自定义的检查脚本工具, 是否就能够更好的实现故障分析的流程化智能编排和执行。

因此本文介绍第一步: 如何使用LangChain的自定义tool,来实现定制化的执行脚本需求。

首先是先定义一个AI model

1683612736065-3612e320-352c-4a4e-bc3c-6f6ba8629dd7.png

使用官方标准Tools

例如我们可以用SERPAPI tool进行搜索服务。

ps: 对应的api-key可以在这里申请https://serpapi.com/manage-api-key

1683614953926-b466f94a-e4fd-40b1-8eab-64934ea01b9a.png

自定义Tools

这里我们定义了1个tool, 该tool主要是针对应用监控领域中, 对应用状态的检查。 这里我们只是象征的表达一下, 真实的检查逻辑比这个复杂很多。

同时, 我们也可以自定义搜索的tool。 这样我们的tools,可以支持在线搜索, 也可以支持针对我们定制化的任务执行。

1683615050325-55181b2a-9b01-4150-8ce5-894cac0c46c1.png

定义一个agent

1683615111622-17afcdb3-a6eb-4d9b-8c31-ce64c51a8826.png

输入问题进行测试

case1, 公开问题,执行在线搜索 "How old is lebron james?"

1683615135839-2cfc9a69-79b9-4848-aa4c-f98acf5a345d.png

case2 特定领域问题, 支持使用自定义tool完成任务: "what is the status of application app_name_1?"

1683615183639-4aaa6733-f8be-48d6-ba0a-426cadcc24bf.png

参考:

  1. https://python.langchain.com/en/latest/modules/agents/tools/custom_tools.html
  2. https://github.com/gkamradt/langchain-tutorials/blob/main/LangChain%20Cookbook%20Part%201%20-%20Fundamentals.ipynb
  3. https://www.youtube.com/watch?v=_v_fgW2SkkQ&list=PLqZXAkvF1bPNQER9mLmDbntNfSpzdDIU5
  4. https://www.bilibili.com/video/BV1bh411j7mE/?p=7



相关实践学习
阿里云百炼xAnalyticDB PostgreSQL构建AIGC应用
通过该实验体验在阿里云百炼中构建企业专属知识库构建及应用全流程。同时体验使用ADB-PG向量检索引擎提供专属安全存储,保障企业数据隐私安全。
AnalyticDB PostgreSQL 企业智能数据中台:一站式管理数据服务资产
企业在数据仓库之上可构建丰富的数据服务用以支持数据应用及业务场景;ADB PG推出全新企业智能数据平台,用以帮助用户一站式的管理企业数据服务资产,包括创建, 管理,探索, 监控等; 助力企业在现有平台之上快速构建起数据服务资产体系
相关文章
|
2月前
|
前端开发 机器人 API
前端大模型入门(一):用 js+langchain 构建基于 LLM 的应用
本文介绍了大语言模型(LLM)的HTTP API流式调用机制及其在前端的实现方法。通过流式调用,服务器可以逐步发送生成的文本内容,前端则实时处理并展示这些数据块,从而提升用户体验和实时性。文章详细讲解了如何使用`fetch`发起流式请求、处理响应流数据、逐步更新界面、处理中断和错误,以及优化用户交互。流式调用特别适用于聊天机器人、搜索建议等应用场景,能够显著减少用户的等待时间,增强交互性。
461 2
|
1天前
|
人工智能 自然语言处理 前端开发
Director:构建视频智能体的 AI 框架,用自然语言执行搜索、编辑、合成和生成等复杂视频任务
Director 是一个构建视频智能体的 AI 框架,用户可以通过自然语言命令执行复杂的视频任务,如搜索、编辑、合成和生成视频内容。该框架基于 VideoDB 的“视频即数据”基础设施,集成了多个预构建的视频代理和 AI API,支持高度定制化,适用于开发者和创作者。
41 9
Director:构建视频智能体的 AI 框架,用自然语言执行搜索、编辑、合成和生成等复杂视频任务
|
9天前
|
人工智能 自然语言处理 JavaScript
Agent-E:基于 AutoGen 代理框架构建的 AI 浏览器自动化系统
Agent-E 是一个基于 AutoGen 代理框架构建的智能自动化系统,专注于浏览器内的自动化操作。它能够执行多种复杂任务,如填写表单、搜索和排序电商产品、定位网页内容等,从而提高在线效率,减少重复劳动。本文将详细介绍 Agent-E 的功能、技术原理以及如何运行该系统。
47 5
Agent-E:基于 AutoGen 代理框架构建的 AI 浏览器自动化系统
|
3天前
|
自然语言处理 搜索推荐 API
如何构建一套qwen-max智能体拥有媲美通义千问在线接口的能力
基于Qwen-Max构建的智能系统,融合了自然语言处理、决策引擎、任务识别与工具选择等技术,具备强大的多模态理解和生成能力。该系统能自动分析用户输入,识别任务类型,选择最优工具执行任务,并整合结果反馈给用户,广泛应用于查询、生成、翻译和图像处理等多个领域,显著提升了任务处理效率和智能化水平。
|
1天前
|
人工智能 自然语言处理 搜索推荐
如何构建媲美通义千问在线接口的qwen-max智能体
qwen-max智能体是一个高效、多功能的系统,擅长处理查询、文本生成、翻译、图像处理等任务。通过自然语言理解、任务识别、决策引擎和工具选择,它能自动选择最佳方案,满足用户多样化需求,提供智能化服务。系统旨在快速响应、精准执行,并持续优化,支持多任务类型,适应不断变化的需求。
|
3天前
|
人工智能 自然语言处理 搜索推荐
如何构建一套qwen-max智能体拥有媲美通义千问在线接口的能力
智能系统通过任务识别、决策引擎、工具选择和结果整合,自动选择合适的工具和方法,高效处理查询、生成、翻译、图像处理等任务,提供精准的解决方案。系统支持自然语言理解、任务分类、语义解析与意图识别,确保任务的准确执行和反馈。
|
1月前
|
JSON 数据可视化 NoSQL
基于LLM Graph Transformer的知识图谱构建技术研究:LangChain框架下转换机制实践
本文介绍了LangChain的LLM Graph Transformer框架,探讨了文本到图谱转换的双模式实现机制。基于工具的模式利用结构化输出和函数调用,简化了提示工程并支持属性提取;基于提示的模式则为不支持工具调用的模型提供了备选方案。通过精确定义图谱模式(包括节点类型、关系类型及其约束),显著提升了提取结果的一致性和可靠性。LLM Graph Transformer为非结构化数据的结构化表示提供了可靠的技术方案,支持RAG应用和复杂查询处理。
99 2
基于LLM Graph Transformer的知识图谱构建技术研究:LangChain框架下转换机制实践
|
6天前
|
Web App开发 网络安全 数据安全/隐私保护
Lua中实现HTTP请求的User-Agent自定义
Lua中实现HTTP请求的User-Agent自定义
|
2月前
|
人工智能 API 决策智能
swarm Agent框架入门指南:构建与编排多智能体系统的利器 | AI应用开发
Swarm是OpenAI在2024年10月12日宣布开源的一个实验性质的多智能体编排框架。其核心目标是让智能体之间的协调和执行变得更轻量级、更容易控制和测试。Swarm框架的主要特性包括轻量化、易于使用和高度可定制性,非常适合处理大量独立的功能和指令。【10月更文挑战第15天】
300 6
|
1月前
|
存储 Serverless API
基于百炼平台构建智能体应用——十分钟构造能主动提问的导购智能体
本文介绍了如何使用阿里云百炼大模型服务平台构建一个多智能体的智能导购应用,并将其部署到钉钉。通过百炼的Assistant API,您可以快速构建一个包含规划助理、手机导购、冰箱导购和电视导购的智能导购系统。文章详细讲解了从创建函数计算应用、访问网站、验证智能导购效果到将商品检索应用集成到智能导购中的全过程,帮助您快速实现智能导购功能。
140 0
基于百炼平台构建智能体应用——十分钟构造能主动提问的导购智能体