Langchain-Chatchat大语言模型本地知识库

链接:https://juejin.cn/post/7305572311812751371 来源:稀土掘金

Langchain-Chatchat是一种利用 langchain 思想实现的基于本地知识库的问答应用,目标期望建立一套对中文场景与开源模型支持友好、可离线运行的知识库问答解决方案。

💡Langchain-Chatchat建立了全流程可使用开源模型实现的本地知识库问答应用,使用基于 Streamlit 的 WebUI 进行操作。 img

⛓️ Langchain-Chatchat实现原理如下图所示,过程包括加载文件 -> 读取文本 -> 文本分割 -> 文本向量化 -> 问句向量化 -> 在文本向量中匹配出与问句向量最相似的 top k个 -> 匹配出的文本作为上下文和问题一起添加到 prompt中 -> 提交给 LLM生成回答。 img

学术Fun将上述工具制作成一键启动包,内置chatglm3模型,点击即可使用,避免大家配置Python环境出现各种问题,下载地址: xueshu.fun/3278/在此页面右侧区域点击下载!

注意电脑配置如下

  • windows 10/11
  • 8G显存以上英伟达显卡

下载使用教程

  • 下载压缩包 下载地址: xueshu.fun/3278/在此页面右侧区域点击下载!
  • 解压,解压后,最好路径和我的保持一致,D:\AI\Langchain-ChatGLM,如下图所示,双击启动.exe文件运行

img

  • 启动过程中,会联网更新streamlit包,包很小只有10几兆,更新streamlit包是防止有的同学没有解压到和我本地一致的目录,会出现streamlit命令找不到的错误,启动完成后浏览器会自动打开使用界面,如下所示,本地访问地127.0.0.1:8501

img

本地知识库使用

  • 按照下图步骤,建立本地知识库
  1. 点击知识库管理
  2. 新建知识库

img

  1. 新建知识库名称,不支持中文
  2. 填写知识库简介
  3. 点击新建 img
  4. 上传知识库文件,支持格式如图中所示
  5. 点击添加文件到知识库

img

使用知识库问答

  1. 选择对话
  2. 选择知识库问题对话模式
  3. 选择刚刚建立的知识库名称
  4. 输入内容进行知识库对话,对话内容会从上传的知识库文件中索引 img

联网问答功能

还支持联网在线搜索问答,使用方式见下图: img

)