AI Personal Learning
und praktische Anleitung
CyberKnife-Zeichenspiegel

AI Toolkit von Ostris: Stabile Diffusion mit FLUX.1 Model Training Toolkit

Allgemeine Einführung

AI Toolkit von Ostris ist ein Open-Source-KI-Toolset, das sich auf die Unterstützung von Stable Diffusion und FLUX.1-Modellen für Trainings- und Bilderzeugungsaufgaben konzentriert. Das vom Entwickler Ostris erstellte und gepflegte Toolkit, das auf GitHub gehostet wird, zielt darauf ab, eine flexible Plattform für Forscher und Entwickler zur Feinabstimmung und zum Experimentieren mit Modellen zu bieten. Es enthält eine Vielzahl von KI-Skripten, die Funktionen wie LoRA-Extraktion, Batch-Bilderzeugung und schichtspezifisches Training unterstützen. Das Projekt befindet sich derzeit in der Entwicklungsphase, und einige der Funktionen sind möglicherweise noch nicht stabil genug, aber aufgrund der hohen Anpassungsfähigkeit ist es für fortgeschrittene Benutzer im Bereich des Deep Learning geeignet. Das Toolset unterstützt Linux- und Windows-Systeme, und für das Training der FLUX.1-Modelle ist ein Nvidia-Grafikprozessor mit mindestens 24 GB Videospeicher erforderlich.

AI Toolkit von Ostris: Stabile Diffusion mit FLUX.1 Model Training Toolkit-1


 

Funktionsliste

  • Modellschulung:: Unterstützt Stable Diffusion und FLUX.1 Modell-Feinabstimmung für das Training von LoRA und LoKr Modellen.
  • BilderzeugungGenerieren von Stapelbildern auf der Grundlage von Profilen oder Textaufforderungen.
  • LoRA-Extraktion und OptimierungBereitstellung von LoRA- und LoCON-Extraktionswerkzeugen zur Optimierung der Extraktion von Modellmerkmalen.
  • Schichtspezifisches TrainingDie einzelnen Schichten des neuronalen Netzes können für das Training ausgewählt und die Gewichte flexibel angepasst werden.
  • Unterstützung der BenutzeroberflächeAI Toolkit UI und Gradio UI zur Vereinfachung der Aufgabenverwaltung und des Modelltrainings.
  • Verarbeitung des DatensatzesPasst die Bildauflösung automatisch an und gruppiert die Bilder nach Bereichen, wobei eine Vielzahl von Bildformaten unterstützt wird.
  • Cloud-AusbildungUnterstützung für die Ausführung von Trainingsaufgaben auf den Plattformen RunPod und Modal.

 

Hilfe verwenden

Einbauverfahren

Installation eines Linux-Systems

  1. Klon-Lager: Führen Sie den folgenden Befehl im Terminal aus, um den Code herunterzuladen:
git clone https://github.com/ostris/ai-toolkit.git
cd ai-toolkit
  1. Aktualisierung von UntermodulenVergewissern Sie sich, dass alle abhängigen Bibliotheken vollständig sind:
git submodule update --init --recursive
  1. Erstellen einer virtuellen Umgebung: Verwenden Sie Python 3.10 oder höher:
python3 -m venv venv
source venv/bin/activate
  1. Installation von Abhängigkeiten: Installieren Sie zuerst PyTorch und dann die anderen Abhängigkeiten:
pip3 install torch
pip3 install -r requirements.txt

Installation des Windows-Systems

  1. Klon-Lager: Ausführen in der Eingabeaufforderung:
git clone https://github.com/ostris/ai-toolkit.git
cd ai-toolkit
  1. Aktualisierung von Untermodulen:
git submodule update --init --recursive
  1. Erstellen einer virtuellen Umgebung:
python -m venv venv
.\venv\Scripts\activate
  1. Installation von AbhängigkeitenInstallieren Sie die Version von PyTorch, die CUDA 12.4 unterstützt, und installieren Sie dann die anderen Abhängigkeiten:
pip install torch==2.5.1 torchvision==0.20.1 --index-url https://download.pytorch.org/whl/cu124
pip install -r requirements.txt

UI Interface Installation

  1. Installation von Node.jsStellen Sie sicher, dass Node.js 18 oder höher auf Ihrem System installiert ist.
  2. Aufbau der UI: Geben Sie das Verzeichnis ui ein und installieren Sie die Abhängigkeiten:
cd ui
npm install
npm run build
npm run update_db
  1. Ausführen der UIStartbildschirm:
npm run start
  1. Zugang zur UI: Geben Sie in Ihrem Browser einhttp://localhost:8675.

Hauptfunktionen

FLUX.1 Modellschulung

  1. Vorbereiten der UmgebungVergewissern Sie sich, dass der Grafikprozessor über mindestens 24 GB Videospeicher verfügt, und legen Sie dies in der Konfigurationsdatei fest, wenn er für die Anzeigeausgabe verwendet wird.low_vram: trueum das Modell auf der CPU zu quantifizieren.
  2. FLUX.1-dev konfigurieren:
  • Melden Sie sich bei Hugging Face an und besuchen SieSchwarzwald-Labore/FLUX.1-devund akzeptieren die Lizenz.
  • Erstellen Sie im Stammverzeichnis des Projekts die Datei.envDatei, fügen Sie dieHF_TOKEN=你的读取密钥.
  1. FLUX.1-schnell konfigurieren:
  • Bearbeiten Sie die Konfigurationsdatei (z. B.train_lora_flux_schnell_24gb.yaml), hinzufügen:
    model:
    name_or_path: "black-forest-labs/FLUX.1-schnell"
    assistant_lora_path: "ostris/FLUX.1-schnell-training-adapter"
    is_flux: true
    quantize: true
    sample:
    guidance_scale: 1
    sample_steps: 4
    
  1. Vorbereiten des DatensatzesAnlegen im Stammverzeichnisdatasetin den Ordner.jpgund.jpegvielleicht.pngBild und das entsprechende.txtBeschreiben Sie die Datei.
  2. Konfigurationsdatei bearbeitenVervielfältigungconfig/examples/train_lora_flux_24gb.yamlbis zuconfigVerzeichnis, benennen Sie es um inmy_config.ymlÄnderungenfolder_pathist der Pfad zum Datensatz.
  3. Lauftraining:: Umsetzung:
python run.py config/my_config.yml

Die Trainingsergebnisse werden im angegebenen Ausgabeordner gespeichert und können mit Strg+C angehalten und am nächsten Kontrollpunkt wieder aufgenommen werden.

Ausbildung mit Gradio UI

  1. Anmelden bei Hugging Face: Laufenhuggingface-cli loginDie Eingänge habenwriteDer Schlüssel für dieses Privileg.
  2. UI starten:: Umsetzung:
python flux_train_ui.py
  1. Bedienung UILaden Sie Bilder hoch, geben Sie Beschreibungen ein, stellen Sie Parameter ein und klicken Sie auf "Training" in der Benutzeroberfläche. Nach Fertigstellung können Sie das LoRA-Modell veröffentlichen.

Training in der Cloud (RunPod)

  1. Erstellen einer RunPod-Instanz: Verwendung von Vorlagenrunpod/pytorch:2.2.0-py3.10-cuda12.1.1-devel-ubuntu22.04wählen Sie A40 (48 GB Videospeicher).
  2. Installationswerkzeugsatz: Verbinden Sie sich mit Jupyter Notebook und führen Sie den Linux-Installationsbefehl im Terminal aus.
  3. Hochladen von DatensätzenAnlegen im Stammverzeichnisdatasetund ziehen Sie Bilder und Beschreibungsdateien hinein.
  4. Konfigurieren und ausführen: Ändern Sie die Konfigurationsdatei desfolder_pathUmsetzungpython run.py config/my_config.yml.

Vorbereitung des Datensatzes

  • Anforderungen an die Formatierung: Unterstützung.jpgund.jpegund.pngFormat, ist die Beschreibungsdatei.txtDie Dateinamen müssen konsistent sein (z. B.image1.jpgKontrahentenimage1.txt).
  • Beschreibung.txtum eine Beschreibung in der[trigger]Platzhalter, die in der Konfigurationsdatei untertrigger_wordErsetzen.
  • automatische AnpassungDas Werkzeug verkleinert und gruppiert die Bilder automatisch entsprechend der eingestellten Auflösung, Zoomen wird nicht unterstützt.

Schichtspezifisches Training

  1. Konfigurationsdatei bearbeiten: InnetworkTeilweise hinzugefügt:
network:
type: "lora"
linear: 128
linear_alpha: 128
network_kwargs:
only_if_contains:
- "transformer.single_transformer_blocks.7.proj_out"
- "transformer.single_transformer_blocks.20.proj_out"
  1. LauftrainingStartet mit einer geänderten Konfigurationsdatei und trainiert nur die angegebene Schicht.

caveat

  • Unterbrechung der AusbildungVermeiden Sie es, während des Speicherns von Kontrollpunkten Strg+C zu drücken, um die Datei nicht zu beschädigen.
  • UI SicherheitUI wird derzeit nur unter Linux getestet, das weniger sicher ist und nicht für den Einsatz im öffentlichen Netz empfohlen wird.
  • Hilfe bekommenSie können der Discord-Community von Ostris beitreten, um Fragen zu stellen und direkte private Nachrichten an die Entwickler zu vermeiden.
Darf nicht ohne Genehmigung vervielfältigt werden:Leiter des AI-Austauschkreises " AI Toolkit von Ostris: Stabile Diffusion mit FLUX.1 Model Training Toolkit
de_DEDeutsch