Langchain predict 函数调用解析错误

Langchain predict function call parsing error

提问人:Somya Mohindra 提问时间:11/16/2023 更新时间:11/22/2023 访问量:27

问:

if topic:
    llm = GooglePalm(google_api_key=google_api_key)
    llm.temperature = 0.1
    template = "Tell me reasons why I am having these symptoms {topic}.
    prompt = PromptTemplate.from_template(template)
    chain = LLMChain(llm=llm, prompt = prompt)
    try:
        chain.predict(topic=topic)
    except Exception as e:
        print(f"Error during chain running: {e}")
        return "An error occurred while processing the chain."

我在链运行时出现错误:运行 chain.predict(topic=topic) 时列表索引超出范围? langchain使用的输出解析器来自:

/langchain/schema/output_parser.py“,第 226 行,parse_result 返回 self.parse(result[0].text) ~~~~~~^^^ IndexError:列表索引超出范围

为什么会这样?

它应该只输出一些文本,但无法使用 predict 函数解析它。

调试 openai-api langchain 大语言模型 palm

评论


答:

-2赞 Vikasha Consultancy 11/17/2023 #1

尝试重新创建矢量数据库,以减小块大小和重叠。这对我有用。

<请忽略上面给出的答案 - 这不是这个问题的正确答案>

正如其他贡献者所指出的 - 看看 Palm API 中的安全设置

评论

0赞 Michael M. 11/20/2023
这并不能提供问题的答案。一旦你有足够的声誉,你就可以对任何帖子发表评论;相反,提供不需要提问者澄清的答案。- 从评论
0赞 Ash Ishh 11/18/2023 #2

出于安全原因,Google Palm 阻止了您的查询。

Google Palm 的回应:

{
  "filters": [
    {
      "reason": "SAFETY"
    }
  ],
  "safetyFeedback": [
    {
      "rating": {
        "category": "HARM_CATEGORY_MEDICAL",
        "probability": "HIGH"
      },
      "setting": {
        "category": "HARM_CATEGORY_MEDICAL",
        "threshold": "BLOCK_MEDIUM_AND_ABOVE"
      }
    }
  ]
}

我在langchain上提出了转发Google Palm正确错误消息的问题

同时,你可以像这样通过 curl 测试你的基本提示,看看 Google Palm 发送了什么作为响应:

curl -H 'Content-Type: application/json' -d '{ "prompt": { "text": "Tell me reasons why I am having symptoms of cold"} }' "https://generativelanguage.googleapis.com/v1beta3/models/text-bison-001:generateText?key={PASTE_YOUR_KEY_HERE}