Json格式few-show prompt template报错问题

想要对json格式的输出添加一些example,类似这样。

python 复制代码
CHAT_SELF_RAG_USER_TEMPLATE = """
请基于上下文检索片段以及联网搜索结果来回答用户问题。
天气、新闻等与时效相关的信息优先使用联网结果,知识类、种草类优先使用检索文本。
使用帖子信息时:
把参考的帖子ID和回复文本一起按照要求的json格式输出。确保输出是json格式。
回答问题时,尽量尊重参考内容,引用参考内容观点,例如:ta们说:xxx,回复文本不要出现帖子id。
例如:
{
   "content":"ta们说:木屋烧烤的烤串很赞,服务也很不错,价格也便宜,推荐给大家。",
   "referencePostIds":["123456789"]
}

使用联网搜索结果时:
结合联网搜索内容,回答用户疑问。直接回复内容就好,参考帖子ID不用填内容。

如果不知道答案,则作为普通闲聊指令。

参考的帖子内容是:
{context}

参考的联网搜索结果是:
{search_content}

{format_instructions}

用户输入:{question}
"""

但是运行时报错,会提示找不到key "content",原因是PromptTemplate会错误的把json示例中的内容也当做需填充内容。

修复方案

将所有{ }额外多写一个,以绕过这个规则。修改后如下:

python 复制代码
CHAT_SELF_RAG_USER_TEMPLATE = """
请基于上下文检索片段以及联网搜索结果来回答用户问题。
天气、新闻等与时效相关的信息优先使用联网结果,知识类、种草类优先使用检索文本。
使用帖子信息时:
把参考的帖子ID和回复文本一起按照要求的json格式输出。确保输出是json格式。
回答问题时,尽量尊重参考内容,引用参考内容观点,例如:ta们说:xxx,回复文本不要出现帖子id。
例如:
{{
   "content":"ta们说:木屋烧烤的烤串很赞,服务也很不错,价格也便宜,推荐给大家。",
   "referencePostIds":["123456789"]
}}

使用联网搜索结果时:
结合联网搜索内容,回答用户疑问。直接回复内容就好,参考帖子ID不用填内容。

如果不知道答案,则作为普通闲聊指令。

参考的帖子内容是:
{context}

参考的联网搜索结果是:
{search_content}

{format_instructions}

用户输入:{question}
"""
相关推荐
北冥有一鲲12 小时前
LangChain.js:RAG 深度解析与全栈实践
开发语言·javascript·langchain
kimi-22215 小时前
LangChain 中少样本提示(Few-shot Prompting)
langchain
nice_lcj52015 小时前
【AI进阶】拒绝“人工智障”:掌握提示词工程(Prompt Engineering)的6大核心技巧
人工智能·prompt
明阳~16 小时前
LLM函数调用(Function Call):智能扩展AI能力
llm·prompt·agent·function call
智算菩萨18 小时前
2025通用ChatGPT Agent架构综述:从工具调用、工作流编排到可观测与安全闭环
安全·chatgpt·架构
love530love19 小时前
在 PyCharm 中配置 x64 Native Tools Command Prompt for VS 2022 作为默认终端
ide·人工智能·windows·python·pycharm·prompt·comfyui
北冥有一鲲20 小时前
LangChain.js:Tool、Memory 与 Agent 的深度解析与实战
开发语言·javascript·langchain
七夜zippoe20 小时前
使用OpenLLM管理轻量级大模型服务
架构·langchain·大模型·kv·轻量
njsgcs1 天前
我要搞个ai程序操控鼠标,截取屏幕,识别刀路,给ai一个刀路寻找规则的prompt,然后ai自己去按规则顺序点亮刀路
人工智能·prompt·项目预告
玖日大大1 天前
LangGraph 深度解析:构建强大智能体的新一代框架
人工智能·语言模型·架构·langchain