微信扫码
添加专属顾问
我要投稿
随着AI热度愈发火热,越来越多的产品在AI的“赋能”下不断革新和进化。
AI技术的飞速发展不仅改变了人们的生活方式,也大大提升了各行各业的生产效率和创新能力。
在此背景下,我们不妨自己动手丰衣足食,搭建一套属于自己的本地的AI ChatBot?顺便学习下“高大上”的AI技术,亲身体验和把握这股“科技潮流”?
本篇,我们将通过全局的视角来看一下 “基于本地上传的文档进行QA问答” 类似的案例,需要学习哪些知识点以及会用到哪些技术栈。
目前,根据我所了解到的知识,市面上深层次的ChatBot主流实现框架基本都是大同小异。
本地大模型 + LangChain + 前端界面
结合RAG框架:上传本地文件 + 文件切片 + Embedding向量编码 + LLM大语言模型
首先,从本地加载文档(upload & loader),比如:pdf、txt、csv、md等
从许多不同来源加载文档,LangChain提供了100多种不同的文档加载器。
加载完成后,对文档进行处理,提取文档信息
提取完文档信息后,进行文本切分
为什么要切分文本?
因为有时候我们的文档内容比较多,比如一本书,这种情况下不可能一次性去处理,就需要将文本切成一块一块的,分块处理。
如何进行合理切分?
我们通常希望将主题相同的文本片段放在一块。例如,Markdown文件是由h1、h2、h3等多级标题组织的,我们可以根据Markdown标题分割文本内容,把标题相同的文本片段组织在一块。借助LangChain的MarkdownHeaderTextSplitter文本切割器实现。
文档切割后得到文本块
对切割完成后的文本块进行Embedding向量编号
Embedding这里我们会用到很多模型,比如可以调用OpenAI的接口(收费),还可以用HuggingFaceHub(免费)等。
将所有文本的编码全部存储到向量数据库中
例如:Faiss、Pinecone、Chroma、Milvus等。
提问,输入一个问题Embedding编码相似性计算,即用户的提问跟数据库里哪些文本的相关性最高文本召回,把达到某一个阈值的相关文本全部召回上下文的模板向大模型LLM提问答案这种实现方式有什么好处呢?
以上,完。
53AI,企业落地大模型首选服务商
产品:场景落地咨询+大模型应用平台+行业解决方案
承诺:免费POC验证,效果达标后再合作。零风险落地应用大模型,已交付160+中大型企业
2025-12-12
关于动态本体的一些新思考及多模态知识图谱构建思路VisKnow
2025-12-11
案例:Palantir AIP如何教Agent学会记忆
2025-12-10
为AI奠定知识根基:为什么每个项目都需要知识图谱
2025-12-09
在“最优复杂性”中寻找极简之道——解读Palantir 本体论的实战哲学
2025-12-08
本体论:从数据中发现意义
2025-12-05
构建本体驱动的下一代智能数字生态系统
2025-12-04
基于 Ontology 构建企业 Agent 根基:从理论到实践的技术路径 V2.0
2025-12-04
Palantir - 全球大数据与AI领域市值最高的公司-产品核心技术
2025-09-17
2025-10-30
2025-10-19
2025-09-20
2025-11-05
2025-10-21
2025-12-01
2025-10-13
2025-11-24
2025-09-29
2025-12-01
2025-07-29
2025-07-14
2025-06-14
2025-05-23
2025-05-23
2025-05-22
2025-05-20