使用 gpt4all llm 解析 langchain 代理时出现错误

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

我正在尝试将 GPT4All 与 langchain 的 serpapi 代理集成。 但我遇到解析错误。 代理无法解析 llm 输出。

我对 langchain 框架有点陌生。我觉得我在下面的代码片段中遗漏了一些东西。

我相信代理正在期待输出 想法: .... 但没有得到,我可以在这里得到一些帮助吗?

from langchain.llms import GPT4All
from langchain.agents import load_tools
from dotenv import load_dotenv

load_dotenv()


llm = GPT4All(
    model="~/.cache/gpt4all/orca-mini-3b-gguf2-q4_0.gguf",
    verbose=True,
)

from langchain.agents import load_tools
from langchain.agents import initialize_agent

tools = load_tools(["serpapi"], llm=llm)
agent = initialize_agent(tools, llm, agent="zero-shot-react-description", verbose=True)
agent.run("which club is Cristiano Ronaldo playing right now?")

错误

ValueError: An output parsing error occurred. In order to pass this error back to the agent and have it try again, pass `handle_parsing_errors=True` to the AgentExecutor. This is the error: Could not parse LLM output: ```
langchain google-search-api large-language-model py-langchain gpt4all
2个回答
0
投票

这个答案可能为时已晚,无法帮助您,但也许有人会偶然发现这个并发现它有用。我通过使用 ConsoleCallbackHandler 取得了良好的调试进展。它几乎打印出链接元素之间的所有输入和输出。这是一个小例子:

from langchain.callbacks.tracers import ConsoleCallbackHandler

"which club is Cristiano Ronaldo playing right now?"
print(agent.invoke(prompt, config={"callbacks":[ConsoleCallbackHandler()]}))

0
投票

在代理初始化期间使用handle_parsing_errors=True。当生成的响应与预期格式不匹配时,将进行输出解析。无论您选择什么回调,这种情况都可能发生。通过设置handle_parsing_errors=True,您告诉代理尝试重新生成响应,直到可以正确解析它为止

agent = initialize_agent(
 tools = tools,
 llm = llmm,
 agent="zero-shot-react-description",
 verbose=True, 
 handle_parsing_errors = True
)
© www.soinside.com 2019 - 2024. All rights reserved.