A nonebot plugin for chatpdf
Project description
nonebot-plugin-chatpdf
介绍
- 本插件灵感来源于最近很火的chatpdf。
- 将需要分析的论文/阅读材料上传到群文件,或者分次发送给机器人,机器人可以对其进行存储分析,然后你可以向其提问有关文章内容、文章概要、对于文章的思考等问题
- 本插件参考了chatpdf-minimal-demo :chatpdf 的最小实现,和文章对话 和How to Code a Project like ChatPDF?
安装
-
手动安装
git clone https://github.com/Alpaca4610/nonebot_plugin_chatpdf.git
下载完成后在bot项目的pyproject.toml文件手动添加插件:
plugin_dirs = ["xxxxxx","xxxxxx",......,"下载完成的插件路径/nonebot-plugin-chatpdf"]
-
使用 pip
pip install nonebot-plugin-chatgpt-chatpdf
配置文件
在Bot根目录下的.env文件中追加如下内容:
OPENAI_API_KEY = key
可选内容:
OPENAI_HTTP_PROXY = "http://127.0.0.1:8001" # 设置代理解决OPENAI的网络问题
OPENAI_API_LIMIT = True # 降低生成embedding时向OpenAI发送请求的频率,提高embedding生成的成功率。默认开启,改为False关闭。免费版API建议开启。
使用方法
如果设置了nonebot全局触发前缀,需要在下面的命令前加上设置的前缀。
使用方式1:上传需要分析的txt文件到群文件中
- /file (使用该命令以上传文件的方式启动chatpdf文章分析功能)
- 在一分钟内,上传需要分析的txt文件到群文件中,机器人会对其进行分析并使用OpenAI的API生成embedding文件,分析完成后会返回成功信息
- /chat_pdf (文章分析完成后,使用该命令后面接需要提问的关于文章的问题,机器人会给出答案)
- /delete_all (删除所有缓存文件)
- /delete_my (删除用户在本群的缓存文件)
使用方式2:分次发送文本
- /start (使用该命令以分次发送文件的方式启动chatpdf文章分析功能)
- /add (启动之后,在该命令后面添加文章的内容,由于QQ的发送字数限制,可能需要将文章分成若干个可以发送的片段,然后依次使用该命令发送)
- /stop (文章添加完成之后,使用该命令告知机器人,机器人开始分析文章并使用OpenAI的API生成embedding文件)
- /chat_pdf (文章分析完成后,使用该命令后面接需要提问的关于文章的问题,机器人会给出答案)
- /delete_all (删除所有缓存文件)
- /delete_my (删除用户在本群的缓存文件)
注意事项
- 分析过程中会在机器人的data文件夹下产生embedding缓存文件,注意缓存占用
- 每次调用/start命令时,都会清除调用者以前的embedding缓存文件
- 插件加载时会删除所有用户的embedding缓存文件
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Close
Hashes for nonebot_plugin_chatpdf-0.2.2.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4a8abc486f0ef15b3b26115ad054ae71ec348c77c400907d3ff99219a611be28 |
|
MD5 | 3856712317f2adab5ccf12fb67d4cd26 |
|
BLAKE2b-256 | 62487a4d2e12bdefeca7134ecf23f8e00528df098a39082047605a4db8efea9a |
Close
Hashes for nonebot_plugin_chatpdf-0.2.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ea9100e34b20134b129eaa57297502b8fca717cf62f3284219382fd59afe56f1 |
|
MD5 | 433ffdb041742a37a99252bda5216cd1 |
|
BLAKE2b-256 | e8caa76b8b0a28fe89603526ef531ab82488cbaeb404c186e20caa34d2de34b0 |