构建自己的知识库可以通过以下方式实现:
1. 利用 GPT 打造个人知识库:
GPT3.5 免费版的 ChatGPT 一次交互支持的 Token 有限,对于多数领域知识容量不够。
OpenAI 提供了 embedding API 解决方案,embeddings 是浮点数字的向量,向量间距离衡量关联性,小距离表示高关联度。
参考 OpenAI embedding documents 了解更多。
2. 本地部署大模型以及搭建个人知识库:
若要更灵活掌控知识库,可使用额外软件 AnythingLLM,其包含 Open WebUI 的能力,并支持选择文本嵌入模型和向量数据库。
安装地址:https://useanything.com/download 。
安装完成后进入配置页面,主要分为三步:选择大模型、选择文本嵌入模型、选择向量数据库。
在 AnythingLLM 中创建独有的 Workspace 与其他项目数据隔离,包括创建工作空间、上传文档并进行文本嵌入、选择对话模式(Chat 模式综合给出答案,Query 模式仅依靠文档数据给出答案),配置完成后可进行测试对话。
3. 了解 RAG 技术:
利用大模型搭建知识库是 RAG 技术的应用。
在进行本地知识库搭建实操前,需对 RAG 有大概了解。
RAG 应用可抽象为 5 个过程:文档加载(从多种来源加载文档,LangChain 提供 100 多种文档加载器)、文本分割(把 Documents 切分为指定大小的块)、存储(包括将文档块嵌入转换成向量形式和将向量数据存储到向量数据库)、检索(通过检索算法找到与输入问题相似的嵌入片)、输出(把问题及检索出的嵌入片提交给 LLM 生成答案)。
文本加载器是将用户提供的文本加载到内存中以便后续处理。
2025-02-03