知识库功能中实现是否带历史记录
QA_chain_self类
它实现了一个不带历史记录的问答链,利用向量数据库和大语言模型来检索和生成答案。在初始化过程中,它会加载向量数据库和语言模型,并创建一个文档检索器和问答链对象。用户可以通过调用 `answer` 方法向系统提出问题,系统将利用向量数据库检索相关文档,并使用语言模型生成答案。该系统具有灵活的参数设置,可以控制生成答案的随机性和检索相关文档的数量。通过这种方式,用户可以快速获取准确的答案,实现了高效的问答交互。
Chat_QA_chain_self类
它是一个带有历史记录的问答链系统。在初始化过程中,用户可以指定模型名称、温度系数、检索相似文档的数量等参数。该类包含了清空历史记录和更改历史记录长度的方法。核心方法是 `answer`,它接收用户提出的问题,并返回更新后的历史记录。在回答问题的过程中,系统会根据用户提出的问题和历史记录,利用向量数据库和语言模型生成答案。同时,还会将本次对话加入到历史记录中,以便下次使用。这个类的输入是用户提出的问题,输出是更新后的历史记录。它的功能是根据用户的问题和历史记录生成答案,并保持对话的历史记录。