使用AI技术搭建低成本私人知识库

 大语言模型发展日新月异,创业项目如雨后春笋一般,大部分普通人能想到的微创新项目,都有人在做了,甚至OPENAI等大语言模型公司做的更好。模型一升级,支持一堆新特性,很多创业项目又白做了。鉴于此,我判断私人知识库项目是大公司不愿意做或者没办法做到的。因为OPENAI等大语言模型是在公有云部署的,隐私很难保证。

搭建私人知识库的方案有很多,大部分基于langchain方案,网上介绍的文章很多,github上开源实现也很多。我在研究了quivr和embedchain两个项目后,感觉embedchain项目比较好玩,虽然没有web界面,但是可以进行实验。

关于embedchain的项目地址:https://github.com/embedchain/embedchain  。项目文档介绍:https://docs.embedchain.ai/quickstart

embed quickstart项目介绍文档有些粗糙,但是代码实现很强大,通过阅读源码发现,embedchain支持很多LLM模型,包括gtp4all、huggingface上的各类模型、claude、openai等。尤其是可以直接使用huggingface模型库上的各类模型,极大的方便进行实验研究。同时,这个项目支持对接的知识源形态比较多,比如网页、pdf、doc等文档都可以向量化。

  回到私人知识库的主题,搭建私人知识库的原理和步骤:

知识入库:

1、使用文本切片(chunk)工具将文档切成固定长度的文本,这一步可以有很多优化方案,比如两个切片有重叠部分,这样相关切片会被搜索出来,或者将文档转换成问答对,将问答对转换成向量。

 2、使用向量模型将切片后的文本转换成向量数据

 3、将向量数据和文本存储到向量数据库。

查询知识:

  4、使用自然语言编写查询句子,使用LLM优化问题,是问题描述更加丰富,使用向量模型将问题向量化。

   5、使用问题向量去向量数据库查询相关的文本切片条目

   6、将搜索到的文本切片条目对应的文本提取出来,作为prompt背景信息,连同原问题发给LLM模型

    7、LLM使用自然语言返回结果。

  在上面的方案中,向量数据库负责个性化知识存储和搜索知识,LLM负责将知识组织成易于理解的自然语言。如下图所示,流程图参考文章:https://mp.weixin.qq.com/s/VM2wFWkhp45VxJ6q3yFbvA

现在主流的知识库搭建,都是基于OPENAI的向量模型和LLM进行处理,都是收费的,而且还有API调用还有频率限制。那么对于私人用户来说,成本有点高,而且知识信息还会发送到OPENAI大模型,存在信息泄漏,国内网络还不通。笔者致力于降低私人知识库搭建成本,同时做到完全本地化,避免信息泄漏。那么将知识向量化的模型和进行自然语言理解和组织的模型,最好都适用开源模型,并且本地部署。

当前研究进展是,向量模型采用Huggingface开源模型intfloat/e5-base-v2,该模型支持中文,同时在huggingface向量模型排行榜排名比openai的embed模型还靠前,模型本身也比较小,占用资源少。但是用于自然语言理解的LLM仍然依赖于OPENAI模型,因为其他小模型测试效果并不好,稍微大一些的模型依赖于很贵的显卡,macair是跑不起来的。所以暂时做到这个程度,还是使用openai模型进行自然语言理解。后续再研究LLM本地化部署,或者先暂时使用国内LLM的接口。

以下实验代码在colab上已经跑通,在本地jupyter notebook验证时,被openai限频了,暂时未跑通。

!pip3 install --upgrade embedchain``   ``import os``from embedchain import CustomApp``from embedchain.config import CustomAppConfig``from embedchain.models import Providers, EmbeddingFunctions``from chromadb.utils import embedding_functions``os.environ["OPENAI_API_KEY"] = "替换成自己的key"``config = CustomAppConfig(embedding_fn=EmbeddingFunctions.HUGGING_FACE,embedding_fn_model='intfloat/e5-base-v2', provider=Providers.OPENAI)``app = CustomApp(config)``app.add("web_page", "https://mp.weixin.qq.com/s/GKCwpbY39dNdxhUYfmN6Ew")``app.query("思维链提示工程主要有哪几种")

提示:本地安装embedchain依赖包时,chroma-hnswlib包编译报错,原因是我的mac air是x86_64 架构cpu, 编译优化参数-march=native不支持,其实还是安装文件没考虑到我这种情况,从https://pypi.org/project/chroma-hnswlib/0.7.2/下载源码,并修改以后重新编译才通过。具体过程比较痛苦,后续单独写文章说明。

如何学习大模型 AGI ?

由于新岗位的生产效率,要优于被取代岗位的生产效率,所以实际上整个社会的生产效率是提升的。

但是具体到个人,只能说是:

“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。

这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。

我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。

我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

-END-


👉AGI大模型学习路线汇总👈

大模型学习路线图,整体分为7个大的阶段:(全套教程文末领取哈)

第一阶段: 从大模型系统设计入手,讲解大模型的主要方法;

第二阶段: 在通过大模型提示词工程从Prompts角度入手更好发挥模型的作用;

第三阶段: 大模型平台应用开发借助阿里云PAI平台构建电商领域虚拟试衣系统;

第四阶段: 大模型知识库应用开发以LangChain框架为例,构建物流行业咨询智能问答系统;

第五阶段: 大模型微调开发借助以大健康、新零售、新媒体领域构建适合当前领域大模型;

第六阶段: 以SD多模态大模型为主,搭建了文生图小程序案例;

第七阶段: 以大模型平台应用与开发为主,通过星火大模型,文心大模型等成熟大模型构建大模型行业应用。

👉AGI大模型实战案例👈

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

在这里插入图片描述

👉AGI大模型视频和PDF合集👈

观看零基础学习书籍和视频,看书籍和视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。
在这里插入图片描述
在这里插入图片描述

👉学会后的收获:👈

• 基于大模型全栈工程实现(前端、后端、产品经理、设计、数据分析等),通过这门课可获得不同能力;

• 能够利用大模型解决相关实际项目需求: 大数据时代,越来越多的企业和机构需要处理海量数据,利用大模型技术可以更好地处理这些数据,提高数据分析和决策的准确性。因此,掌握大模型应用开发技能,可以让程序员更好地应对实际项目需求;

• 基于大模型和企业数据AI应用开发,实现大模型理论、掌握GPU算力、硬件、LangChain开发框架和项目实战技能, 学会Fine-tuning垂直训练大模型(数据准备、数据蒸馏、大模型部署)一站式掌握;

• 能够完成时下热门大模型垂直领域模型训练能力,提高程序员的编码能力: 大模型应用开发需要掌握机器学习算法、深度学习框架等技术,这些技术的掌握可以提高程序员的编码能力和分析能力,让程序员更加熟练地编写高质量的代码。

👉获取方式:

😝有需要的小伙伴,可以保存图片到wx扫描二v码免费领取【保证100%免费】🆓

  • 10
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值