load_tool 无法识别 langchain 中的 python_repl

问题描述 投票:0回答:1

我正在使用 Langchain 连接 OpenAi 和一些基本的 python 计算。下面是我正在使用的代码:

from langchain.llms.fake import FakeListLLM
from langchain.agents import load_tools
from langchain.agents import initialize_agent
from langchain.agents import AgentType
tools = load_tools(["python_repl"])
responses=["Action: Python REPL\nAction Input: print(2 + 2)",
"Final Answer: 4"
]
llm = FakeListLLM(responses=responses)
agent = initialize_agent(tools, llm, agent=AgentType.ZERO_SHOT_REACT_DESCRIPTION, 
verbose=True)
agent.run("whats 2 + 2").   

我参考了langchain文档,代码似乎没问题,没有系统错误。在另一个代码中,我调用了另一个库并在此处创建了一个新对象:

from langchain_experimental.utilities import PythonREPL
python_repl = PythonREPL()

此代码在简单实例上运行时运行:
示例:

python_repl.run("print(10+34)")

但是当我尝试从 load_tool 调用 python_repl 时,它会抛出错误 ValueError: Got Unknown tool python_repl。上面的代码块中遗漏了什么。

python-3.x langchain py-langchain
1个回答
0
投票

我相信《Generative AI with LangChain》一书中打印的这段代码依赖于旧版本的langchain。确切地说,langchain[docarray]==0.0.284。

我建议为这本书设置一个 conda 环境,因为似乎有重大变化。

© www.soinside.com 2019 - 2024. All rights reserved.