以下是关于本地构建知识库的详细步骤和相关知识:
一、硬件配置要求
运行大模型需要较高的机器配置,个人玩家可能负担不起。
生成文字大模型:
最低配置:8G RAM + 4G VRAM
建议配置:16G RAM + 8G VRAM
理想配置:32G RAM + 24G VRAM(如果要跑 GPT3.5 差不多性能的大模型)
生成图片大模型(比如跑 SD):
最低配置:16G RAM + 4G VRAM
建议配置:32G RAM + 12G VRAM
生成音频大模型:
最低配置:8G VRAM
建议配置:24G VRAM
二、RAG 技术
利用大模型的能力搭建知识库本身就是一个 RAG 技术的应用。在进行本地知识库的搭建实操之前,需要先对 RAG 有大概的了解。
RAG 是指检索增强生成(Retrieval Augmented Generation),当需要依靠不包含在大模型训练集中的数据时,通过以下 5 个过程实现:
1. 文档加载(Document Loading):从多种不同来源加载文档。LangChain 提供了 100 多种不同的文档加载器,包括 PDF 在内的非结构化的数据、SQL 在内的结构化的数据,以及 Python、Java 之类的代码等。
2. 文本分割(Splitting):文本分割器把 Documents 切分为指定大小的块。
3. 存储:涉及将切分好的文档块进行嵌入(Embedding)转换成向量的形式,并将 Embedding 后的向量数据存储到向量数据库。
4. 检索:通过某种检索算法找到与输入问题相似的嵌入片。
5. Output(输出):把问题以及检索出来的嵌入片一起提交给 LLM,LLM 会通过问题和检索出来的提示一起来生成更加合理的答案。
三、本地知识库搭建步骤
如果想要对知识库进行更加灵活的掌控,需要一个额外的软件:AnythingLLM。
1. 安装 AnythingLLM
安装地址:https://useanything.com/download
安装完成后,会进入到其配置页面,主要分为三步:
第一步:选择大模型
第二步:选择文本嵌入模型
第三步:选择向量数据库
2. 构建本地知识库
AnythingLLM 中有一个 Workspace 的概念,可以创建自己独有的 Workspace 跟其他的项目数据进行隔离。
首先创建一个工作空间。
上传文档并且在工作空间中进行文本嵌入。
选择对话模式。AnythingLLM 提供了两种对话模式:
Chat 模式:大模型会根据自己的训练数据和上传的文档数据综合给出答案。
Query 模式:大模型仅仅会依靠文档中的数据给出答案。
测试对话:当上述配置完成之后,就可以跟大模型进行对话了。
四、写在最后
“看十遍不如实操一遍,实操十遍不如分享一遍”。如果对 AI Agent 技术感兴趣,可以联系作者或者加作者的免费知识星球(备注 AGI 知识库)。
2025-01-22