










之前使用了多个基于向量库+chatGPT本地知识库产品,大概分析和比较了一下:

使用目前云服务产品的主要的缺陷主要是数据存储在云端,存在一些安全上的问题,思考如何部署本地的AI知识库,目前的选择有两个:
项目地址:https://github.com/imClumsyPanda/langchain-ChatGLM/tree/master
基本原理:加载文件 -> 读取文本 -> 文本分割 -> 文本向量化 -> 问句向量化 -> 在文本向量中匹配出与问句向量最相似的top k个 -> 匹配出的文本作为上下文和问题一起添加到prompt中 -> 提交给LLM生成回答。
mac电脑内存>16G可考虑使用mac部署,不然会爆内存或者加载缓慢;请考虑云主机或者自己的电脑主机;本人尝试了16G M1 结果爆内存了

云主机主要是选择云服务厂商的机器,租用显卡进行部署,autoDL是其中口碑不错
安装参考:based ChatGLM with langchain | 基于本地知识的 ChatGLM 问答
注册autoDL选择个>16G GPU的进行部署,部署完基本可以直接用

先使用chatGLM本身的知识进行回答,检查下基本的逻辑推理,从结果上看基本能回答个二三

选择知识库问答,尝试用一些业务文档或以及之前写的知识库喂一下,上传文档到知识库

能够回答上传文件中的一些知识并给予出处

有一定推理总结能力

对于不知道的会回答不知道不会瞎编

有一些信息无法从文档中提取,比如代客下单里面提到支持搜索的商品

如果问代客下单支持哪些商品却回答没有理解,不知道原因是啥,可能是给的文本不明确,可能需要再研究一下

使用本地部署大模型+知识库的方式对机器要求过高,而且目前开源大模型效果并未达到chatGPT水平,综合价格和功能性考虑,考虑使用dify的本地部署版本。
部署方式见:docs.dify.ai
需要注意的点:
docker-compose.yaml,api和worker下都要配置,后续的openai的key都需要使用api2d的keycd dify/docker
docker compose up -d
然后访问配置的nginx地址,查看页面是否有报错,如果有,通过docker attach到容器观察错误原因

大部分是配置错误,修改后将对应组件重新build
docker compose up -d --force-recreate --build xxx
然后再观察服务是否正常,上传文档后提问回答是否正确

对一知识库提问,返回的数据不准确的问题,可能的建议见https://github.com/GanymedeNil/document.ai
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。