文章目录
前言
代理 (Agents) 是使用大语言模型(LLM)最强大和最有趣的方法之一。LLM 的兴起使得代理 (Agents) 在基于人工智能的应用中变得非常普遍。
使用代理 (Agents) 可以让 LLM 访问工具。这些工具提供了无限的可能性。有了工具,LLM 可以搜索网络、进行数学计算、运行代码等等。
LangChain 库提供了大量预置的工具。然而,在许多真实项目中,我们通常会发现现有工具只能满足有限的需求。这意味着我们必须修改现有工具或完全构建新的工具。
一、基本概念
在 LangChain 中,Agent 的定义可以概括为:一个由大语言模型(LLM)驱动的自主决策系统,它通过循环的“思考-行动-观察”过程,动态地选择和使用外部工具来逐步解决用户提出的复杂问题。其核心价值在于突破了单一模型能力的限制,将 LLM 的推理能力与外部工具的强大功能(搜索、计算、代码执行等)结合起来,从而能够处理那些模型自身知识之外或需要实时数据的任务。其工作流程如下图:

可见,AI Agent就是一个小程序,负责在用户、大语言模型和工具之间进行传话,对于用户可见的,仅仅是发起了一个问题或者任务和接收到了最终的响应结果,中间的执行过程全由大语言模型自主规划(如:调用哪些工具函数,函数的返回异常重试等)。
在AI Agent的应用中主要有以下参与对象:
- 用户 (
User): 交互的发起者。 - 代理(
Agent): 系统的核心协调者。 - 大语言模型 (
LLM): 提供认知和生成能力。 - 工具 (
Tool): 执行具体功能。 - 记忆库 (
Data Store): 存储和提供对话历史上下文。
本文中我们先假定“记忆库”的存在或者不存在,主要通过Agent、大语言模型和工具来体验一下Agent应用的工作。
二、安装依赖
1、安装LangChain包
LangChain包的安装在文章《Python:基于LangChain的RAG(检索增强生成)应用开发实践》一文中有较详细的说明。总之运行以下脚本即可:
pip install --upgrade langchain langchain-community
2、安装大模型依赖
文中使用的大语言模型-智谱AI,需要安装如下依赖:
pip install --upgrade httpx httpx-sse PyJWT
3、安装内置工具依赖
在初始化工具集时我们默认加入了llm-math工具,需要安装以下依赖程序包:
pip install --upgrade numexpr
三、创建工具集
为了测试,这里定义模拟天气查询、检查报告读取和模拟数据查询三个工具函数,分别通过不同的提问请求来测试大模型对代理工具函数的调用。
1、工具函数参数对象
使用pydantic来固定参数类型:
- 添加引入:
from pydantic import BaseModel, Field
1.1、单个参数的类型
class QueryInput(BaseModel):
query: str = Field(default="", description="查询关键词")
1.2、多个参数的类型
class <

最低0.47元/天 解锁文章
899

被折叠的 条评论
为什么被折叠?



