Wichtig
2024.10.10: Operation, Notfallwiederherstellung des Dateiservers, das das WHL -Paket bereitstellt
2024.10.8: Version 3 ..
2024.5.1: Fügen Sie die Funktion des Doc2x -Übersetzungspapiers hinzu, Details anzeigen
2024.3.11: Unterstützen Sie chinesische Großsprachenmodelle wie Qwen, GLM, Deepseekcoder! Sovits Voice Cloning -Modul, Details anzeigen 2024.1.17: Wählen Sie bei der Installation von Abhängigkeiten die in requirements.txt
angegebene Version . Installationsbefehl: pip install -r requirements.txt
. Dieses Projekt ist vollständig Open Source und kostenlos.
Wenn Sie dieses Projekt mögen, geben Sie ihm bitte einen Stern an.
Wenn multi_language.py
dieses Projekt mögen, lesen Sie es in Englisch.
Notiz
1. Die Funktion jeder Datei in diesem Projekt ist Self -Translations -Bericht self_analysis.md
. Mit der Iteration der Version können Sie auch jederzeit auf den relevanten Funktionsstecker klicken, um den Bericht der GPT -Generierung aufzurufen. Für gemeinsame Fragen finden Sie wiki.
2. Dieses Projekt ist mit dem Versuch mit großen chinesischen Sprachbasismodellen wie Tongyi Qianqian, Wisdom Spectrum GLM usw. kompatibel und fördert sie. Unterstützung mehrerer Api-Key-Koexistenz. Sie können in der Konfigurationsdatei wie API_KEY="openai-key1,openai-key2,azure-key3,api2d-key4"
eingeben. Wenn Sie API_KEY
vorübergehend ersetzen müssen, geben Sie den temporären API_KEY
in den Eingabebereich ein und senden Sie ihn dann an die Fahrt, um wirksam zu werden.
Funktion (= Neue neue Funktionen) | beschreiben |
---|---|
Neues Modell | Baidu Qianfan und Wenxin sagten: |
Unterstützen Sie das Rendering der Meerjungfrau -Bild | Unterstützung, damit GPT Flussdiagramme, Statusübertragungsdiagramme, Gand -Karten, Kuchen, Gitgraph usw. generieren kann (Version 3.7) |
ARXIV These Fine Translation (Docker) | [Plug -in] Eine Klick -Übersetzung der Arxiv -These mit einem -Klick, dem derzeit besten Papierübersetzungsinstrument |
Real -Time Voice Dialogeingabe | [Stecker -in] Asynchronous Hör -Audio, automatische Satztrennung, finden Sie automatisch die Zeit für die Beantwortung |
Autogen Multi -Smart -Plugin | [Stecker -in] Erforschen Sie mit Hilfe von Microsoft Autogen die Möglichkeit der intelligenten Entstehung des Duo -Agenten! |
Hohlraum -Terminal -Plugin | [Stecker -in] kann direkt einen anderen Stecker in diesem Projekt in natürlicher Sprache planen |
Interpretation von Farbe, Übersetzung, Code Erklärung | Ein -Klick -Feuchtigkeitsmittel, Übersetzung, Finden von Papieren Grammatikfehlern, Interpretationscode |
Benutzerdefinierte Verknüpfungsschlüssel | Unterstützen Sie benutzerdefinierte Verknüpfungsschlüssel |
Modulares Design | Unterstützen |
Programmanalyse | [Plug -in] Eine -klick -Analyse von Python/C/C ++/Java/Lua/... Projektbaum oder Selbstanalyse |
Lesen Sie das Papier, übersetzen Sie die These | [Plug -in] Eine Klick -Interpretation von Latex/PDF -Papier Volltext und Abstracts erzeugen |
Latex Voll -Text -Übersetzung, feuchtigkeitsspendende Übersetzung | [Stecker -in] Ein -Klick -Übersetzung oder feuchtigkeitsspendendes Latexpapier |
Batch -Annotation | [Stecker -in] Ein -Klick -Stapel -Batch -Annotation für Funktionsanträge |
Markdown chinesische und britische gegenseitige Übersetzungen | [Stecker -in] Sehen Sie die Lesen der 5 -Sprache? Es ist von seiner Handschrift |
PDF -Papier Volltextübersetzungsfunktion | [Plug -in] PDF -Papier extrahieren Fragen & Zusammenfassung+Übersetzung Volltext (Multi -Thread) |
Arxiv Assistent | [Stecker -in] Geben Sie die ARXIV -Artikel -URL zu einer Übersetzungszusammenfassung der ARXIV ein |
Latexpapiere Ein -Klick -Schulpaar | [Stecker -in] Imitation von Grammatik zu Syntax, Zauberkorrektur+Ausgangskontrolle PDF auf Latexartikeln |
Assistent der akademischen Integration von Google | [Plug -in] Angesichts der URL der akademischen Suchseite von Ren Italien helfen GPT Ihnen, verwandte Arbeiten zu schreiben |
Internetinformation Aggregation+GPT | [Stecker -in] Ein -Klick, damit GPT Informationen aus dem Internet erhalten und Fragen beantworten kann, damit die Informationen niemals veraltet sind |
Formel/Bild-/Formanzeige | Sie können die Formel und Rendering -Form der Formel gleichzeitig anzeigen und die Formel- und Code -Highlight unterstützen |
Starten Sie das dunkle Thema | Hinzufügen /?__theme=dark |
Multi -LLM -Modellunterstützung | Gleichzeitig muss das Gefühl, von GPT3.5, GPT4, Tsinghua Chatglm2 zu serviert, Fudan Moss sehr gut sein? |
Weitere LLM -Modellzugriffszugriff, unterstützen Sie die Bereitstellung von Suggingface | Schließen Sie sich der Neuling -Schnittstelle (neuer Muss) an, stellen Sie Tsinghua Jittorllms vor, um Lama und Pangu α zu unterstützen |
Void-terminale PIP-Paket | Wenn Sie die GUI verlassen, rufen Sie direkt den gesamten Funktionsstecker des Elements in Python an (in der Entwicklung). |
Weitere neue Funktionsanzeige (Bildgenerierung usw.) ... | Siehe das Ende dieses Artikels ... |
config.py
um "links -Right -Layout" und "oberes und unteres Layout" zu erreichen. Flussdiagramm TD
A {"Installationsmethode"} -> W1 ("i.? Direkt ausführen (Windows, Linux oder MacOS)")))
W1-> W11 ["1. Python PIP-Paketverwaltung Abhängigkeit"]
W1-> W12 ["2. Anaconda Paket-Management-Abhängigkeiten (Empfehlung)"]]]]
A -> w2 ["ii.? Verwenden Sie Docker (Windows, Linux oder MacOS)]]]]]]
W2-> K1 ["1. Large Mirror Image Bereitstellung aller Funktionen (Empfehlung)"]]]
W2-> K2 ["2. Nur Online-Modell (GPT, GLM4 usw.) Spiegel"]
W2-> K3 ["3. Online-Modell+ Latex großer Spiegel"]
A -> W4 ["IV. Andere Bereitstellungsmethoden"]]]
W4-> C1 ["1. Windows/MacOS One -Click -Installation und Ausführen von Skript (Empfehlung)"]
W4-> C2 ["2. Huggingface, Remote-Bereitstellung von Sealos"]]]]
W4-> C4 ["3. ... andere ..."]]
Projekt herunterladen
git clone --depth=1 https://github.com/binary-husky/gpt_academic.git
cd gpt_academic
Konfigurieren Sie API_Key und andere Variablen
Konfigurieren Sie in config.py
Variablen wie den API -Schlüssel. Spezielle Methode für die Einstellung der Netzwerkumgebung, Wiki-Project-Konfigurationsbeschreibung.
"Das Programm gibt Priorität bei der Überprüfung, ob eine private Konfigurationsdatei namens config_private.py
vorhanden ist, und konfigurieren Sie denselben Namen mit der Konfiguration von config.py
. Wenn Sie die obige Leselogik verstehen können, empfehlen wir dringend, dass Sie unter dem erstellt werden config_private.py
config_private.py
Pfad von config.py
Pfad.
"Unterstützen Sie das Konfigurationselement环境变量
und finden Sie in der Datei docker-compose.yml
oder auf unserer Wiki-Seite des Schreibformates der Umgebungsvariablen. Konfigurationslesung Priorität:环境变量
> config_private.py
> config.py
".
Installationsabhängigkeit
# (选择I: 如熟悉python, python推荐版本 3.9 ~ 3.11)备注:使用官方pip源或者阿里pip源, 临时换源方法:python -m pip install -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple/
python -m pip install -r requirements.txt
# (选择II: 使用Anaconda)步骤也是类似的 (https://www.bilibili.com/video/BV1rc411W7Dr):
conda create -n gptac_venv python=3.11 # 创建anaconda环境
conda activate gptac_venv # 激活anaconda环境
python -m pip install -r requirements.txt # 这个步骤和pip安装一样的步骤
[Optionale Schritte] Wenn Sie Tsinghua Chatglm3/Fudan Moss als Back -End unterstützen müssen, müssen Sie weitere Abhängigkeiten installieren (Voraussetzung: Kenntnis von Python + Pytorch + Computerkonfiguration):
# 【可选步骤I】支持清华ChatGLM3。清华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
Alle Funktionen für die Bereitstellung von Projekten (dies ist ein großer Spiegel, der CUDA und Latex enthält. Wenn Sie jedoch eine langsame Netzwerkgeschwindigkeit und eine kleine Festplatte haben, wird diese Methode nicht empfohlen, um ein vollständiges Element bereitzustellen).
# 修改docker-compose.yml,保留方案0并删除其他方案。然后运行:
docker-compose up
Nur Chatgpt + GLM4 + Wenxin sagte + Spark und andere Online -Modelle (empfohlen von den meisten Menschen)
# 修改docker-compose.yml,保留方案1并删除其他方案。然后运行:
docker-compose up
Wenn PS sich auf die Funktion von Latex Plug -Stecker verlassen muss, siehe Wiki. Darüber hinaus können Sie Schema 4 oder Schema 0 direkt verwenden, um die Latex -Funktion zu erhalten.
CHATGPT + GLM3 + MOSS + LLAMA2 + TONGYI QIANWEN (muss beim Laufen mit Nvidia Docker vertraut sein)
# 修改docker-compose.yml,保留方案2并删除其他方案。然后运行:
docker-compose up
Windows One -Klick -Laufzeitskript . Windows -Benutzer, die mit der Python -Umgebung völlig nicht vertraut sind, können das in der Release veröffentlichte eingestellte Skript herunterladen, um eine Version ohne lokale Modelle zu installieren. Quelle des Skriptbeitrags: Oobabooga.
Verwenden
Cloud -Server bereiteten die Richtlinien für die Vermeidung von Grube aus der Ferne ein. Bitte besuchen Sie das Cloud Server Remote -Bereitstellungs -Wiki
Bereitstellung auf anderen Plattformen und Sekundär -URL -Bereitstellung
http://localhost/subpath
). Bitte besuchen Sie die Fastapi -Operation -Anweisungen Jetzt können Sie im自定义菜单
界面外观
in der Benutzeroberfläche eine neue praktische Schaltfläche hinzufügen. Wenn Sie es im Code definieren müssen, verwenden Sie einen beliebigen Texteditor, um core_functional.py
zu öffnen. Fügen Sie die folgenden Einträge hinzu:
"超级英译中" : {
# 前缀,会被加在你的输入之前。例如,用来描述你的要求,例如翻译、解释代码、润色等等
"Prefix" : "请翻译把下面一段内容成中文,然后用一个markdown表格逐一解释文中出现的专有名词: n n " ,
# 后缀,会被加在你的输入之后。例如,配合前缀可以把你的输入内容用引号圈起来。
"Suffix" : "" ,
},
Schreiben Sie einen leistungsstarken Funktionsstecker, um alle gewünschten Aufgaben und unerwartet auszuführen. Der Stecker und Debuggen dieses Projekts ist sehr niedrig. Weitere Informationen finden Sie in der Function Plug -In -Anleitung.
保存当前的对话
载入对话历史存档
um den aktuellen Dialog als lesbare+wiederherstellbare HTML -Dateien zu speichern.载入对话历史存档
zur Wiederherstellung der vorherigen Sitzung. Tipp: Wenn Sie die Datei nicht angeben, klicken Sie载入对话历史存档
um den historischen HTML -Archiv -Cache anzuzeigen. config.py
ändern) GPT Academic Developer QQ Group: 610599535
requirement.txt
, Gradio zu installieren Timeline LR
Titel GPT-Academic-Projektentwicklungsprozess Abschnitt 2.x
1.0 ~ 2.2: Grundfunktion: Einführen modularer Funktionsplug -in: Faltbares Layout: Funktionsstecker -in unterstützt thermische Last 2.3 ~ 2.5: Verbesserung der Multi -Thread -Interaktion: Neue PDF -Funktion Übersetzungsfunktion: Neue Eingabebereich Switching Position: Aktualisiert 2.6: Rekonstruktion der Stecker -In -Struktur: Verbesserung der Wechselwirkung: Fügen Sie mehr Stecker -In -Abschnitt 3.x hinzu
3.0 ~ 3.1: Unterstützung für Chatglm: Unterstützung anderer kleiner LLM: Unterstützen Sie gleichzeitig mehrere GPT -Modelle: Unterstützen Sie mehrere Apikey -Lastausgleichs. Fragen Sie gleichzeitig jede LLM -Kombination: Internetinformationen umfassende Funktion 3.4: Jucken Sie sich der Arxiv -These -Übersetzung an: Fügen Sie Latex Thesis Korrekturfunktion hinzu. Unterstützung Alida Mo Yuan Tongyi Qian Qian: Shanghai AI-Lab Scholar: Xun Fei Xinghuo: Support Baidu Qianfan Platform & Wenxin A Word 3.50: void Terminal: Support-Plug-in-Klassifizierung: Entwerfen Sie die Benutzeroberfläche: Entwerfen neuer Thema 3.53: Dynamic Select verschiedene Schnittstellen-Themen-Themes-Themes-Themes-Themes-Themes-Themen. : Verbesserungsstabilität: Lösen Sie das Problem des Multi -User -Konflikts 3.55: Dynamischer Code -Interpreter: Rekonstruktion der Front -End -Schnittstelle: Einführung von suspendierten Fenstern und Menüleiste 3.56: Dynamic zusätzliche Basisfunktionsknopf: Neues Bericht PDF -Zusammenfassung Seite 3.57: GLM3, Star Fire V3: Unterstützung Wenxinyi Speak V4: Beheben Sie den gleichzeitigen Fehler des lokalen Modells
3.60: Einführung in Autogen
3.70: Einführung in der Mermaid -Zeichnung: Implementierung von Funktionen wie GPT -Gehirnzeichnung 3.80 (TODO): Optimiertes Autogen -Stecker -in -Thema: Design derivativen Stecker -in -In
Sie können Themen ändern, indem Sie das THEME
ändern
Chuanhu-Small-and-Beautiful
master
Branch: Hauptzweig, stabile Versionfrontier
: Entwicklungszweig, Testversion代码中参考了很多其他优秀项目中的设计,顺序不分先后:
# 清华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