


Die 0-Schwellenwert-Klonlösung wurde aktualisiert, das Open-Source-Modell ist vollständig reproduziert und für das Online-Erlebnis ist keine Registrierung erforderlich.
KI-Anwendungen und große Modelle, die durch ChatGPT und GPT4 repräsentiert werden, erfreuen sich auf der ganzen Welt großer Beliebtheit und gelten als Eröffner einer neuen technologischen industriellen Revolution und als neuer Ausgangspunkt für AGI (Künstliche Allgemeine Intelligenz). Technologiegiganten jagen sich nicht nur gegenseitig und wetteifern um die Einführung neuer Produkte, sondern auch viele KI-Tycoons in Wissenschaft und Industrie investieren in entsprechende unternehmerische Wellen. Generative KI iteriert schnell innerhalb von „Tagen“ und nimmt weiter zu!
OpenAI hat es jedoch nicht zu Open Source gemacht. Welche technischen Details stecken dahinter? Wie kann man dieser Technologiewelle schnell folgen, aufholen und daran teilnehmen? Wie können die hohen Kosten für die Erstellung und Anwendung großer KI-Modelle gesenkt werden? Wie können Kerndaten und geistiges Eigentum davor geschützt werden, durch die Verwendung großer Modell-APIs von Drittanbietern preisgegeben zu werden?
Als beliebteste Open-Source-KI-Großmodelllösung hat Colossal-AI die Führung bei der Etablierung eines vollständigen RLHF-Prozesses übernommen, der überwachte Datensatzerfassung -> überwachte Feinabstimmung -> Belohnungsmodelltraining -> Verstärkung umfasst Feinabstimmung lernen, basierend auf dem LLaMA-Vortrainingsmodell, startete ColossalChat, ist derzeit das praktische Open-Source-Projekt, das der ursprünglichen technischen Lösung von ChatGPT am nächsten kommt!
Open-Source-Adresse: https://github.com/hpcaitech/ColossalAI
Enthält den folgenden Inhalt:
1. Demo: Sie können direkt erleben Der Modelleffekt ist online, keine Registrierung oder Warteliste erforderlich Satz:
Open Source 104K Medium, englischer zweisprachiger Datensatz4. Inferenzbereitstellung:
4-Bit-quantitatives Inferenzmodell mit 7 Milliarden Parametern erfordert nur 4 GB Videospeicher5. Modellgewicht:
Nur eine geringe Menge an Rechenleistung auf einem einzelnen Server. Es kann schnell reproduziert werden6. Größere Modelle, Datensätze, andere Optimierungen usw. sorgen für eine iterative HochgeschwindigkeitsadditionErschwingliche Modelle und leistungsstarke Funktionen
ColossalChat erfordert nur weniger als 10 Milliarden Parameter und in großen Sprachen. Durch die Feinabstimmung von RLHF auf der Grundlage des Modells können Sie die zweisprachigen Fähigkeiten Chinesisch und Englisch beherrschen und ähnliche Effekte wie ChatGPT und GPT-3.5 erzielen. Zum Beispiel eine Frage und Antwort mit gesundem Menschenverstand:
Chinesische Antwort:
Schreiben Sie eine E-Mail:
Schreiben Sie einen Algorithmus:
Vollständige ChatGPT-Klonlösung
Obwohl Modelle der GPT-Serie wie ChatGPT und GPT-4 sehr leistungsfähig sind, ist es unwahrscheinlich, dass sie vollständig Open Source sind. Glücklicherweise arbeitet die Open-Source-Community weiterhin hart.Zum Beispiel hat Meta das LLaMA-Modell als Open Source bereitgestellt. Die Anzahl der Parameter dieses Modells reicht von 7 Milliarden bis 13 Milliarden Parametern und kann das 175 Milliarden GPT-3-Modell in den meisten Benchmark-Tests übertreffen. Da es jedoch nicht zur Feinabstimmung angewiesen wurde (Tuning anweisen), war der tatsächliche Erzeugungseffekt nicht ideal.
Stanfords Alpaca generiert Trainingsdaten auf selbstlernende Weise durch Aufrufen der OpenAI-API, sodass ein leichtes Modell mit nur 7 Milliarden Parametern zu sehr geringen Kosten feinabgestimmt werden kann, um Hunderte Milliarden vergleichbarer Parameter zu erhalten GPT-3.5 Dialogeffekte sehr großer Sprachmodelle.
AberDie bestehenden Open-Source-Lösungen können davon ausgegangen werden, dass sie lediglich den ersten Schritt des überwachten Feinabstimmungsmodells beim Human Feedback Reinforcement Learning (RLHF) erreichen, ohne anschließende Ausrichtungs- und Feinabstimmungsarbeiten. Gleichzeitig ist der Trainingsdatensatz von Alpaca zu klein und der Korpus nur auf Englisch, was auch die Leistung des Modells in gewissem Maße einschränkt.
Und die erstaunliche Wirkung von ChatGPT und GPT-4 liegt in der Einführung von RLHF in den Trainingsprozess, wodurch die generierten Inhalte besser mit menschlichen Werten übereinstimmen.
Drei Stufen von RLHF
Basierend auf dem LLaMA-Modell ist Colossal-AI die erste Open-Source-Chat-ähnliche Modellreproduktionslösung, die einen vollständigen RLHF-Prozess umfasst derzeit Das praktische Open-Source-Projekt, das der ursprünglichen technischen Route von ChatGPT am nächsten kommt!
Trainingsdatensatz Open Source
ColossalChat hat einen zweisprachigen Datensatz in Chinesisch und Englisch als Open Source bereitgestellt, der etwa 100.000 Fragen und Antworten enthält. Dieser Datensatz sammelt und bereinigt reale Frageszenarien von Menschen auf sozialen Plattformen als Seed-Datensatz, nutzt Selbstinstruktionstechnologie zur Erweiterung der Daten und kostet etwa 900 US-Dollar für die Annotation. Im Vergleich zu den Datensätzen, die mit anderen Selbstanweisungsmethoden generiert wurden, sind die Startdaten dieses Datensatzes realer und umfangreicher, und der generierte Datensatz deckt mehr Themen ab. Diese Daten können sowohl zur Feinabstimmung als auch zum RLHF-Training verwendet werden. Durch hochwertige Daten kann ColossalChat bessere Gesprächsinteraktionen durchführen und Chinesisch unterstützen. „KolossalChat-Datensatzerfassungsprozess“ Feinabstimmung der Modell .
RLHF-Stage2 trainiert das Belohnungsmodell. Es sortiert manuell verschiedene Ausgaben derselben Eingabeaufforderung, um die entsprechenden Bewertungen zu erhalten, und überwacht das Training des Belohnungsmodells.
RLHF-Stage3 verwendet einen Reinforcement-Learning-Algorithmus, der den komplexesten Teil des Trainingsprozesses darstellt:
RLHF-Stage3-Algorithmus-Flussdiagramm
Im PPO-Teil ColossalChat ist unterteilt in Es wird in zwei Phasen ausgeführt: Erstens ist es der Make Experience-Teil, der SFT-, Actor-, RM- und Critic-Modelle verwendet, um Experience zu berechnen und zu generieren und es im Puffer zu speichern nutzt Erfahrung, um den Strategieverlust und den Wertverlust zu berechnen.
Im PTX-Teil berechnet ColossalChat die Kreuzentropieverlustfunktion der Actor-Ausgabeantwort und des Antwortteils des Eingabekorpus, die verwendet wird, um den Gradienten vor dem Training zum PPO-Gradienten hinzuzufügen, um die ursprüngliche Leistung aufrechtzuerhalten des Sprachmodells und verhindern das Vergessen. Schließlich werden der Strategieverlust, der Wertverlust und der PTX-Verlust für die Rückausbreitung und Parameteraktualisierung summiert.
Schnell loslegen
ColossalChat hat den vollständigen Code zur Reproduktion der drei Phasen des ChatGPT-Trainings basierend auf dem LLaMA-Modell als Open Source bereitgestellt. In der ersten Stufe trainieren Sie das SFT-Modell:
# Training with a 4-GPU servers colossalai run --nproc_per_node=4 train_sft.py --pretrain "/path/to/LLaMa-7B/" --model 'llama' --strategy colossalai_zero2 --log_interval 10 --save_path/path/to/Coati-7B --dataset /path/to/data.json --batch_size 4 --accimulation_steps 8 --lr 2e-5
# Training with a 4-GPU servers colossalai run --nproc_per_node=4 train_reward_model.py --pretrain "/path/to/LLaMa-7B/" --model 'llama' --strategy colossalai_zero2 --dataset /path/to/datasets
# Training with a 8-GPU servers colossalai run --nproc_per_node=8 train_prompts.py prompts.csv --strategy colossalai_zero2 --pretrain "/path/to/Coati-7B" --model 'llama' --pretrain_dataset /path/to/dataset
python server.py/path/to/pretrained --quant 4bit --gptq_checkpoint /path/to/coati-7b-4bit-128g.pt --gptq_group_size 128
系统性能优化与开发加速
ColossalChat 能够快速跟进 ChatGPT 完整 RLHF 流程复现,离不开 AI 大模型基础设施 Colossal-AI 及相关优化技术的底座支持,相同条件下训练速度相比 Alpaca 采用的 FSDP (Fully Sharded Data Parallel) 可提升三倍左右。
系统基础设施 Colossal-AI
AI 大模型开发系统 Colossal-AI 为该方案提供了基础支持,它可基于 PyTorch 高效快速部署 AI 大模型训练和推理,从而降低 AI 大模型应用的成本。Colossal-AI 由加州伯克利大学杰出教授 James Demmel 和新加坡国立大学校长青年教授尤洋领导开发。自从它开源以来,Colossal-AI 已经多次在 GitHub 热榜位列世界第一,获得 GitHub Star 约两万颗,并成功入选 SC、AAAI、PPoPP、CVPR、ISC 等国际 AI 与 HPC 顶级会议的官方教程。
减少内存冗余的 ZeRO + Gemini
Colossal-AI 支持使用无冗余优化器 (ZeRO) 提高内存使用效率,低成本容纳更大模型,同时不影响计算粒度和通信效率。自动 Chunk 机制可以进一步提升 ZeRO 的性能,提高内存使用效率,减少通信次数并避免内存碎片。异构内存空间管理器 Gemini 支持将优化器状态从 GPU 显存卸载到 CPU 内存或硬盘空间,以突破 GPU 显存容量限制,扩展可训练模型的规模,降低 AI 大模型应用成本。
使用 LoRA 低成本微调
Colossal-AI 支持使用低秩矩阵微调(LoRA)方法,对 AI 大模型进行低成本微调。LoRA 方法认为大语言模型是过参数化的,而在微调时,参数改变量是一个低秩矩阵。因此,可以将这个矩阵分解为两个更小的矩阵的乘积。在微调过程中,大模型的参数被固定,只有低秩矩阵参数被调整,从而显著减小了训练所需的参数量,并降低成本。
低成本量化推理
GPTQ 量化
为降低推理部署成本,Colossal-AI 使用 GPTQ 4bit 量化推理。在 GPT/OPT/BLOOM 类模型上,它比传统的 RTN (rount-to-nearest) 量化技术能够获得更好的 Perplexity 效果。相比常见的 FP16 推理,它可将显存消耗降低 75%,只损失极少量的吞吐速度与 Perplexity 性能。
以 ColossalChat-7B 为例,在使用 4bit 量化推理时,70 亿参数模型仅需大约 4GB 显存即可完成短序列(生成长度为 128 )推理,在普通消费级显卡上即可完成(例如 RTX 3060 Laptop),仅需一行代码即可使用。
if args.quant == '4bit': model = load_quant (args.pretrained, args.gptq_checkpoint, 4, args.gptq_group_size)
如果采用高效的异步卸载技术 (offload),还可以进一步降低显存要求,使用更低成本的硬件推理更大的模型。
ColossalChat和Alpaca的区别
1. ColossalChat 开源了第一个完整的RLHF pipeline,斯坦福Alpaca没有做 RLHF,也就是没有做 Stage 2 和 Stage 3。
2. ColossalChat 采用了更多的指令数据,质量更好,范围更大,并使用强化学习做alignment 使回答更接近人类。
3. Der ColossalChat-Trainingsprozess integriert viele Systemoptimierungen von Colossal-AI. Die Trainingsgeschwindigkeit des gleichen Datensatzes und der gleichen Modellgröße kann etwa dreimal schneller sein als bei Alpaca, was es wissenschaftlichen Forschern ermöglicht Auch kleine und mittlere Unternehmen können ihr eigenes Sitzungssystem selbstständig trainieren und bereitstellen. 4. Das ColossalChat-Team hat selbst weitere Datensätze gesammelt: insgesamt 24 Millionen Token auf Englisch für das Training, etwa 30 Millionen Token auf Chinesisch und insgesamt etwa 54 Millionen Token. Darunter umfasst der von ColossalChat selbst gesammelte Datensatz 6 Millionen auf Englisch und 18 Millionen Token auf Chinesisch.
Das Folgende sind einige Aufführungen von ColossalChat und Alpaca im Sprachdialog (oben ist ColossalChat, unten ist Alpaca).
Quicksort in Python schreiben:
Schreiben Sie eine E-Mail an den Professor, um ein Empfehlungsschreiben anzufordern:
Obwohl es RLHF weiter eingeführt hat, aber aufgrund Rechenleistung Da der Datensatz begrenzt ist, gibt es in einigen Szenarien noch Raum für Verbesserungen der tatsächlichen Leistung.
Sie können über die folgenden Methoden Kontakt aufnehmen oder teilnehmen:
1. Veröffentlichen Sie ein Problem auf GitHub oder senden Sie eine Pull-Anfrage (PR)
2. Treten Sie der Colossal-AI-Benutzergruppe WeChat oder Slack bei Kommunikation
3. Senden Sie einen formellen Kooperationsvorschlag an die E-Mail youy@comp.nus.edu.sg
Open-Source-Adresse:
https://github.com/hpcaitech/ColossalAI
Das obige ist der detaillierte Inhalt vonDie 0-Schwellenwert-Klonlösung wurde aktualisiert, das Open-Source-Modell ist vollständig reproduziert und für das Online-Erlebnis ist keine Registrierung erforderlich.. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



Der Artikel führt den Betrieb der MySQL -Datenbank vor. Zunächst müssen Sie einen MySQL -Client wie MySQLworkBench oder Befehlszeilen -Client installieren. 1. Verwenden Sie den Befehl mySQL-uroot-P, um eine Verbindung zum Server herzustellen und sich mit dem Stammkonto-Passwort anzumelden. 2. Verwenden Sie die Erstellung von Createdatabase, um eine Datenbank zu erstellen, und verwenden Sie eine Datenbank aus. 3.. Verwenden Sie CreateTable, um eine Tabelle zu erstellen, Felder und Datentypen zu definieren. 4. Verwenden Sie InsertInto, um Daten einzulegen, Daten abzufragen, Daten nach Aktualisierung zu aktualisieren und Daten nach Löschen zu löschen. Nur indem Sie diese Schritte beherrschen, lernen, mit gemeinsamen Problemen umzugehen und die Datenbankleistung zu optimieren, können Sie MySQL effizient verwenden.

Um die Zeitüberschreitung für Vue Axios festzulegen, können wir eine Axios -Instanz erstellen und die Zeitleitungsoption angeben: in globalen Einstellungen: vue.Prototyp. $ Axios = axios.create ({Timeout: 5000}); In einer einzigen Anfrage: this. $ axios.get ('/api/user', {timeout: 10000}).

Es gibt viele Gründe, warum MySQL Startup fehlschlägt und durch Überprüfung des Fehlerprotokolls diagnostiziert werden kann. Zu den allgemeinen Ursachen gehören Portkonflikte (prüfen Portbelegung und Änderung der Konfiguration), Berechtigungsprobleme (Überprüfen Sie den Dienst Ausführen von Benutzerberechtigungen), Konfigurationsdateifehler (Überprüfung der Parametereinstellungen), Datenverzeichniskorruption (Wiederherstellung von Daten oder Wiederaufbautabellenraum), InnoDB-Tabellenraumprobleme (prüfen IBDATA1-Dateien), Plug-in-Ladeversagen (Überprüfen Sie Fehlerprotokolle). Wenn Sie Probleme lösen, sollten Sie sie anhand des Fehlerprotokolls analysieren, die Hauptursache des Problems finden und die Gewohnheit entwickeln, Daten regelmäßig zu unterstützen, um Probleme zu verhindern und zu lösen.

Verarbeiten Sie 7 Millionen Aufzeichnungen effizient und erstellen Sie interaktive Karten mit Geospatial -Technologie. In diesem Artikel wird untersucht, wie über 7 Millionen Datensätze mithilfe von Laravel und MySQL effizient verarbeitet und in interaktive Kartenvisualisierungen umgewandelt werden können. Erstes Herausforderungsprojektanforderungen: Mit 7 Millionen Datensätzen in der MySQL -Datenbank wertvolle Erkenntnisse extrahieren. Viele Menschen erwägen zunächst Programmiersprachen, aber ignorieren die Datenbank selbst: Kann sie den Anforderungen erfüllen? Ist Datenmigration oder strukturelle Anpassung erforderlich? Kann MySQL einer so großen Datenbelastung standhalten? Voranalyse: Schlüsselfilter und Eigenschaften müssen identifiziert werden. Nach der Analyse wurde festgestellt, dass nur wenige Attribute mit der Lösung zusammenhängen. Wir haben die Machbarkeit des Filters überprüft und einige Einschränkungen festgelegt, um die Suche zu optimieren. Kartensuche basierend auf der Stadt

Remote Senior Backend Engineer Job Vacant Company: Circle Standort: Remote-Büro-Jobtyp: Vollzeitgehalt: 130.000 bis 140.000 US-Dollar Stellenbeschreibung Nehmen Sie an der Forschung und Entwicklung von Mobilfunkanwendungen und öffentlichen API-bezogenen Funktionen, die den gesamten Lebenszyklus der Softwareentwicklung abdecken. Die Hauptaufgaben erledigen die Entwicklungsarbeit unabhängig von RubyonRails und arbeiten mit dem Front-End-Team von React/Redux/Relay zusammen. Erstellen Sie die Kernfunktionalität und -verbesserungen für Webanwendungen und arbeiten Sie eng mit Designer und Führung während des gesamten funktionalen Designprozesses zusammen. Fördern Sie positive Entwicklungsprozesse und priorisieren Sie die Iterationsgeschwindigkeit. Erfordert mehr als 6 Jahre komplexes Backend für Webanwendungen

Die MySQL -Leistungsoptimierung muss von drei Aspekten beginnen: Installationskonfiguration, Indexierung und Abfrageoptimierung, Überwachung und Abstimmung. 1. Nach der Installation müssen Sie die my.cnf -Datei entsprechend der Serverkonfiguration anpassen, z. 2. Erstellen Sie einen geeigneten Index, um übermäßige Indizes zu vermeiden und Abfrageanweisungen zu optimieren, z. B. den Befehl Erklärung zur Analyse des Ausführungsplans; 3. Verwenden Sie das eigene Überwachungstool von MySQL (ShowProcessList, Showstatus), um die Datenbankgesundheit zu überwachen und die Datenbank regelmäßig zu sichern und zu organisieren. Nur durch kontinuierliche Optimierung dieser Schritte kann die Leistung der MySQL -Datenbank verbessert werden.

Die MySQL-Datenbankleistung Optimierungshandbuch In ressourcenintensiven Anwendungen spielt die MySQL-Datenbank eine entscheidende Rolle und ist für die Verwaltung massiver Transaktionen verantwortlich. Mit der Erweiterung der Anwendung werden jedoch die Datenbankleistung Engpässe häufig zu einer Einschränkung. In diesem Artikel werden eine Reihe effektiver Strategien zur Leistungsoptimierung von MySQL -Leistung untersucht, um sicherzustellen, dass Ihre Anwendung unter hohen Lasten effizient und reaktionsschnell bleibt. Wir werden tatsächliche Fälle kombinieren, um eingehende Schlüsseltechnologien wie Indexierung, Abfrageoptimierung, Datenbankdesign und Caching zu erklären. 1. Das Design der Datenbankarchitektur und die optimierte Datenbankarchitektur sind der Eckpfeiler der MySQL -Leistungsoptimierung. Hier sind einige Kernprinzipien: Die Auswahl des richtigen Datentyps und die Auswahl des kleinsten Datentyps, der den Anforderungen entspricht, kann nicht nur Speicherplatz speichern, sondern auch die Datenverarbeitungsgeschwindigkeit verbessern.

Detaillierte Erläuterung von Datenbanksäureattributen Säureattribute sind eine Reihe von Regeln, um die Zuverlässigkeit und Konsistenz von Datenbanktransaktionen sicherzustellen. Sie definieren, wie Datenbanksysteme Transaktionen umgehen, und sorgen dafür, dass die Datenintegrität und -genauigkeit auch im Falle von Systemabstürzen, Leistungsunterbrechungen oder mehreren Benutzern gleichzeitiger Zugriff. Säureattributübersicht Atomizität: Eine Transaktion wird als unteilbare Einheit angesehen. Jeder Teil schlägt fehl, die gesamte Transaktion wird zurückgerollt und die Datenbank behält keine Änderungen bei. Wenn beispielsweise eine Banküberweisung von einem Konto abgezogen wird, jedoch nicht auf ein anderes erhöht wird, wird der gesamte Betrieb widerrufen. begintransaktion; updateAccountsSetBalance = Balance-100WH
