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

你的知识库是怎么部署的

Answer

部署个人知识库需要考虑硬件配置和相关技术原理。

硬件方面:

  • 生成文字大模型,最低配置为 8G RAM + 4G VRAM,建议配置为 16G RAM + 8G VRAM,理想配置为 32G RAM + 24G VRAM(如果要跑 GPT-3.5 差不多性能的大模型)。
  • 生成图片大模型(比如跑 SD),最低配置为 16G RAM + 4G VRAM,建议配置为 32G RAM + 12G VRAM。
  • 生成音频大模型,最低配置为 8G VRAM,建议配置为 24G VRAM。

技术原理方面:

  • 利用大模型的能力搭建知识库本身就是一个 RAG 技术的应用。在这个过程中,首先检索外部数据,然后在生成步骤中将这些数据传递给 LLM。
  • RAG 应用包括文档加载、文本分割、存储、检索和输出这 5 个过程。
    • 文档加载:从多种不同来源加载文档,LangChain 提供了 100 多种不同的文档加载器。
    • 文本分割:把 Documents 切分为指定大小的块。
    • 存储:涉及将切分好的文档块进行嵌入转换成向量的形式,并将 Embedding 后的向量数据存储到向量数据库。
    • 检索:通过某种检索算法找到与输入问题相似的嵌入片。
    • 输出:把问题以及检索出来的嵌入片一起提交给 LLM,LLM 会通过问题和检索出来的提示一起来生成更加合理的答案。

此外,搭建基于 GPT API 的定制化知识库,涉及给 GPT 输入(投喂)定制化的知识。GPT-3.5 一次交互(输入和输出)只支持最高 4096 个 Token。为了处理大量领域知识,OpenAI 提供了 embedding API 解决方案。embeddings 是一个浮点数字的向量(列表),两个向量之间的距离衡量它们的关联性,小距离表示高关联度。

Content generated by AI large model, please carefully verify (powered by aily)

References

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

所有人都会手把手教你部署XX大模型,听起来很诱人,因为不需要科学上网,不需要高昂的ChatGPT会员费用。但是在开启下面的教程之前,我希望你能有个概念:运行大模型需要很高的机器配置,个人玩家的大多数都负担不起所以:虽然你的本地可能可以搭建出一个知识库,但是它不一定能跑的起来下面我通过一组数据来让大家有个感性的认知。以下文字来源于视频号博主:黄益贺,非作者实操生成文字大模型最低配置:8G RAM + 4G VRAM建议配置:16G RAM + 8G VRAM理想配置:32G RAM + 24G VRAM(如果要跑GPT-3.5差不多性能的大模型)生成图片大模型(比如跑SD)最低配置:16G RAM + 4G VRAM建议配置:32G RAM + 12G VRAM生成音频大模型最低配置:8G VRAM +建议配置:24G VRAM而最低配置我就不建议了,真的非常慢,这个我已经用我自己8G的Mac电脑替你们试过了。讲这个不是泼大家冷水,而是因为我的文章目标是要做到通俗易懂,不希望通过夸大的方式来吸引你的眼球。这是这篇文章的第二次修改,我专门加的这段。原因就是因为好多小伙伴看了文章之后兴致冲冲的去实验,结果发现电脑根本带不动。但是这并不妨碍我们去手把手实操一遍,因为实操可以加深我们对大模型构建的知识库底层原理的了解。如果你想要私滑的体验知识库,可以参考我的另一篇文章:[胎教级教程:万字长文带你使用Coze打造企业级知识库](https://waytoagi.feishu.cn/wiki/CT3UwDM8OiVmOOkohPbcV3JCndb)好了,废话不多说,下面教程还是值得亲自上手搞一遍的,相信走完一遍流程后,你会对知识库有更深的理解。

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

因为利用大模型的能力搭建知识库本身就是一个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]文本加载器就是将用户提供的文本加载到内存中,便于进行后续的处理

从零开始,用GPT打造个人知识库

要搭建基于GPT API的定制化知识库,涉及到给GPT输入(投喂)定制化的知识。但GPT-3.5,也就是当前免费版的ChatGPT一次交互(输入和输出)只支持最高4096个Token,约等于3000个单词或2300个汉字。这点容量对于绝大多数领域知识根本不够。为了使用GPT的语言能力来处理大量的领域知识,OpenAI提供了embedding API解决方案。参考OpenAI embedding documents。[heading2]理解embeddings[content]embeddings(直译为嵌入)是一个浮点数字的向量(列表)。两个向量之间的距离衡量它们的关联性。小距离表示高关联度,大距离表示低关联度。进一步解释:向量(列表):向量是数学中表示大小和方向的一个量,通常用一串数字表示。在计算机科学和数据科学中,向量通常用列表(list)来表示。列表是一种数据结构,它包含一组有序的元素。例如,一个二维向量可以表示为[2,3],这意味着沿着两个轴的分量分别为2和3。在这里,"list"是一种编程术语,意味着一系列有序的数据。向量之间的距离:向量之间的距离是一种度量两个向量相似性的方法。有多种方式可以计算两个向量之间的距离,最常见的是欧几里得距离。欧几里得距离计算方法是将两个向量的对应元素相减,然后取平方和,再开平方。例如,向量A =[1,2]和向量B =[4,6]之间的欧几里得距离为sqrt((4-1)^2 +(6-2)^2)= 5。较小距离意味着高相关性,因为向量间相似度高。在OpenAI词嵌入中,靠近向量的词语在语义上相似。例如,“猫”和“狗”距离近,它们都是宠物,与“汽车”距离远,相关性低。文档上给了创建embeddings的示例上面的命令访问embeddings API接口,将input语句,转化成下面这一串浮点数字。

Others are asking
如何建立知识库
以下是建立知识库的详细步骤: 1. 选择“Manage Your Knowledge Base”,进入知识库管理页面。 2. 在页面左上角点击加号,添加新的知识库。 3. 给知识库起一个易于分辨的名字。 4. 点击添加文件,建议使用 Markdown 格式的文件。 5. 等待 Flowith 对文件进行抽取等处理。 6. 处理完毕后,可在知识库管理页面测试检索。 另外,还可以通过以下方式创建知识库并上传表格数据: 1. 在页面顶部进入知识库页面,单击创建知识库。 2. 在弹出的页面配置知识库名称、描述,单击确认(团队内知识库名称需唯一)。 3. 在单元页面,单击新增单元。 4. 在弹出的页面,选择表格格式,然后选择本地文件或 API 的方式完成数据上传。 在 Coze 中创建知识库: 1. 来到个人空间,找到知识库导航栏,点击创建知识库。 2. 选择知识库的格式(目前支持文档、表格、图片),填写相关信息。 3. 可选择本地文档、自定义的文档切割等。 4. 数据处理完成后,一个问答对会被切割成一个文档片。 关于使用知识库,可参考教程:
2025-04-08
知识库
以下是关于知识库的相关内容: 在 Coze 中配置知识库: 创建好知识库后,可在智能体中进行配置。在 Coze 主页的个人空间>项目开发中,打开需添加知识库的智能体,能选择配置“文本”、“表格”、“照片”三种知识库。以配置文本知识库为例,点击加号选择提前创建好的知识库进行添加。之后配置提示词让智能体自动使用知识库回答问题,可点击右上角“优化”自动优化提示词以获得更好结果,最后在“预览与调试”中测试智能体是否正常调用知识库。 智能体创建中的知识库: 本次创建知识库可使用手动清洗数据,手动清洗数据能提高数据准确性。如创建画小二课程的 FAQ 知识库,飞书在线文档中每个问题和答案以分割。对于本地 word 文件,要注意合理拆分内容以提高训练数据准确度,每个章节按固定方式人工标注和处理。创建完成后可点击发布,确保在 Bot 商店中能搜到。 知识库概述: 扣子提供了几种存储和记忆外部数据的方式,使 Bot 能精准回复用户。知识库是大量知识分片,通过语义匹配为模型补充知识,如车型数据中每个知识库分段保存一种车型基础数据。同时还介绍了数据库、AI 便签、单词本等相关内容。
2025-04-08
如何搜索知识库
以下是关于知识库搜索的相关信息: 知识库搜索网址:https://search.atomecho.cn/ Coze 中工作流配置知识库: 添加知识库:可同时添加多个知识库。 参数设置: 搜索策略:包括语义检索(像人类一样理解词与词、句与句之间的关系,适用于需要理解语义关联度和跨语言查询的场景)、全文检索(基于关键词进行,适用于特定名称、专有名词、术语、缩写词、ID 等场景)、混合检索(结合全文检索和语义检索的优势,并对结果进行综合排序召回相关内容片段)。 最大召回数量:选择从检索结果中返回给大模型使用的内容片段数量,数值越大,返回的越多。 最小匹配度:根据设置的匹配度选取要返回给大模型的内容片段,低于设定匹配度的内容不会被返回。 提示:最大召回数量和最小匹配度直接影响输出效果,需进行协调的多轮测试找出最优值。 认识大模型 Embedding 技术加实战中: Embedding 增强 GPT 的能力的过程包括搜索内部知识库检索相关文本、将检索到的文本内容部分发送给 GPT 大模型并向其提出问题。 具体操作步骤: 准备搜索数据(仅一次):搜集数据、切块、嵌入、存储(对于大型数据集的 Embedding 结果,可使用向量数据库保存)。 搜索(每次查询一次):给定用户问题,从 OpenAI API 生成查询的 embeddings,使用 embeddings 按照与查询相关性对文本部分进行排序,距离函数推荐使用余弦相似性。 提问(每次查询一次):将问题和最相关的部分插入到发送给 GPT 的消息中返回 GPT 的答案。 Embedding 的作用:搜索(结果按与查询字符串的相关性进行排名)、聚类(文本字符串按相似性分组)、建议(建议包含相关文本字符串的项目)、异常检测(识别出相关性很小的离群值)、多样性测量(分析相似性分布)、分类(文本字符串按其最相似的标签分类)。
2025-04-08
作为小白如何在飞书搭建AI工具知识库机器人?分成前期、中期、后期流程回答
以下是小白在飞书搭建 AI 工具知识库机器人的流程,分为前期、中期和后期: 前期: 1. 搭建,用于汇聚整合多种大模型接口,方便后续更换使用不同的大模型,并了解如何白嫖大模型接口。 2. 确定机器人的功能范围,例如: 支持用户发送“关键字”,自助获取分享的“AI 相关资料链接”。 能够回答 AI 相关知识,优先以“自己的知识库”内容回答,不足时调用 AI 大模型,并在答案末尾加上“更多 AI 相关信息,请链接作者:jinxia1859”。 能发布在微信公众号上,作为“微信客服助手”。 中期: 1. 搭建,这是一个知识库问答系统,将知识文件放入,并接入上面的大模型作为分析知识库的大脑,若不想接入微信,到此搭建完成即可,它也有问答界面。 2. 准备以下内容: 根据机器人的目的和核心能力编写 prompt 提示词。 整理“关键字”与“AI 相关资料链接”的对应关系,可以用 word、txt、excel 等方式。 创建自己的【知识库】用于回答 AI 相关知识。 创建【工作流】,控制 AI 按照要求处理信息。 准备好自己的微信公众号。 后期: 搭建,其中的 cow 插件能进行文件总结、MJ 绘画等。
2025-04-03
推荐知识库中用ai做学术的案例
以下是知识库中与用 AI 做学术相关的案例和信息: B 站 up 主的课程:每节 15 分钟,免费且内容好,涵盖 AI 艺术字等。 炼丹操作:16 号晚上中老师会带大家动手炼丹,炼丹需提前准备一些图,会让老师提前发布内容让大家准备。 高效 PB 及相关案例:高效 PB 投入力度大,有厉害的伙伴,案例在社区,有多种 battle 方式,会有菩萨老师专门介绍。 初学者入门推荐:推荐看 open AI 的官方 Cookbook,小琪姐做了中文精读翻译,也可查看 cloud 的相关内容。 经典必读文章:如介绍 GPT 运作原理、Transformer 模型、扩散模型等的文章,还包括软件 2.0 时代相关内容。 历史脉络类资料:整理了 open AI 的发展时间线和万字长文回顾等。 6 月 29 日更新:翻译完 a16z 推荐的 AI 典藏文章其中两篇:。
2025-04-01
如何利用AI打造专属知识库
利用 AI 打造专属知识库可以通过以下步骤: 1. 拆解创作任务:将复杂的任务拆解到合适的颗粒度,为 AI 提供方法论和明确的输出格式。例如,拆解创作“科幻预见未来”的步骤,确定关键任务节点和围绕其展开的主线任务。 2. 建立定向知识库: 私人知识库中的内容一般包括日常从互联网收集的优质信息以及个人日常的思考和分享。 可以将相关内容导入到特定工具(如 flowith 的知识花园)中作为 AI 可调用的知识库。 对于导入的内容,可打开智能拆分模式,让 AI 自动分析优化拆分逻辑,形成知识“种子”。 3. 工作流中配置知识库: 添加知识库:可同时添加多个知识库。 参数设置: 搜索策略:包括语义检索(适合理解语义关联度和跨语言查询场景)、全文检索(适合特定名称、专有名词等场景)、混合检索(结合前两者优势)。 最大召回数量:选择返回给大模型使用的内容片段数量,数值越大返回越多。 最小匹配度:根据设置选取要返回的内容片段,过滤低相关度结果。需多轮测试找出最优值。 此外,基于私人知识库打造个人专属的 ChatGPT 常见有两种技术方案: 1. 训练专有大模型:效果虽好,但成本高,更新难度大,并非当下主流方案。 2. 利用 RAG(检索增强生成)技术。
2025-03-31
本地部署大模型硬件配置
本地部署大模型的硬件配置如下: 生成文字大模型: 最低配置: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 需要注意的是,最低配置可能运行速度非常慢。对于 SDXL 大模型的本地部署,其分为两个部分,base + refiner 是必须下载的,还有一个配套的 VAE 模型用于调节图片效果和色彩。要在 webUI 中使用 SDXL 的大模型,需在秋叶启动器中将 webUI 的版本升级到 1.5 以上,然后将模型放入对应的文件夹中。对于通义千问的 Qwen2.5 1M 模型的本地部署,使用以下命令启动服务时要根据硬件配置进行设置,如设置 GPU 数量、最大输入序列长度、Chunked Prefill 的块大小、限制并发处理的序列数量等。如果遇到问题,可参考相关的 Troubleshooting 内容。与模型交互可以使用 Curl 或 Python 等方法,对于更高级的使用方式,可以探索如 Qwen Agent 之类的框架。
2025-03-31
如何部署本地大模型
以下是本地部署大模型的一般步骤: 1. 部署大语言模型: 下载并安装 Ollama:根据您的电脑系统,从 https://ollama.com/download 下载。下载完成后,双击打开,点击“Install”。安装完成后,将 http://127.0.0.1:11434/ 复制进浏览器中,若出现相关字样则表示安装完成。 下载 qwen2:0.5b 模型(若设备充足可下载更大模型): Windows 电脑:点击 win+R,输入 cmd 点击回车。 Mac 电脑:按下 Command(⌘)+Space 键打开 Spotlight 搜索,输入“Terminal”或“终端”,然后从搜索结果中选择“终端”应用程序。 复制相关命令行并粘贴回车,等待自动下载完成。 2. 部署 SDXL 大模型: SDXL 的大模型分为 base+refiner(必须下载)和配套的 VAE 模型。 关注公众号【白马与少年】,回复【SDXL】获取下载链接。 在秋叶启动器中将 webUI 的版本升级到 1.5 以上。 将模型放入对应的文件夹:base 和 refiner 放在“……\\sdwebuiakiv4.2\\models\\Stablediffusion”路径下;vae 放在“……\\sdwebuiakiv4.2\\models\\VAE”路径下。 3. ComfyUI ollama 本地大模型部署: 先下载 ollama 安装,安装完成后可在电脑桌面右下角或隐藏图标里找到。 下载对应的模型,选择模型并复制对应的命令。 打开命令行界面,输入对应的模型获取命令,等待下载完成。 设置目录,下载的模型会保存到 D:\\ollama\\blobs。 进行 docker 安装,安装会下载一些文件,安装后更改目录,不要放在 C 盘。 进行 Open webui 安装,输入相关命令,安装成功后回到 docker,点击会自动打开网页,第一次使用需注册账号,选择下载好的模型即可开始使用。 4. 错误解决:端口占用问题,在 Windows 上可能出现,运行下面两条命令可以解决。 5. 相关链接: comfyuiollama:https://github.com/stavsap/comfyuiollama?tab=readmeovfile Ollama:https://ollama.com/ docker:https://www.docker.com/ Open webui:https://openwebui.com/
2025-03-31
本地用Ollama部署模型,使用哪个ChatBox客户端好?
目前在本地使用 Ollama 部署模型时,没有特别突出或被广泛推荐的特定 ChatBox 客户端。不同的客户端可能在功能、界面和兼容性方面存在差异,您可以根据自己的需求和使用习惯进行选择和尝试。常见的一些客户端包括但不限于 Web 端的简单界面工具,或者一些具有特定功能扩展的桌面应用程序。但具体哪个最适合您,还需要您亲自测试和评估。
2025-03-27
AI本地化部署
AI 本地化部署主要包括以下内容: 目前市面上的 AI 有线上和线下本地部署两种方式。线上部署出图速度快,不吃本地显卡配置,无需下载大模型,但出图分辨率受限;线下部署可自己添加插件,出图质量高,但使用时电脑易宕机,配置不高可能爆显存导致出图失败。 线上和线下平台可结合使用,充分发挥各自优势。线上用于找参考、测试模型,线下作为主要出图工具。具体操作如在在线绘图网站的绘图广场上发现想要的画风,点击创作会自动匹配创作使用的模型、lora 和 tag,截取游戏人物底图将线上算力集中在人物身上,多批次、多数量尝试不同画风得出符合游戏的模型+lora 组合,最后在 C 站下载对应模型到本地加载部署即可生图。 此外,Mistral AI 推出的 Mistral Saba 模型可本地部署,适用于单 GPU,能保障数据隐私。
2025-03-27
部署
以下是关于不同场景下部署的相关信息: AutoDL 部署 One2345 部署条件:需要有英伟达 GPU 显卡,且运行内存大于 18G,建议使用 RTX3090 及以上显卡。需要有 Ubuntu 系统操作基础。 部署步骤: 挑选设备:在 AutoDL 上挑选符合需求的设备,如 RTX4090/24GB。 镜像选择:选择与原作者要求相同的环境版本,如 PyTorch 2.0.1 与 cuda_11.8。 控制台打开设备:关机后想开机,直接点击即可。 打开终端,部署环境+代码:代码在数据盘中操作,Conda activate 报错输入 conda init bash,然后重启终端。安装步骤原文见:https://github.com/One2345/One2345 。注意:Huggingface 需要代理。 【保姆级】Meta Llama 3 部署到电脑上(Ollama+Open WebUI) 下载 Open WebUI: Windows 电脑:点击 win+R,输入 cmd,点击回车。 Mac 电脑:按下 Command(⌘)+Space 键打开 Spotlight 搜索,输入“Terminal”或“终端”,然后从搜索结果中选择“终端”应用程序。 输入命令等待下载,完成后点击或复制地址进入浏览器:http://localhost:3000/auth/ ,进行注册登录,选择“llama3:8b”即可。 在 Amazon SageMaker 上部署 Llama 3 要将与 llama 交互,使用常见的 OpenAI 格式 messages。 注意:Llama 3 是一个有门槛的模型,请在提交表单前访问并接受许可条款和可接受的使用政策。创建 HuggingFaceModel 后,使用 deploy 方法将其部署到 Amazon SageMaker,使用 ml.p4d.24xlarge 实例类型部署模型,部署可能需要 1015 分钟。
2025-03-27
本地部署
SDXL 的本地部署步骤如下: 1. 模型下载:SDXL 的大模型分为两个部分,第一部分 base + refiner 是必须下载的,base 是基础模型用于文生图操作,refiner 是精炼模型用于细化图片生成细节更丰富的图片;还有一个配套的 VAE 模型用于调节图片的画面效果和色彩。您可以关注公众号【白马与少年】,回复【SDXL】获取下载链接。 2. 版本升级:在秋叶启动器中将 webUI 的版本升级到 1.5 以上。 3. 放置模型:将 base 和 refiner 放在“……\\sdwebuiakiv4.2\\models\\Stablediffusion”路径下,vae 放在“……\\sdwebuiakiv4.2\\models\\VAE”路径下。 4. 启动使用:启动 webUI,在模型中即可看到 SDXL 的模型。正常使用时,先在文生图中使用 base 模型填写提示词和常规参数生成图片,然后将图片发送到图生图中切换大模型为“refiner”重绘。对于不想在两个界面来回操作的情况,可以安装 refine 插件,在文生图界面直接使用 refine 模型。 另外,关于本地部署资讯问答机器人,实现 Langchain + Ollama + RSSHub 的 RAG 需: 1. 导入依赖库:加载所需的库和模块,如 feedparse 用于解析 RSS 订阅源,ollama 用于在 python 程序中跑大模型(使用前确保 ollama 服务已开启并下载好模型)。 2. 从订阅源获取内容:从指定的 RSS 订阅 url 提取内容,通过专门的文本拆分器将长文本拆分成较小的块,并附带相关元数据,最终合并成列表返回。 3. 为文档内容生成向量:使用文本向量模型 bgem3(https://huggingface.co/BAAI/bgem3),从 hf 下载好模型放置在指定路径,通过函数利用 FAISS 创建高效的向量存储。
2025-03-27