LangChain :构建个人AI代理从这里开始

本文涉及的产品
阿里云百炼推荐规格 ADB PostgreSQL,4核16GB 100GB 1个月
简介: LangChain :构建个人AI代理从这里开始

LangChain,一个强大的工具,允许根据用户输入创建对语言模型和其他工具的复杂调用链。就像拥有一个私人助理,可以根据手头的任务做出决定。本文来分享一下在 LangChain 中使用 Agents 的心路历程。

LangChain中代理的概念

在 LangChain 中,代理是一个组件,可以访问一套工具,并可以根据用户的输入决定使用哪个工具。有两种主要类型的代理:行为代理 Action Agents计划和执行代理 Plan-and-Execute Agents

  • 行为代理 Action Agents 决定采取的动作并一次一步地执行该动作。它们更传统,适用于小型任务。
  • 计划和执行代理 Plan-and-Execute Agents 首先决定要采取的行动计划,然后一次执行这些行动。它们非常适合更复杂或长期运行的任务,因为初始规划步骤有助于保持长期目标和重点。然而,这伴随着更多调用和更高延迟的权衡。

Agent剖析

LangChain 中的代理由几个关键组件组成:

  1. 代理:这是应用程序逻辑所在的地方。它接受用户输入以及代理已采取的先前步骤的列表,并返回 AgentAction 或 AgentFinish。
  2. 工具:这些是代理可以采取的行动。为代理提供的工具在很大程度上取决于希望代理做什么。
  3. 工具包:这些是为特定用例设计的工具组。
  4. 代理执行器:这包装了一个代理和一系列工具。它负责迭代地运行代理,直到满足停止条件。

Agents 体验

现在来动手看看如何在实践中使用代理。为此,将使用 LangChain 提供的最简单、最高级别的 API。

首先,需要了解几个关键概念:

  • 工具:执行特定任务的功能。这可以是 Google 搜索、数据库查找、Python REPL 和其他链。工具的接口目前是一个函数,期望将字符串作为输入,将字符串作为输出。
  • LLM:为代理提供支持的语言模型。
  • 代理:要使用的代理。这应该是一个引用支持代理类的字符串。

下面是一个如何初始化和运行代理的简单示例:


from langchain.agents import load_tools
from langchain.agents import initialize_agent
from langchain.agents import AgentType
from langchain.llms import OpenAI
# Load the language model
llm = OpenAI(temperature=0)
# Load some tools to use
tools = load_tools(["serpapi", "llm-math"], llm=llm)
# 使用工具、语言模型和代理类型初始化代理
agent = initialize_agent(
    tools, llm, agent=AgentType.ZERO_SHOT_REACT_DESCRIPTION, verbose=True)
# Test the agent NBA东部决赛比赛结果如何? 如何评价这场比赛? 如何评价这场比赛?
agent.run(
    "What was the outcome of the NBA Eastern Conference finals? How to evaluate the match? How do you comment on the match?")

这个代理会给出答案,这场NBA东部决赛的比赛刚结束,Agent给出了正确的答案。

image.png

总结

总之,LangChain 中的代理是一个强大的工具,可以帮助创建对语言模型和其他工具的复杂调用链。它们可以定制以满足特定需求,无论是针对小型任务还是更复杂的长期运行任务。关键是要了解代理的不同组件以及它们如何协同工作以根据用户输入做出决策。


相关实践学习
阿里云百炼xAnalyticDB PostgreSQL构建AIGC应用
通过该实验体验在阿里云百炼中构建企业专属知识库构建及应用全流程。同时体验使用ADB-PG向量检索引擎提供专属安全存储,保障企业数据隐私安全。
AnalyticDB PostgreSQL 企业智能数据中台:一站式管理数据服务资产
企业在数据仓库之上可构建丰富的数据服务用以支持数据应用及业务场景;ADB PG推出全新企业智能数据平台,用以帮助用户一站式的管理企业数据服务资产,包括创建, 管理,探索, 监控等; 助力企业在现有平台之上快速构建起数据服务资产体系
相关文章
|
2天前
|
人工智能 数据可视化 JavaScript
NodeTool:AI 工作流可视化构建器,通过拖放节点设计复杂的工作流,集成 OpenAI 等多个平台
NodeTool 是一个开源的 AI 工作流可视化构建器,通过拖放节点的方式设计复杂的工作流,无需编码即可快速原型设计和测试。它支持本地 GPU 运行 AI 模型,并与 Hugging Face、OpenAI 等平台集成,提供模型访问能力。
34 14
NodeTool:AI 工作流可视化构建器,通过拖放节点设计复杂的工作流,集成 OpenAI 等多个平台
|
1天前
|
机器学习/深度学习 人工智能 运维
阿里云技术公开课直播预告:基于阿里云 Elasticsearch 构建 AI 搜索和可观测 Chatbot
阿里云技术公开课预告:Elastic和阿里云搜索技术专家将深入解读阿里云Elasticsearch Enterprise版的AI功能及其在实际应用。
阿里云技术公开课直播预告:基于阿里云 Elasticsearch 构建 AI 搜索和可观测 Chatbot
|
3天前
|
人工智能 自然语言处理 安全
主动式智能导购AI助手构建方案测评
主动式智能导购AI助手构建方案测评
30 12
|
1天前
|
人工智能 自然语言处理 Serverless
构建主动式智能导购AI助手的评测与体验
构建主动式智能导购AI助手的评测与体验
17 4
|
6天前
|
存储 人工智能 Serverless
AI助手测评 | 3步快速构建主动式智能导购AI助手
本文介绍了如何利用阿里云的百炼平台构建主动式智能导购AI助手。在当前经济形势下,企业通过AI技术可以有效降低成本并提升服务质量。主动式智能导购AI助手不仅具备专业知识和耐心,还能24小时不间断服务用户,帮助企业节省夜班客服费用。通过创建API-KEY、部署函数计算应用和集成百炼商品检索应用,企业可以在短短几步内快速构建这一智能系统。此外,文章还提供了详细的部署步骤和测评建议,确保企业在实际应用中能够顺利实施。
|
6天前
|
人工智能 前端开发 算法
主动式智能导购 AI 助手构建方案评测
《主动式智能导购 AI 助手构建方案评测》详细评估了该方案在部署体验、技术原理理解及生产环境应用指导等方面的表现。方案在智能导购领域展现出一定潜力,但文档的详细程度和技术细节的阐述仍有改进空间,特别是在复杂操作和高级功能的指导上。总体而言,该方案具备优势,但需进一步优化以更好地满足企业需求。
49 10
|
4天前
|
弹性计算 自然语言处理 数据库
通过阿里云Milvus和LangChain快速构建LLM问答系统
本文介绍如何通过整合阿里云Milvus、阿里云DashScope Embedding模型与阿里云PAI(EAS)模型服务,构建一个由LLM(大型语言模型)驱动的问题解答应用,并着重演示了如何搭建基于这些技术的RAG对话系统。
29 3
|
4天前
|
人工智能 前端开发 Serverless
解决方案评测:主动式智能导购AI助手构建
解决方案评测:主动式智能导购AI助手构建
28 3
|
7天前
|
人工智能 前端开发 Serverless
主动式智能导购 AI 助手构建解决方案深度评测
《主动式智能导购 AI 助手构建》解决方案通过 Multi-Agent 架构,结合百炼大模型和函数计算,实现了精准的商品推荐。部署流程清晰,但在数据类型选择和配置优化方面存在不足。方案在生产环境应用中提供了基础指导,但仍需完善前端开发指南和数据管理机制,以更好地满足企业需求。
|
7天前
|
人工智能 运维 Serverless
主动式智能导购AI助手构建评测报告
主动式智能导购AI助手构建评测报告
28 1