ChatWiki,一个RAG本地AI问答系统开源了,在GitHub可免费下载!

ChatWiki,一个RAG本地AI问答系统开源了,在GitHub可免费下载!

ChatWiki可以基于AI大模型搭建聊天机器人:点此进入芝麻小客服官网

  • 可选择OpenAI/ Google Gemini/Cohere/文心一言/讯飞星火/通义千问/Kimi/腾讯混元等国内外20多种AI大模型。
  • 同时支持在线网站、H5链接、微信公众号、微信小程序、微信客服、视频号小店等接入。
  • 能处理任意格式文本,包括pdf、docx、txt、Markdown、xlsx、csv、html、在线网页数据。

企业可以直接使用ChatWiki提供的SaaS版本,或者在GitHub上下载源代码,部署定制本地私有智能知识库。

在GitHub上下载ChatWiki代码是免费的!

ChatWiki官网:chatwiki.com

GitHub开源地址:https://github.com/zhimaAi/chatwiki

ChatWiki体验地址:http://h5.wikichat.com.cn/#/chat?robot_key=lTo85wvGSj

ChatWiki,一个RAG本地AI问答系统开源了,在GitHub可免费下载!

一、ChatWiki技术架构

ChatWiki基于大语言模型(LLM )和检索增强生成(RAG)技术构建,将传统的检索方法与生成模型结合,通过引入外部知识库来增强生成的内容。不仅能够显著提高回答的准确性,还能够有效地处理一些生成模型单独无法处理的长尾问题和专业问题。

RAG 的工作流程可以参考下图来直观地了解。

ChatWiki,一个RAG本地AI问答系统开源了,在GitHub可免费下载!

具体来说可以分为以下几个主要步骤:

1.知识库的构建

首先,RAG 模型需要一个包含丰富信息的私有知识库。这个知识库可以包括各种类型的文档,如 PDF 文件、笔记、技术文档等。知识库的内容需要预先进行处理和分块,以便于后续的检索操作。每个文档被分成若干小的文本块(text chunk),这些文本块是后续检索操作的基本单位。

2.嵌入模型的训练

接下来,利用嵌入模型(Embedding Model)对知识库中的每个文本块进行编码,生成对应的向量表示。这些向量表示捕捉了文本块的语义信息,能够在向量空间中反映出文本块之间的相似性。嵌入模型通常是通过大规模预训练语言模型(如 BERT、RoBERTa 等)进行微调,以适应特定领域的知识和语言风格。

3.向量索引和存储

生成的向量表示需要进行索引和存储,以便于后续的快速检索操作。这一步通常使用向量数据库(如 FAISS)来实现。向量数据库能够高效地处理大规模向量数据,并支持近似最近邻(ANN)搜索,从而在大规模数据中快速找到与查询向量相似的存储向量。

4.查询处理与嵌入

当用户通过聊天界面提交查询时,RAG 模型首先将查询输入嵌入模型,生成查询向量。这个查询向量同样捕捉了查询的语义信息,便于后续的相似性搜索。

5.相似性检索

通过查询向量,RAG 模型在向量数据库中进行相似性检索。检索过程利用近似最近邻搜索算法(如 HNSW),快速找到与查询向量相似的存储向量。这些相似向量对应的文本块就是检索到的上下文文档片段。

6.文档片段的生成

检索到的文档片段被传递给生成模型(如 GPT-4),作为生成答案的上下文。生成模型利用这些上下文信息,结合查询内容,生成更加准确和相关的答案。生成模型的提示(Prompt)可以设定为“根据上下文回答查询”,确保生成的内容紧扣检索到的信息。

7.答案生成

最终,生成模型输出的答案通过聊天界面返回给用户。这一过程确保了答案的准确性和相关性,因为生成模型依赖于从知识库中检索到的实际文档片段,而不仅仅是依赖于其内部的预训练知识。

二、私有化部署

1.准备工作

再安装ChatWiki之前,您需要准备一台具有联网功能的linux服务器,并确保服务器满足最低系统要求

  • Cpu:最低需要2 Core
  • RAM:最低需要4GB

2.开始安装

ChatWiki社区版基于Docker部署,请先确保服务器已经安装好Docker。如果没有安装,可以通过以下命令安装:

sudo curl -sSL https://get.docker.com/ | CHANNEL=stable sh

安装好Docker后,逐步执行一下步骤安装ChatWiki社区版

(1)克隆或下载chatwiki项目代码

git clone https://github.com/zhimaAi/chatwiki.git

(2)使用Docker Compose构建并启动项目

cd chatwiki/docker

docker compose up -d

3.部署手册

①一键部署ChatWiki社区版(https://www.yuque.com/zhimaxiaoshiwangluo/pggco1/wql8ekkylbwegbzo)

②如何配置模型供应商及支持的模型(https://www.yuque.com/zhimaxiaoshiwangluo/pggco1/pn79lkvl53bo0xxm)

③本地模型部署(https://www.yuque.com/zhimaxiaoshiwangluo/pggco1/evmy0rr9gr2gp2i0)

④如何配置对外服务和接收推送的域名(https://www.yuque.com/zhimaxiaoshiwangluo/pggco1/nfk4slc95s4i8u4v)

⑤免Docker部署ChatWiki(https://www.yuque.com/zhimaxiaoshiwangluo/pggco1/klriercbhpy97o0g)

⑥如何获取大模型ApiKey(https://www.yuque.com/zhimaxiaoshiwangluo/pggco1/lx3ho90skq95dpdq)

四、使用流程

1.配置AI大模型

安装完成后,首先需要配置AI大模型才开使用,只需要简单配置API KEY等信息即可,需要企业自行去大模型官网进行申请。

ChatWiki,一个RAG本地AI问答系统开源了,在GitHub可免费下载!

2.新建知识库

上传文档进行学习训练,ChatWiki自动对导入的文本数据进行预处理、向量化或 QA 分割。也可以通过召回测试,输入问题查看匹配的文档分段和相似度。

ChatWiki,一个RAG本地AI问答系统开源了,在GitHub可免费下载!

3.机器人提示词

创建一个机器人,关联已训练完成的知识库。为了引导AI机器人生成我们期待的回复,就要设置提示词(Prompts),一般来说,提示词越精准详细,AI机器人回答的效果也就越好。

ChatWiki,一个RAG本地AI问答系统开源了,在GitHub可免费下载!

4.对外使用

AI机器人训练完成后,我们可以在在线网站、H5链接、微信公众号、微信小程序、微信客服、视频号小店等场景接入,有咨询消息时,由AI机器人进行自动回复。

ChatWiki,一个RAG本地AI问答系统开源了,在GitHub可免费下载!

点此进入芝麻小服官网

了解更多功能详情,

获取功能试用,请扫码联系025年企微活码最新玩法!芝麻微客渠道活码功能详解05--自动通过好友申请"

原创文章,作者:小芝麻,如若转载,请注明出处:https://xiaokefu.com.cn/blog/14346.html