【AI大模型】搭建大模型知识库流程,以及基于langchain实现大模型知识库案例

基于 LLaMA 和 LangChain 实践本地 AI 知识库 本文讨论了人工智能领域的最新发展,主要围绕着基于 Transformer 和 MoE 架构的多模态模型 Gemini 1.5 Pro,以及 OpenAI 推出的支持从文字生成视频的模型 Sora。文章提到通用人工智能(AGI)的实现正在加速,指出 AI 应用落地的主要实践围绕大模型微调、提示词工程和知识增强展开。在介绍 LangChain 中的知识库构建过程中,涉及 Loader、Splitter、Embeddings 和 VectorStore 等步骤。此外,还讨论了 RAG 和 GPTs 在实践中的应用 阅读详情

前言

“ RAG检索增强生成是为了解决大模型知识不足的问题 ”

大模型主要面临三个问题:

  1. 垂直领域内的知识不足‍‍‍‍‍

  2. 大模型知识有时间限制‍

  3. 大模型幻觉问题

第一个问题产生的原因是因为,没有经过垂直领域数据训练的大模型普遍表现不好;其次是目前的大模型采用的是预训练模式,也就是说需要先收集训练数据进行训练,但只能收集之前的数据,不能收集当前和以后的数据;最后就是大模型幻觉问题,幻觉问题产生的原因就是知识不足,导致在一些领域问题中一本正经的胡说八道。‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍

因此,说到底大模型产生以上三个问题的主要原因就是知识不足,因此RAG——检索增强生成技术就出现了。‍‍‍‍‍‍‍‍‍‍‍

RAG技术配合知识库技术,就能够补充大模型知识不足的问题,知识库的作用就相当于给大模型配置一个资料室,遇到不懂的就去资料室里查。

今天,我们就来讨论一下本地知识库的实现步骤,以及代码。‍‍‍‍‍‍‍‍‍‍‍

知识库的实现步骤及代码‍‍‍‍‍‍‍‍‍

严格来说,解决大模型知识不足问题的技术是RAG——检索增强生成,而不是知识库技术。‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍

知识库技术在大模型之前就已经出现了,简单来说就是公司内部的文档系统,里面记录了企业内部的资料,文档等,形式可以是一个web系统,甚至就是一个文件夹。‍‍

而我们今天说的大模型知识库是基于RAG技术,结合知识库技术产生的一个变种,主要区别就是数据格式问题。

RAG文档检索生成,就是通过把资料向量化,并为了提升查询效率需要把向量化的文档存入到向量数据库,然后每次在问大模型之前,先去向量数据库中查询与问题相关的内容,通过提示词的方式一并传入到大模型中,这样就可以解决大模型知识不足的问题。

之所以要把资料向量化的原因是,在传统的查询搜索过程中,使用的主要是基于字符匹配的方式进行查询,比如说你想查询西红柿炒蛋的做法,查询的内容中就必须包含西红柿和炒蛋这几个字。‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍

而有了大模型技术,把资料向量化之后,就可以通过语义进行查询,大模型会根据语义分析,知道西红柿和番茄是一个东西。‍‍‍

大模型知识库的原理就是给大模型外挂一个资料库,但大模型毕竟不是人,需要把资料,文档等转化为大模型能够识别的格式,就是文档向量化。

搭建大模型知识库,需要经过以下几个步骤:

文档加载

在当今互联网时代,知识的形式多种多样,比如文本格式的就是txt,word,pdf等;还有其它格式如图片,结构化数据以及非结构化数据等。‍‍‍‍‍‍‍‍‍‍‍

因此,打造一个知识库需要支持多种文档,以及不同文档的加载路径,如本地加载,网络加载等;而这就是文档加载需要解决的问题。‍

文档分割

在大模型应用中,长文本处理是一个问题,并且大模型窗口都有上下文长度限制;并且,文档还需要处理成大模型能够识别的向量格式,因此对一些长文本文档需要进行文本分割,解决文档过长而导致的问题。‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍

文档分割根据不同的任务场景,需要进行不同的处理,比如文档分割的长度,分割形式(比如,段落,标点符号等),重叠长度等。‍‍‍‍‍

词嵌入

在传统的知识库系统中,文档是以文本,图片,视频等格式存在的,使用者主要是人,因此只需要能够通过网络加载文档即可。

但在大模型应用中,大模型不认识字,它能够处理的格式只有向量。而且,还需要进行语义分析,因此需要通过词嵌入的方式,把文档转化为大模型能够处理的,且语义连贯的形式,也就是向量格式,而这个技术就叫做词嵌入。‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍

词嵌入工具本质上也是一个大模型,只不过是专门训练用来完成语义理解和向量转化的模型。‍

Sentence-transformer 词嵌入python 库 可以支持多种嵌入模型 或者可以使用第三方提供的转化工具,比如openAI,通义千问等。

文档处理整体流程入下图所示:‍‍‍‍‍

‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍

文档存储

文档存储的功能就是需要把通过词嵌入转化的大模型能够识别的向量格式存储起来,一般使用的是向量数据库。‍‍‍‍

当大模型需要使用的时候,再通过检索的形式从向量数据库中获取。‍‍‍‍‍‍‍

文档存储的作用是为了解决查询效率的问题,但也并不是必须的;比如说,当你知识库的内容很少的时候,你也可以选择每次提问的时候,重新加载文档并向量化,这样之前向量化过的文档就存储在向量数据库中,下次使用的时候就可以直接从数据库中查询。‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍

就类似于在web开发中,你也可以把用户数据通过|或某种符合间隔起来并保存到txt文件中,每次查询的时候需要读取文件并解析数据,这样就会非常的麻烦;而如果把用户信息存储到数据库中,就会方便的多。‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍

文档检索

从向量数据库中,通过语义对数据进行检索,然后把检索结果带入到大模型中,供大模型使用。技术实现是通过数学计算,根据向量计算相对位置,位置越近语义相关度越高;比如欧式距离,cos值等。‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍

RAG的难点和重点是数据的质量和检索质量,也就是说本地知识库的好坏和使用的模型(用来回答问题的模型,不是词嵌入的模型)没有什么关系,只是和你检索的效果有关。‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍

简单来说就是,你的知识库数据质量和向量数据库的质量越好,RAG的效果才越好。‍‍‍‍‍‍

最后的最后

感谢你们的阅读和喜欢,作为一位在一线互联网行业奋斗多年的老兵,我深知在这个瞬息万变的技术领域中,持续学习和进步的重要性。

为了帮助更多热爱技术、渴望成长的朋友,我特别整理了一份涵盖大模型领域的宝贵资料集。

这些资料不仅是我多年积累的心血结晶,也是我在行业一线实战经验的总结。

这些学习资料不仅深入浅出,而且非常实用,让大家系统而高效地掌握AI大模型的各个知识点。如果你愿意花时间沉下心来学习,相信它们一定能为你提供实质性的帮助。

这份完整版的大模型 AI 学习资料已经上传优快云,朋友们如果需要可以微信扫描下方优快云官方认证二维码免费领取【保证100%免费】

大模型知识脑图

为了成为更好的 AI大模型 开发者,这里为大家提供了总的路线图。它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
在这里插入图片描述

经典书籍阅读

阅读AI大模型经典书籍可以帮助读者提高技术水平,开拓视野,掌握核心技术,提高解决问题的能力,同时也可以借鉴他人的经验。对于想要深入学习AI大模型开发的读者来说,阅读经典书籍是非常有必要的。

在这里插入图片描述

实战案例

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

在这里插入图片描述

面试资料

我们学习AI大模型必然是想找到高薪的工作,下面这些面试题都是总结当前最新、最热、最高频的面试题,并且每道题都有详细的答案,面试前刷完这套面试题资料,小小offer,不在话下

在这里插入图片描述

640套AI大模型报告合集

这套包含640份报告的合集,涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。

在这里插入图片描述

这份完整版的大模型 AI 学习资料已经上传优快云,朋友们如果需要可以微信扫描下方优快云官方认证二维码免费领取【保证100%免费】

深入浅出LangChain AI Agent智能体开发教程(九)—LangChain从0到1搭建知识库 本期分享我们通过Streamlit前端界面,结合LangChain框架retriever工具与DashScope向量模型服务、DeepSeek大模型服务,从0到1实现了轻量化的RAG知识库系统。 阅读详情

相关推荐

【langchain入门】使用​​langchain​​搭建自己的本地知识库系统

RAG是的缩写,翻译为中文的意思就检索增强,以基于最新,最准确的数据建立LLM的语料知识库。LLMLangChain是一个用于开发由语言模型驱动的应用程序的框架。具有上下文感知能力:将语言模型与上下文源(提示说明、少量镜头示例、基于其响应的内容等)联系起来。原因:依靠语言模型进行推理(关于如何根据提供的上下文回答,采取什么行动等)更多的介绍可以去官网:Introduction | 🦜️🔗 Langchain代码语言:javascriptimport os。

梅花寺 1050

基于本地知识库的大模型搭建教程

基于本地知识库大模型搭建教程

qq_45179513的博客 9863

用langchain+streamlit应用RAG实现个人知识库助手搭建

我搭建的是一个Prompt技术的AI学习助手(基于自己搭建的和Prompt技术有关的文章与书籍)。学习写Prompt需要一边写一边实践,否则就会“脑子说我会了,手说我废了”。平时看到好的Prompt,也会把它积累下来,也许哪天就能用上;在实践的时候,随着不断地修改,Prompt也会更新迭代;

fengjiandaxia的博客 2395

如何搭建基于大模型的智能知识库

基于RAG与LLM的知识库作为目前最有潜力的企业端大模型应用之一,从技术角度可以看到,建设方案已经完备;从业务角度,最终的应用效果和业务价值还需要观察,并通过业务侧的反馈不断地促进建设方案的进一步优化,比如增加对多模态知识的处理能力等。让我们共同期待这类应用普及那一天的到来。读者福利:如果大家对大模型感兴趣,这套大模型学习资料一定对你有用如果你是零基础小白,想快速入门大模型是可以考虑的。一方面是学习时间相对较短,学习内容更全面更集中。二方面是可以根据这些资料规划好学习计划和方向。

程序员鑫港的博客 2508

【LangChain-Chatchat】本地部署模型及搭建个人企业内部知识库

基于 ChatGLM 等大语言模型与 Langchain 等应用框架实现,开源、可离线部署的检索增强生成(RAG)大模型知识库项目。该项目支持开源 LLM 与 Embedding 模型,亦可实现全部使用开源模型离线私有部署。与此同时,也支持 OpenAI GPT API 的调用,当前最新版本为0.2.10。0.3x版本可以关注作者的项目地址。支持加载本地模型及联网模型如智谱AI、阿里云通义千问、百川、讯飞星火、百度千帆、字节火山方舟、ChatGPT、Gimini和Azure OpenAI。

二狗的博客 1925

基于开源大模型快速构建本地知识库应用

作为新一代人工智能产业的核心动力,AI大模型广泛应用于各行各业,打开了迈向通用人工智能的大门。本文通过大模型相关技术背景、构建需求、实现原理、模型选型及工程实践等方面介绍了如何基于开源大模型快速构建本地知识库应用。通过分析大模型应用的存在的问题,提出并详细描述了知识库构建思路及RAG技术路线应用的解决方法,最后,基于LangChain-Chatchat工程实现,为快速构建本地知识库应用提供了一种有效的解决方案。

fzq0625的博客 1641

搭建大模型知识库流程,以及基于langchain实现大模型知识库案例

RAG检索增强生成是为了解决大模型知识不足的问题大模型主要面临三个问题:垂直领域内的知识不足大模型知识有时间限制大模型幻觉问题第一个问题产生的原因是因为,没有经过垂直领域数据训练的大模型普遍表现不好;其次是目前的大模型采用的是预训练模式,也就是说需要先收集训练数据进行训练,但只能收集之前的数据,不能收集当前和以后的数据;最后就是大模型幻觉问题,幻觉问题产生的原因就是知识不足,导致在一些领域问题中一本正经的胡说八道。

python1222_的博客 1338

如何创建高质量的本地知识库增强大模型私域任务处理能力

受训练阶段和提问的表达方式等影响,大模型不能准确理解用户意图受训练数据和时效性影响,大模型无法回答领域知识,当我们需要了解除它们训练数据以外的具体知识时,往往会达不到要求对于第一个限制,开源基础模型的理解能力不断提升,例如已开源的qwen-72B刷榜各评测榜单,对使用者的提示能力要求进一步降低,且已有能力已满足多样性任务需求,适合直接部署使用。对于第二个限制,使用检索增强生成技术(RAG,Retrieval Augmented Generation)是目前一种经济可行的方案。

andy20160103的博客 5880

教你基于LangChain和ChatGLM3搭建本地知识库问答,实现大模型AI应用开发

现如今,大语言模型发展到达了一个新高度,其应用场景也是适用于千行百业。而华为云EI更是具备了全栈AI能力,其提供的ModelArts是一站式AI开发平台,可帮助开发者智能、高效地创建AI模型和一键模型部署到云、边、端。

2401_82469710的博客 1390

MicroPython 开发ESP32应用教程 之 WIFI配网 Web页面配网 softAP 配网 web页面控制WS2812灯珠

MicroPython 开发ESP32应用教程 之 WIFI配网 Web页面配网 softAP 配网 web页面控制WS2812灯珠

weald2000的专栏 2080

从零到一:鲲鹏920服务器上的DeepSeek模型部署全流程解析

本文详细解析了在华为鲲鹏920服务器上部署DeepSeek模型的全流程,包括环境准备、模型服务框架部署、性能优化及生产环境方案。通过ARM架构优化和量化技术,显著提升模型推理效率,适用于企业级AI应用场景,助力国产化技术落地。

weixin_29094775的博客 598
上一篇: Deepseek为什么选择蒸馏模型?一文彻底搞懂大模型蒸馏技术
下一篇: 人工智能、机器学习、深度学习、大模型傻傻分不清?
Agent学习路线
博客等级 码龄6年 1万+粉丝 1902原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值