LangChain-Agents 入门指南

Here’s the table of contents:

LangChain-Agents 入门指南

  LangChain是一个使用LLMs构建应用程序的工具箱,包含Models、Prompts、Indexes、Memory、Chains、Agents、Callbacks等核心模块。

  其中 Agents 使用 LLMs 来确定采取哪些行动以及以何种顺序采取行动。操作可以是使用工具并观察其输出,也可以是返回给用户。如果使用得当,代理可以非常强大。本文章的目的是向您展示如何通过最简单、最高级别的 API 轻松使用 Agents 。

  关于 Agents 有以下几个核心概念:

  • Tool:执行特定的功能。可以是:谷歌搜索,数据库查找,Python REPL,使用其它工具。工具的接口目前是一个函数,期望以字符串作为输入,以字符串作为输出。
  • LLM:驱动 Agents 的语言模型。
  • Agent:要使用的代理。这应该是一个引用支持代理类的字符串。由于本章关注的是最简单、最高级别的API,因此只涉及使用标准支持的代理。如果您希望实现自定义代理,请参阅自定义代理的文档(即将推出)。

    访问关于 LangChain-Agents 的更多内容。

注册 Serpapi

  在 Serpapi网站注册账号,可以使用 GitHub 账号或者 Google 账号。注册完成后可以在首页获取SERPAPI_API_KEY,保存备用。

Serpapi网站注册账号

运行高级 Agents API 测试

运行 Google Search

  从运行结果可以看到,LLM 控制 Agents 运行了两次 Google Search,分别得到了姚明妻子的名称和年龄;最后一次 Action 得到年龄次方运算的结果,形成最终答案。

import os
from env import getEnv

os.environ['OPENAI_API_KEY'] = getEnv('OPENAI_KEY')
os.environ['SERPAPI_API_KEY'] = getEnv('SERPAPI_KEY')

from langchain.agents import load_tools
from langchain.agents import initialize_agent
from langchain.agents import AgentType
from langchain.llms import OpenAI

# 加载将要用来控制 Agents 的语言模型
llm = OpenAI(temperature=0)

# 加载一些要使用的工具
tools = load_tools(["serpapi", "llm-math"], llm=llm)

# 初始化 Agents
agent = initialize_agent(tools, llm, agent=AgentType.ZERO_SHOT_REACT_DESCRIPTION, verbose=True)

# 测试一下!
agent.run("姚明的妻子是谁?她现在的年龄是多少?她年龄的0.76次方是多少?")

Agents 运行流程
PyCharm 控制台输出

其它

  下面报错通过更换 urllib3 包版本后解决。

# Error communicating with OpenAI: HTTPSConnectionPool(host=’api.openai.com’...
# pip uninstall urllib3
# pip install urllib3==1.25.11

猜你喜欢

转载自blog.csdn.net/superman_xxx/article/details/130610231