Skip to main content
提示模板 接收到缺失或无效的输入变量时发生。 一种可能意外触发此错误的情况是,如果你直接将 JSON 对象添加到提示模板中:
你可能会认为上述提示模板应该只需要一个名为 question 的输入键,但 JSON 对象会被解释为一个额外的变量,因为花括号({)没有被转义,而应该在前面加上第二个花括号,像这样:

故障排除

要解决此错误,你可以:
  1. 检查提示模板的正确性。使用 f-string 格式时,确保正确转义花括号:
    • 在 f-string 中使用 {{ 表示单个花括号
    • 在 f-string 中使用 {{{{ 表示双花括号
  2. 使用 MessagesPlaceholder 组件时,确认你传递的是消息数组或类似消息的对象。如果使用简写元组,请将变量名用花括号包裹,如 ["placeholder", "{messages}"]
  3. 通过使用 LangSmith 或日志记录来调试,检查提示模板的实际输入,以验证它们是否符合预期
  4. 如果从 LangChain Prompt Hub 获取提示,请使用示例输入隔离并测试提示,以确保其按预期工作