Navigate to WaytoAGI Wiki →
Home/Question List/Question Detail

本地知识库

Answer

以下是关于本地知识库的相关内容:

一、本地知识库进阶 如果想要对知识库进行更加灵活的掌控,需要使用额外的软件 AnythingLLM,它包含了所有 Open WebUI 的能力,并额外支持选择文本嵌入模型和向量数据库。 安装地址:https://useanything.com/download 。安装完成后进入配置页面,主要分为三步:

  1. 第一步:选择大模型。
  2. 第二步:选择文本嵌入模型。
  3. 第三步:选择向量数据库。

二、构建本地知识库 AnythingLLM 中有 Workspace 的概念,可以创建自己独有的 Workspace 与其他项目数据隔离。

  1. 首先创建一个工作空间。
  2. 上传文档并且在工作空间中进行文本嵌入。
  3. 选择对话模式,提供了两种模式:
    • Chat 模式:大模型会根据自己的训练数据和上传的文档数据综合给出答案。
    • Query 模式:大模型仅仅会依靠文档中的数据给出答案。
  4. 测试对话,完成上述配置后即可与大模型进行对话。

三、RAG 是什么 利用大模型的能力搭建知识库是 RAG 技术的应用。在进行本地知识库搭建实操前,需先了解 RAG。 RAG 实现方法是检索增强生成(Retrieval Augmented Generation),过程包括:

  1. 文档加载(Document Loading):从多种不同来源加载文档,LangChain 提供 100 多种不同的文档加载器,包括 PDF 等非结构化数据、SQL 等结构化数据以及 Python、Java 之类的代码等。
  2. 文本分割(Splitting):文本分割器把 Documents 切分为指定大小的块,称为“文档块”或者“文档片”。
  3. 存储:涉及将切分好的文档块进行嵌入转换成向量的形式,并将 Embedding 后的向量数据存储到向量数据库。
  4. 检索:通过某种检索算法找到与输入问题相似的嵌入片。
  5. Output(输出):把问题以及检索出来的嵌入片一起提交给 LLM,LLM 会通过问题和检索出来的提示生成更合理的答案。

四、Obsidian 加 Cursor 构建本地知识库 因为 Obsidian 浏览器剪藏插件强大开始玩 Obsidian 构建本地知识库,安装的几个 Obsidian 的 AI 插件配置复杂,体验不佳。 发现可以用 Cursor 等 AI IDE 解决问题,主要有三类作用:

  1. 帮助用模糊的问题检索笔记库,而非关键字。
  2. 帮助基于笔记库进行研究,可结合多个笔记软件给出建议。
  3. 帮助生成和修改笔记,比如生成整个笔记文件或者修改写的笔记文案。
Content generated by AI large model, please carefully verify (powered by aily)

References

手把手教你本地部署大模型以及搭建个人知识库

如果想要对知识库进行更加灵活的掌控,我们需要一个额外的软件:AnythingLLM。这个软件包含了所有Open WebUI的能力,并且额外支持了以下能力选择文本嵌入模型选择向量数据库[heading2]AnythingLLM安装和配置[content]安装地址:https://useanything.com/download当我们安装完成之后,会进入到其配置页面,这里面主要分为三步1.第一步:选择大模型1.第二步:选择文本嵌入模型1.第三步:选择向量数据库[heading2]构建本地知识库[content]AnythingLLM中有一个Workspace的概念,我们可以创建自己独有的Workspace跟其他的项目数据进行隔离。1.首先创建一个工作空间1.上传文档并且在工作空间中进行文本嵌入1.选择对话模式AnythingLLM提供了两种对话模式:Chat模式:大模型会根据自己的训练数据和我们上传的文档数据综合给出答案Query模式:大模型仅仅会依靠文档中的数据给出答案1.测试对话当上述配置完成之后,我们就可以跟大模型进行对话了[heading1]六、写在最后[content]我非常推崇的一句话送给大家:看十遍不如实操一遍,实操十遍不如分享一遍如果你也对AI Agent技术感兴趣,可以联系我或者加我的免费知识星球(备注AGI知识库)

手把手教你本地部署大模型以及搭建个人知识库

因为利用大模型的能力搭建知识库本身就是一个RAG技术的应用。所以在进行本地知识库的搭建实操之前,我们需要先对RAG有一个大概的了解。以下内容会有些干,我会尽量用通俗易懂的描述进行讲解。我们都知道大模型的训练数据是有截止日期的,那当我们需要依靠不包含在大模型训练集中的数据时,我们该怎么做呢?实现这一点的主要方法就是通过检索增强生成RAG(Retrieval Augmented Generation)。在这个过程中,首先检索外部数据,然后在生成步骤中将这些数据传递给LLM。我们可以将一个RAG的应用抽象为下图的5个过程:文档加载(Document Loading):从多种不同来源加载文档。LangChain提供了100多种不同的文档加载器,包括PDF在内的非结构化的数据、SQL在内的结构化的数据,以及Python、Java之类的代码等文本分割(Splitting):文本分割器把Documents切分为指定大小的块,我把它们称为“文档块”或者“文档片”存储(Storage):存储涉及到两个环节,分别是:将切分好的文档块进行嵌入(Embedding)转换成向量的形式将Embedding后的向量数据存储到向量数据库检索(Retrieval):一旦数据进入向量数据库,我们仍然需要将数据检索出来,我们会通过某种检索算法找到与输入问题相似的嵌入片Output(输出):把问题以及检索出来的嵌入片一起提交给LLM,LLM会通过问题和检索出来的提示一起来生成更加合理的答案[heading2]文本加载器(Document Loaders)[content]文本加载器就是将用户提供的文本加载到内存中,便于进行后续的处理

Obsidian加Cursor就是最强AI知识库!藏师傅教你从零学习 Obsidian 01

这几天因为看到了Obsidian的浏览器剪藏插件的强大(这个下节讲)所以开始玩Obsidian,想要搞一个符合自己要求的本地知识库再加上AI的加持。也装了几个Obsidian的AI插件,结果发现配置非常复杂,体验不太行,想要顺畅使用的话得看文档,甚至还有看文档都无法结局的恶性Bug,我得搜Github其他人的问题才能搞定。这些插件的作用主要是内置在Obsidian里面的AI助手,可以帮你检索你的笔记和基于笔记生成新的内容。然后我就想能不能用Cursor这些AI IDE解决这个问题,反正他解决的也是类似的问题,检索代码,回答代码问题,生成新的代码,HTML是标记语言,Markdown也是标记语言是吧。结果发现还真能用,而且非常顺滑,主要是三类作用:帮助你用模糊的问题检索你的笔记库,而不是关键字帮助你基于笔记库进行研究,可以结合多个笔记软件给出建议帮你生成和修改笔记,比如生成整个笔记文件或者修改你写的笔记文案教程里为了照顾大多数人我会用默认中文而且免费的Trae演示,但是由于现在AI IDE都大同小异所以你用Cursor或者Windsurf也可以看懂甚至,快捷键和按钮位置都一样的。

Others are asking
如何利用AI来打造自己的知识库?需要利用哪些软件?
以下是利用 AI 打造自己知识库的一些方法和可能用到的软件: 1. 飞书软件:例如“通往 AGI 之路”就是一个使用飞书搭建的 AI 知识库。您可以在飞书大群中与机器人对话获取资料。 2. Coze:在“大圣:胎教级教程:万字长文带你使用 Coze 打造企业级知识库”中有相关介绍,能帮助您理解 AI 时代的知识库,包括其概念、实现原理和能力边界等。 3. AnythingLLM:包含所有 Open WebUI 的能力,额外支持选择文本嵌入模型和向量数据库。安装地址为 https://useanything.com/download 。安装完成后可进行配置,包括选择大模型、文本嵌入模型和向量数据库。在 AnythingLLM 中可创建独有的 Workspace 来构建本地知识库,包括创建工作空间、上传文档并进行文本嵌入、选择对话模式(Chat 模式和 Query 模式),配置完成后可进行测试对话。 4. GPT:通过将文本拆分成小文本块并转换为 embeddings 向量,保存在向量储存库中作为问答的知识库。当用户提问时,将问题转换为向量并与储存库中的向量比对,提取关联度高的文本块与问题组合成新的 prompt 发送给 GPT API 。 希望以上信息对您有所帮助。
2025-03-17
知识库
以下是关于知识库的相关内容: 智能体创建: 手动清洗数据:本次创建知识库使用手动清洗数据,上节课程是自动清洗数据,自动清洗数据可能出现数据不准的情况,手动清洗可提高数据准确性。参考课程:。 在线知识库:点击创建知识库,创建画小二课程的 FAQ 知识库。飞书在线文档中每个问题和答案以分割,可选择飞书文档、自定义的自定义,输入后可区分内容,还可编辑修改和删除,添加 Bot 后可在调试区测试效果。 本地文档:对于本地 word 文件,注意拆分内容以提高训练数据准确度。例如画小二 80 节课程分为 11 个章节,不能一股脑全部放入训练,应先放入大章节名称内容,章节内详细内容按固定方式人工标注和处理,然后选择创建知识库自定义清洗数据。 发布应用:点击发布,确保在 Bot 商店中能搜到,否则无法获取 API。 概述: 扣子提供了几种存储和记忆外部数据的方式,以便 Bot 精准回复用户。知识库是大量知识分片,通过语义匹配为模型补充知识,以车型数据为例,每个知识库分段保存一种车型基础数据。同时还介绍了数据库、AI 便签、单词本等。 智能体“竖起耳朵听”: 扣子的知识库功能强大,可上传和存储外部知识内容,提供多种查找知识的方法,解决大模型有时出现的幻觉或专业领域知识不足的问题。在该智能体中使用了自己的知识库,收集了很多地道口语表达的短句,知识库可包含多种格式文件,此例中只用了文本格式,智能体回答用户时会先检索知识库内容。还可添加开场白提升体验。
2025-03-16
我需要搭建一个每个人都能使用的知识库
要搭建一个每个人都能使用的知识库,可以考虑使用 GPT 并借助 embeddings 技术。以下是相关步骤和原理: 1. 文本处理:将大文本拆分成若干小文本块(chunk)。 2. 向量转换:通过 embeddings API 将小文本块转换成与语义相关的 embeddings 向量,并在向量储存库中保存这些向量和文本块,作为问答的知识库。 3. 问题处理:当用户提出问题时,先将问题通过 embeddings API 转换成问题向量,然后与向量储存库中的所有文本块向量进行比对,查找距离最小的几个向量,提取对应的文本块,并与原有问题组合成新的 prompt 发送给 GPT API。 4. 容量限制:GPT3.5 一次交互支持的 Token 数量有限,embedding API 是解决处理大量领域知识的方案。 5. 理解 embeddings:embeddings 是浮点数字的向量,向量之间的距离衡量关联性,小距离表示高关联度。例如,“猫”和“狗”距离近,与“汽车”距离远。 例如,对于一篇万字长文,拆分成的 chunks 包含:文本块 1:本文作者:越山。xxxx。文本块 2:公众号越山集的介绍:传播效率方法,分享 AI 应用,陪伴彼此在成长路上,共同前行。文本块 3:《反脆弱》作者塔勒布xxxx。文本块 4:“科技爱好者周刊”主编阮一峰会记录每周值得分享的科技内容,周五发布。如果提问是“此文作者是谁?”,通过比较 embeddings 向量,可以直观地看出文本块 1 跟这个问题的关联度最高,文本块 3 次之。最后发送给 GPT API 的问题会类似于“此文作者是谁?从以下信息中获取答案:本文作者:越山。xxxx。《反脆弱》作者塔勒布xxxx。”这样大语言模型大概率能回答上这个问题。
2025-03-16
我想建立一个知识库,自动生成解决方案
以下是关于建立知识库并自动生成解决方案的相关信息: smartBot 的应用场景: 1. 辅助使用者对某个行业/领域/问题进行深度解读和分析,并建立系统性的认知过程。 2. 根据预设流程,自动化形成对某个专业方向/领域/行业的系统化知识图谱。 基于知识图谱的问答系统: 1. 结合知识图谱中的丰富信息,能够提供精确且富有洞察力的答案,无论问题是关于具体事实还是复杂关系。 2. 以 Bilibili 知识区为核心,将分散的知识点整合成语义网络,涵盖广泛主题领域,揭示不同概念间潜在关系。 3. 对 Bilibili 知识区重点视频字幕进行数据清洗和分词处理,确保数据准确性和一致性。 4. 利用 NLP 技术解析和优化用户查询,自动补充或纠正模糊查询词,提高查询准确性和覆盖面。 5. 采用先进深度学习技术,对用户查询进行深入语义理解和上下文分析,提供更精准搜索结果。 知识库构建与业务完整性: 1. 从文档切片、向量化到数据入库,构建完整的知识库。 2. 结合检索模块和生成模块,提供从检索到生成的完整解决方案。 用 Coze 免费打造微信 AI 机器人的步骤: 1. 设计方面:确定功能范围。 2. 搭建步骤: 开始节点和结束节点由 coze 自动生成。 开始节点配置:输入变量名写“Question”,描述写“用户输入的问题”,变量类型选“String”。 知识库配置:将开始节点和知识库左侧节点连接,引用开始节点的变量“Question”,添加创建好的知识库,并将知识库右侧节点与结束节点左侧连接。 结束节点配置:用于输出 AI 机器人的最终结果,回答格式设置为“您的问题:{{question}} 问题的答案:{{answer}}”,定义“question”引用“开始节点的 Question”,“answer”引用“知识库节点的输出 output”,选择使用设定内容直接回答。 试运行测试:点击右上角“试运行”,输入问题后点击“运行”,查看工作流每一步的详细输入和输出。
2025-03-16
如何建立自己的知识库
要建立自己的知识库,可以参考以下两种方法: 方法一:用 GPT 打造个人知识库 1. 理解 embeddings:embeddings 是一个浮点数字的向量(列表),两个向量之间的距离衡量它们的关联性,小距离表示高关联度,大距离表示低关联度。向量是数学中表示大小和方向的一个量,通常用一串数字表示,在计算机科学和数据科学中,向量通常用列表来表示。向量之间的距离是一种度量两个向量相似性的方法,最常见的是欧几里得距离。在 OpenAI 词嵌入中,靠近向量的词语在语义上相似。 2. 使用 embeddings:将大文本拆分成若干个小文本块(chunk),通过 embeddings API 将小文本块转换成 embeddings 向量,在一个地方(向量储存库)中保存这些 embeddings 向量和文本块,作为问答的知识库。当用户提出一个问题时,该问题先通过 embeddings API 转换成问题向量,然后将这问题向量与向量储存库的所有文本块向量比对,查找距离最小的几个向量,把这几个向量对应的文本块提取出来,与原有问题组合成为新的 prompt(问题/提示词),发送给 GPT API。 方法二:用 Coze 免费打造自己的微信 AI 机器人 1. 设计您的 AI 机器人。 2. 确定功能范围。 3. 创建知识库:整理“关键字”与“AI 相关资料链接”的对应关系,并将信息存储起来。创建知识库路径为个人空间 知识库 创建知识库。知识库文档类型支持本地文档、在线数据、飞书文档、Notion 等,本次使用【本地文档】。按照操作指引上传文档、分段设置、确认数据处理。小技巧:知识库好不好用,跟内容切分粒度有很大关系,我们可以在内容中加上一些特殊分割符,比如“”,以便于自动切分数据。分段标识符号要选择“自定义”,内容填“”。最终的知识库结果中,同一颜色代表同一个数据段,如果内容有误需要编辑,可以点击具体内容,鼠标右键会看到“编辑”和“删除”按钮,可以编辑或删除。
2025-03-16
有哪些知识库工具推荐
以下是为您推荐的一些知识库工具及相关信息: Coze: 创建知识库:来到个人空间,找到知识库导航栏,点击创建。支持文档、表格(CSV、Excel 等)、图片三种格式。选择格式并填写信息,还可选择自定义的文档切割。 使用知识库:可参考教程。 元子:WayToAGI 知识库: 工具入门篇(AI Tools):数据工具多维表格小白之旅,文章链接,适用人群为 Excel 重度使用者、手动数据处理使用者、文件工作者。 工具入门篇(AI Code):编程工具Cursor 的小白试用反馈,文章链接,适用人群为 0 编程经验、觉得编程离我们很遥远的小白。 工具入门篇(AI Music):音乐工具Suno 的小白探索笔记,文章链接,适用人群为 0 乐理知识、觉得作词作曲和我们毫不相关成本巨大的小白。 工具入门篇(Prompt):现成好用的 Prompt,文章链接,适用人群为完全没有 AI 使用经验,只下载过 kimi、豆包、chatgpt 一类对话软件的小白。 工具入门篇(AI Agent):Agent 工具小白的 Coze 之旅,文章链接,适用人群为完全没有编程基础,但对 AI 已有一点概念的小白。 工具入门篇(AI Pic):现在主流的 AI 绘图工具网站,文章链接,适用人群为完全没接触过 AI 出图、只是听说过的小伙伴。
2025-03-16