ChatBot langchain,设置内存+检索器+map_reduce

问题描述 投票:0回答:1

我是这个主题的新手。我想要一个链,允许我使用检索器、内存并设置 chain_type = 'map_reduce'。除此之外,我想知道是否有可能仅在令牌数量超过限制的情况下使用map_reduce。谢谢您的建议。

我尝试使用“ConversationalRetrievalChain.from_llm”或“RetrievalQA.from_llm”,但我不知道如何组合链的不同功能。

python nlp chatbot openai-api langchain
1个回答
0
投票

仅在以下情况下才可以使用map_reduce: 代币数量超出限制。

这就是

map_reduce
的目的。它会首先对文档进行总结,然后将它们组合起来,然后对这些组合的总结进行总结。您的最终输出将符合模型的代币限制

这是你的代码

from langchain.chains import RetrievalQA

qa = RetrievalQA.from_chain_type(
    llm=ChatOpenAI(),
    chain_type='map_reduce',
    retriever=retriever,
    chain_type_kwargs={    
        "prompt": SETYOURPROMPTHERE,
        "memory": SETYOURMEMORYHERE
)
© www.soinside.com 2019 - 2024. All rights reserved.