暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

轻松部署ChatGML2-6B支持的ChatPDF

alitrack 2023-07-18
2600

ChatGML2-6B系列文章


继成功在我的 MacBook Pro M2 MAX 上部署 ChatGLM2-6B后,再次成功部署开源ChatPDF[1]

这里特别注意下,如果想体验 ChatGLM2-6B 版本的 ChatPDF,请访问我的源码库,除非我的 PR 被 merge 后,可以访问官方的源码库。(已经merge)

ChatPDF是什么?

ChatPDF是一款工具,可以让用户像与人类交互一样与PDF文档进行交互 它通过分析PDF文件创建语义索引,然后将相关段落发送给文本生成AI,从而快速从大型PDF文件中提取信息,如手册、论文、法律合同、书籍和研究论文。

ChatPDF 流程图

ChatPDF

开源的ChatPDF为 ChatGLM/LLaMA 等多种 LLM 提供了一个好用的基于 PDF(不仅仅PDF,还支持Word文档,Markdown以及文本文件) 问答的图形界面。

ChatPDF WebUI

WebUI 模式

python webui.py

webui.py

从上面代码可以看到,ChatGLM2-6B 使用了 mps Device,但 text2vec.sentence_model 则使用的是 CPU device。

命令行模式

python chatpdf.py

chatpdf.py

安装部署

git clone https://github.com/alitrack/ChatPDF
cd ChatPDF
pip install -r requirements.txt

如果你的电脑是搭载了 Apple Silicon
(M1 或者 M2) 或者 AMD GPU
的 Mac, 你需要额外的准备工作,具体参考Arm 版 MacOS 部署 ChatGLM2-6B

  • 安装 Nightly 版本 PyTorch
pip3 install --pre torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/nightly/cpu

  • 下载模型到本地
brew install git-lfs
git lfs install
git clone https://huggingface.co/THUDM/chatglm2-6b

  • 运行的时候制定本地模型路径
# 命令行
python chatpdf.py /Users/m2max/py/chatglm2/chatglm2-6b/

# webui
CHATGLM2_6B=/Users/m2max/py/chatglm2/chatglm2-6b/ python webui.py

P.S.

在本文快写完的时候, 突然想到给 Similarity 也增加mps
的支持,并尝试了 PostgreSQL 15 英文手册(postgresql-15-A4.pdf[2]), 加载速度明显快了起来,

都支持mps了

Chat Postgres

参考资料

[1]

ChatPDF: https://github.com/alitrack/ChatPDF

[2]

postgresql-15-A4.pdf: https://www.postgresql.org/files/documentation/pdf/15/postgresql-15-A4.pdf


文章转载自alitrack,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论