检查其他资源
- 为这个问题添加了一个非常描述性的标题。
- 使用集成搜索在LangChain文档中进行了搜索。
- 使用GitHub搜索查找类似的问题,但没有找到。
- 我确信这是LangChain中的一个bug,而不是我的代码。
- 通过更新到LangChain的最新稳定版本(或特定集成包)无法解决此bug。
示例代码
from langchain_openai import ChatOpenAI
from langchain_core.prompts import PromptTemplate
from langchain.globals import set_debug
set_debug(True)
prompt = PromptTemplate(template="user:{text}", input_variables=["text"])
model = ChatOpenAI(model="gpt-4o-mini")
chain = prompt | model
chain.invoke({"text": "hello"})
错误信息和堆栈跟踪(如果适用)
[llm/start] [chain:RunnableSequence > llm:ChatOpenAI] 进入LLM运行,输入:
{
"prompts": [
"Human: user:hello"
]
}
描述
问题1:即使使用自定义提示,也会在所有提示中添加“Human: ”,这弄乱了我的输出。
问题2(可能,未经验证):这让我想到在提示中添加了“
AI:”,这与我的llm的React相符。例如,如果我以“
Summary:
”结尾,有时AI会重复“summary”,除非明确告诉它不要这样做。
系统信息
langchain==0.2.10
langchain-aws==0.1.6
langchain-community==0.2.5
langchain-core==0.2.22
langchain-experimental==0.0.61
langchain-google-genai==1.0.8
langchain-openai==0.1.8
langchain-text-splitters==0.2.1
langchain-upstage==0.1.6
langchain-weaviate==0.0.2
2条答案
按热度按时间rseugnpd1#
如果你正在使用聊天模型,请使用
ChatPromptTemplate
z9gpfhce2#
问题是,我希望我的信息中没有任何前缀,但是langchain似乎在每个选项上都附加了一个前缀。有什么办法可以去掉这个前缀吗?