科研工作专用ChatGPT拓展,特别优化学术Paper润色体验,支持自定义快捷按钮,支持markdown表格显示,Tex公式双显示,代码显示功能完善,新增本地Python工程剖析功能/自我剖析功能。
binary-husky 88ae16150b Update README.md | 9 months ago | |
---|---|---|
.github | 9 months ago | |
crazy_functions | 9 months ago | |
docs | 9 months ago | |
request_llms | 9 months ago | |
tests | 9 months ago | |
themes | 9 months ago | |
.gitattributes | 1 year ago | |
.gitignore | 9 months ago | |
Dockerfile | 1 year ago | |
LICENSE | 1 year ago | |
README.md | 9 months ago | |
check_proxy.py | 10 months ago | |
colorful.py | 1 year ago | |
config.py | 9 months ago | |
core_functional.py | 1 year ago | |
crazy_functional.py | 10 months ago | |
docker-compose.yml | 9 months ago | |
main.py | 9 months ago | |
multi_language.py | 10 months ago | |
requirements.txt | 10 months ago | |
toolbox.py | 9 months ago | |
version | 9 months ago |
Caution
2023.11.12: 某些依赖包尚不兼容python 3.12,推荐python 3.11。
2023.12.26: 安装依赖时,请选择
requirements.txt
中指定的版本。 安装命令:pip install -r requirements.txt
。本项目完全开源免费,您可通过订阅在线服务的方式鼓励本项目的发展。
1d7fcddd
-815d-40ee-af60-baf488a199
.png),支持公式、代码高亮
⭐AutoGen多智能体插件 | [插件] 借助微软AutoGen,探索多Agent的智能涌现可能!
启动暗色[主题](https://github.com/binary-husky/gpt_academic/issues/173) | 在浏览器url后面添加```/?__theme=dark```可以切换dark主题
[多LLM模型](https://www.bilibili.com/video/BV1wT411p7yf)支持 | 同时被GPT3.5、GPT4、[清华ChatGLM2](https://github.com/THUDM/ChatGLM2-6B)、[复旦MOSS](https://github.com/OpenLMLab/MOSS)伺候的感觉一定会很不错吧?
⭐ChatGLM2微调模型 | 支持加载ChatGLM2微调模型,提供ChatGLM2微调辅助插件
更多LLM模型接入,支持[huggingface部署](https://huggingface.co/spaces/qingxu98/gpt-academic) | 加入Newbing接口(新必应),引入清华[Jittorllms](https://github.com/Jittor/JittorLLMs)支持[LLaMA](https://github.com/facebookresearch/llama)和[盘古α](https://openi.org.cn/pangu/)
⭐[void-terminal](https://github.com/binary-husky/void-terminal) pip包 | 脱离GUI,在Python中直接调用本项目的所有函数插件(开发中)
⭐虚空终端插件 | [插件] 能够使用自然语言直接调度本项目其他插件
更多新功能展示 (图像生成等) …… | 见本文档结尾处 ……
新界面(修改config.py
中的LAYOUT选项即可实现“左右布局”和“上下布局”的切换)
所有按钮都通过读取functional.py动态生成,可随意加自定义功能,解放剪贴板
润色/纠错
如果输出包含公式,会以tex形式和渲染形式同时显示,方便复制和阅读
懒得看项目代码?直接把整个工程炫ChatGPT嘴里
多种大语言模型混合调用(ChatGLM + OpenAI-GPT3.5 + GPT4)
下载项目
git clone --depth=1 https://github.com/binary-husky/gpt_academic.git
cd gpt_academic
在config.py
中,配置API KEY等变量。特殊网络环境设置方法、Wiki-项目配置说明。
「 程序会优先检查是否存在名为config_private.py
的私密配置文件,并用其中的配置覆盖config.py
的同名配置。如您能理解以上读取逻辑,我们强烈建议您在config.py
同路径下创建一个名为config_private.py
的新配置文件,并使用config_private.py
配置项目,以确保更新或其他用户无法轻易查看您的私有配置 」。
「 支持通过环境变量
配置项目,环境变量的书写格式参考docker-compose.yml
文件或者我们的Wiki页面。配置读取优先级: 环境变量
> config_private.py
> config.py
」。
安装依赖 ```sh
python -m pip install -r requirements.txt
conda create -n gptac_venv python=3.11 # 创建anaconda环境 conda activate gptac_venv # 激活anaconda环境 python -m pip install -r requirements.txt # 这个步骤和pip安装一样的步骤 ```
【可选步骤】如果需要支持清华ChatGLM2/复旦MOSS作为后端,需要额外安装更多依赖(前提条件:熟悉Python + 用过Pytorch + 电脑配置够强):如果需要支持清华ChatGLM2/复旦MOSS/RWKV作为后端,请点击展开此处
# 【可选步骤I】支持清华ChatGLM2。清华ChatGLM备注:如果遇到"Call ChatGLM fail 不能正常加载ChatGLM的参数" 错误,参考如下: 1:以上默认安装的为torch+cpu版,使用cuda需要卸载torch重新安装torch+cuda; 2:如因本机配置不够无法加载模型,可以修改request_llm/bridge_chatglm.py中的模型精度, 将 AutoTokenizer.from_pretrained("THUDM/chatglm-6b", trust_remote_code=True) 都修改为 AutoTokenizer.from_pretrained("THUDM/chatglm-6b-int4", trust_remote_code=True)
python -m pip install -r request_llms/requirements_chatglm.txt
# 【可选步骤II】支持复旦MOSS
python -m pip install -r request_llms/requirements_moss.txt
git clone --depth=1 https://github.com/OpenLMLab/MOSS.git request_llms/moss # 注意执行此行代码时,必须处于项目根路径
# 【可选步骤III】支持RWKV Runner
参考wiki:https://github.com/binary-husky/gpt_academic/wiki/%E9%80%82%E9%85%8DRWKV-Runner
# 【可选步骤IV】确保config.py配置文件的AVAIL_LLM_MODELS包含了期望的模型,目前支持的全部模型如下(jittorllms系列目前仅支持docker方案):
AVAIL_LLM_MODELS = ["gpt-3.5-turbo", "api2d-gpt-3.5-turbo", "gpt-4", "api2d-gpt-4", "chatglm", "moss"] # + ["jittorllms_rwkv", "jittorllms_pangualpha", "jittorllms_llama"]
# 【可选步骤V】支持本地模型INT8,INT4量化(这里所指的模型本身不是量化版本,目前deepseek-coder支持,后面测试后会加入更多模型量化选择)
pip install bitsandbyte
# windows用户安装bitsandbytes需要使用下面bitsandbytes-windows-webui
python -m pip install bitsandbytes --prefer-binary --extra-index-url=https://jllllll.github.io/bitsandbytes-windows-webui
pip install -U git+https://github.com/huggingface/transformers.git
pip install -U git+https://github.com/huggingface/accelerate.git
pip install peft
运行
python main.py
# 修改docker-compose.yml,保留方案0并删除其他方案。然后运行:
docker-compose up
仅ChatGPT+文心一言+spark等在线模型(推荐大多数人选择)
# 修改docker-compose.yml,保留方案1并删除其他方案。然后运行:
docker-compose up
P.S. 如果需要依赖Latex的插件功能,请见Wiki。另外,您也可以直接使用方案4或者方案0获取Latex功能。
# 修改docker-compose.yml,保留方案2并删除其他方案。然后运行:
docker-compose up
Windows一键运行脚本。 完全不熟悉python环境的Windows用户可以下载Release中发布的一键运行脚本安装无本地模型的版本。脚本贡献来源:oobabooga。
使用第三方API、Azure等、文心一言、星火等,见Wiki页面
云服务器远程部署避坑指南。 请访问云服务器远程部署wiki
在其他平台部署&二级网址部署
http://localhost/subpath
)下运行。请访问FastAPI运行说明任意文本编辑器打开core_functional.py
,添加如下条目,然后重启程序。(如果按钮已存在,那么可以直接修改(前缀、后缀都已支持热修改),无需重启程序即可生效。)
例如
"超级英译中": {
# 前缀,会被加在你的输入之前。例如,用来描述你的要求,例如翻译、解释代码、润色等等
"Prefix": "请翻译把下面一段内容成中文,然后用一个markdown表格逐一解释文中出现的专有名词:\n\n",
# 后缀,会被加在你的输入之后。例如,配合前缀可以把你的输入内容用引号圈起来。
"Suffix": "",
},
编写强大的函数插件来执行任何你想得到的和想不到的任务。 本项目的插件编写、调试难度很低,只要您具备一定的python基础知识,就可以仿照我们提供的模板实现自己的插件功能。 详情请参考函数插件指南。
对话保存功能。在函数插件区调用 保存当前的对话
即可将当前对话保存为可读+可复原的html文件,
另外在函数插件区(下拉菜单)调用 载入对话历史存档
,即可还原之前的会话。
Tip:不指定文件直接点击 载入对话历史存档
可以查看历史html存档缓存。
⭐Latex/Arxiv论文翻译功能⭐
虚空终端(从自然语言输入中,理解用户意图+自动调用其他插件)
模块化功能设计,简单的接口却能支持强大的功能
译解其他开源项目
装饰live2d的小功能(默认关闭,需要修改config.py
)
OpenAI图像生成
基于mermaid的流图、脑图绘制
Latex全文校对纠错
语言、主题切换
GPT Academic开发者QQ群:610599535
requirement.txt
安装Gradio可以通过修改THEME
选项(config.py)变更主题
Chuanhu-Small-and-Beautiful
网址代码中参考了很多其他优秀项目中的设计,顺序不分先后:
# 清华ChatGLM2-6B:
https://github.com/THUDM/ChatGLM2-6B
# 清华JittorLLMs:
https://github.com/Jittor/JittorLLMs
# ChatPaper:
https://github.com/kaixindelele/ChatPaper
# Edge-GPT:
https://github.com/acheong08/EdgeGPT
# ChuanhuChatGPT:
https://github.com/GaiZhenbiao/ChuanhuChatGPT
# Oobabooga one-click installer:
https://github.com/oobabooga/one-click-installers
# More:
https://github.com/gradio-app/gradio
https://github.com/fghrsh/live2d_demo