Mic*_*ick 4 python openai-api chatgpt-api langchain
我正在尝试使用我自己创建的提示为 Langchain 创建 load_summarize_chain 。
\nllm = ChatOpenAI(model_name="gpt-3.5-turbo", temperature=0.7)\nPROMPT = PromptTemplate(template=prompt_template, input_variables=["text"])\nchain = load_summarize_chain(llm, chain_type="refine", verbose=True, prompt=PROMPT)\nRun Code Online (Sandbox Code Playgroud)\n但是,只有当 chain_type 设置为“stuff”时,我才能成功创建链。当我尝试将其指定为“map_reduce”或“refine”时,我收到如下错误消息:
\nllm = ChatOpenAI(model_name="gpt-3.5-turbo", temperature=0.7)\nPROMPT = PromptTemplate(template=prompt_template, input_variables=["text"])\nchain = load_summarize_chain(llm, chain_type="refine", verbose=True, prompt=PROMPT)\nRun Code Online (Sandbox Code Playgroud)\n这是怎么回事\xef\xbc\x9f
\n我认为这可能是因为“map_reduce”或“refine”无法直接在load_summarize_chain,或者其他一些原因。
小智 8
当您的chain_type='map_reduce',您应该传递的参数是map_prompt并且combine_prompt您的最终代码将如下所示
chain = load_summarize_chain(llm, chain_type="map_reduce",verbose=True,map_prompt=PROMPT,combine_prompt=COMBINE_PROMPT)
Run Code Online (Sandbox Code Playgroud)
其中 PROMPT 和 COMBINE_PROMPT 是使用生成的自定义提示PromptTemplate
并且当您的chain_type='refine',您应该传递的参数是refine_prompt并且您的最终代码块看起来像
chain = load_summarize_chain(llm, chain_type="refine",verbose=True,refine_prompt=PROMPT)
Run Code Online (Sandbox Code Playgroud)