以下是关于本地知识库系统如何利用大语言模型的相关内容:
一、部署大语言模型
二、了解 RAG 利用大模型的能力搭建知识库是 RAG 技术的应用。在进行本地知识库搭建实操前,需对 RAG 有大概了解。大模型训练数据有截止日期,当需要依靠不在训练集中的数据时,主要通过检索增强生成 RAG 实现。RAG 应用可抽象为 5 个过程:
三、通过 Open WebUI 使用大模型
一、下载并安装Ollama1、点击进入,根据你的电脑系统,下载Ollama:https://ollama.com/download2、下载完成后,双击打开,点击“Install”3、安装完成后,将下方地址复制进浏览器中。如果出现下方字样,表示安装完成http://127.0.0.1:11434/二、下载qwen2:0.5b模型(0.5b是为了方便测试,下载快,自己设备充足的话,可以下载更大的模型)1、如果你是windows电脑,点击win+R输入cmd,点击回车如果你是Mac电脑,按下Command(⌘)+ Space键打开Spotlight搜索。输入“Terminal”或“终端”,然后从搜索结果中选择“终端”应用程序。2、复制以下命令行,粘贴进入,点击回车:3、回车后,会开始自动下载,等待完成(这里下载久了,可能会发现卡着不动,不知道下载了多少了。鼠标点击一下窗口,键盘点空格,就会刷新了)4、下载完成后你会发现,大模型已经在本地运行了。输入文本即可进行对话。
因为利用大模型的能力搭建知识库本身就是一个RAG技术的应用。所以在进行本地知识库的搭建实操之前,我们需要先对RAG有一个大概的了解。以下内容会有些干,我会尽量用通俗易懂的描述进行讲解。我们都知道大模型的训练数据是有截止日期的,那当我们需要依靠不包含在大模型训练集中的数据时,我们该怎么做呢?实现这一点的主要方法就是通过检索增强生成RAG(Retrieval Augmented Generation)。在这个过程中,首先检索外部数据,然后在生成步骤中将这些数据传递给LLM。我们可以将一个RAG的应用抽象为下图的5个过程:文档加载(Document Loading):从多种不同来源加载文档。LangChain提供了100多种不同的文档加载器,包括PDF在内的非结构化的数据、SQL在内的结构化的数据,以及Python、Java之类的代码等文本分割(Splitting):文本分割器把Documents切分为指定大小的块,我把它们称为“文档块”或者“文档片”存储(Storage):存储涉及到两个环节,分别是:将切分好的文档块进行嵌入(Embedding)转换成向量的形式将Embedding后的向量数据存储到向量数据库检索(Retrieval):一旦数据进入向量数据库,我们仍然需要将数据检索出来,我们会通过某种检索算法找到与输入问题相似的嵌入片
1.首先访问如下网址当你打开这个页面的时候,会让你登陆,这个时候我们随便使用一个邮箱注册一个账号即可1.和本地大模型进行对话登陆成功之后,如果你已经使用过ChatGPT等类似的大模型对话网站,我相信你对这个页面并不陌生。Open WebUI一般有两种使用方式第一种是聊天对话第二种是RAG能力,也就是可以让模型根据文档内容来回答问题。这种能力就是构建知识库的基础之一如果你的要求不高的话,我们已经搭建了一个本地大模型了,并且通过Web UI实现了和大模型进行对话的功能。相信通过这么一通折腾,你就理解了ChatGPT的信息流,至于为什么ChatGPT的访问速度比我们自己的要快,而且回答效果要好,有两个原因快:是因为GPT大模型部署的服务器配置高好:是因为GPT大模型的训练参数多,数据更优以及训练算法更好如果你想要更加灵活的掌握你的知识库,请接着往下看