✨Gemma 3 - Anleitung zum Ausführen
Wie man Gemma 3 effektiv mit unseren GGUFs auf llama.cpp, Ollama, Open WebUI ausführt und wie man mit Unsloth finetunt!
Google veröffentlicht Gemma 3 mit einem neuen 270M-Modell und den bisherigen Größen 1B, 4B, 12B und 27B. Die 270M- und 1B-Modelle sind nur für Text, während größere Modelle sowohl Text als auch Vision verarbeiten. Wir stellen GGUFs bereit sowie eine Anleitung, wie man es effektiv ausführt, und wie man feinabstimmt & macht RL mit Gemma 3!
NEU 14. Aug. 2025 Update: Probiere unser Fine-Tuning Gemma 3 (270M) Notebook und GGUFs zum Ausführen.
Siehe auch unser Gemma 3n Leitfaden.
Ausführungs-TutorialFeinabstimmungs-Tutorial
Unsloth ist das einzige Framework, das auf float16-Maschinen für Gemma 3 Inferenz und Training funktioniert. Das bedeutet, Colab-Notebooks mit kostenlosen Tesla T4 GPUs funktionieren ebenfalls!
Feinabstimmung von Gemma 3 (4B) mit Vision-Unterstützung mit unserem kostenloses Colab-Notebook
Laut dem Gemma-Team ist die optimale Konfiguration für die Inferenz
temperature = 1.0, top_k = 64, top_p = 0.95, min_p = 0.0
Unsloth Gemma 3 Uploads mit optimalen Konfigurationen:
⚙️ Empfohlene Inferenz-Einstellungen
Laut dem Gemma-Team sind die offiziell empfohlenen Einstellungen für die Inferenz:
Temperatur von 1,0
Top_K von 64
Min_P von 0,00 (optional, aber 0,01 funktioniert gut, der Standard in llama.cpp ist 0,1)
Top_P von 0.95
Repetition Penalty von 1.0. (1.0 bedeutet deaktiviert in llama.cpp und transformers)
Chat-Vorlage:
<bos><start_of_turn>user\nHello!<end_of_turn>\n<start_of_turn>model\nHey there!<end_of_turn>\n<start_of_turn>user\nWhat is 1+1?<end_of_turn>\n<start_of_turn>model\nChat-Vorlage mit
\nZeilenumbrüchen gerendert (außer dem letzten)
llama.cpp und andere Inferenz-Engines fügen automatisch ein <bos> hinzu - FÜGEN SIE NICHT ZWEI <bos>-Tokens HINZU! Sie sollten das <bos> beim Prompten des Modells ignorieren!
✨Gemma 3 auf deinem Telefon ausführen
Um die Modelle auf deinem Telefon auszuführen, empfehlen wir jede mobile App, die GGUFs lokal auf Edge-Geräten wie Telefonen ausführen kann. Nach der Feinabstimmung kannst du es in GGUF exportieren und dann lokal auf deinem Telefon ausführen. Stelle sicher, dass dein Telefon genügend RAM/Leistung hat, um die Modelle zu verarbeiten, da es überhitzen kann; daher empfehlen wir für diesen Anwendungsfall Gemma 3 270M oder die Gemma 3n-Modelle. Du kannst das Open-Source-Projekt AnythingLLM's Mobile App, die du auf Android hier oder ChatterUI, die großartige Apps zum Ausführen von GGUFs auf deinem Telefon sind.
Denke daran, du kannst den Modellnamen 'gemma-3-27b-it-GGUF' in jedem Tutorial in ein beliebiges Gemma-Modell wie 'gemma-3-270m-it-GGUF:Q8_K_XL' ändern.
🦙 Tutorial: Wie man Gemma 3 in Ollama ausführt
Installieren Sie
ollamafalls du es noch nicht getan hast!
Führen Sie das Modell aus! Beachten Sie, dass Sie aufrufen können
ollama servein einem anderen Terminal, falls es fehlschlägt! Wir fügen alle unsere Fixes und vorgeschlagenen Parameter (Temperatur usw.) inparamsin unserem Hugging Face Upload! Du kannst den Modellnamen 'gemma-3-27b-it-GGUF' in jedes Gemma-Modell wie 'gemma-3-270m-it-GGUF:Q8_K_XL' ändern.
📖 Tutorial: Wie man Gemma 3 27B in llama.cpp ausführt
Holen Sie sich die neueste
llama.cppauf GitHub hier. Sie können auch den unten stehenden Build-Anweisungen folgen. Ändern Sie-DGGML_CUDA=ONzu-DGGML_CUDA=OFFwenn Sie keine GPU haben oder nur CPU-Inferenz wünschen.
Wenn Sie
llama.cppdirekt zum Laden von Modellen kannst du Folgendes tun: (:Q4_K_XL) ist der Quantisierungstyp. Du kannst auch über Hugging Face herunterladen (Punkt 3). Das ist ähnlich wieollama run
ODER lade das Modell herunter über (nach der Installation
pip install huggingface_hub hf_transfer). Du kannst Q4_K_M wählen oder andere quantisierte Versionen (wie BF16 in voller Präzision). Weitere Versionen unter: https://huggingface.co/unsloth/gemma-3-27b-it-GGUF
Führe Unsloths Flappy Bird-Test aus
Bearbeiten
--threads 32für die Anzahl der CPU-Threads bearbeiten,--ctx-size 16384für Kontextlänge (Gemma 3 unterstützt 128K Kontextlänge!),--n-gpu-layers 99für das GPU-Offloading für wie viele Schichten. Versuchen Sie, es anzupassen, wenn Ihre GPU nicht mehr genügend Speicher hat. Entfernen Sie es auch, wenn Sie nur CPU-Inferenz haben.Für Konversationsmodus:
Für Nicht-Konversationsmodus zum Testen von Flappy Bird:
Die vollständige Eingabe aus unserem https://unsloth.ai/blog/deepseekr1-dynamic 1.58bit Blog ist:
Denke daran <bos> zu entfernen, da Gemma 3 automatisch ein <bos> hinzufügt!
🦥 Feinabstimmung von Gemma 3 in Unsloth
Unsloth ist das einzige Framework, das auf float16-Maschinen für Gemma 3 Inferenz und Training funktioniert. Das bedeutet, Colab-Notebooks mit kostenlosen Tesla T4 GPUs funktionieren ebenfalls!
Probiere unser neues Gemma 3 (270M) Notebook das das 270M-Parameter-Modell sehr schlau im Schachspielen macht und den nächsten Schachzug vorhersagen kann.
Oder feinabstimmen Gemma 3n (E4B) mit Text • Vision • Audio
Beim Versuch eines vollständigen Fine-Tunes (FFT) von Gemma 3 sind standardmäßig alle Schichten auf float32 auf float16-Geräten. Unsloth erwartet float16 und castet dynamisch hoch. Um das zu beheben, führe model.to(torch.float16) nach dem Laden aus, oder verwende eine GPU mit bfloat16-Unterstützung.
Unsloth Fine-Tuning Fixes
Unsere Lösung in Unsloth ist dreifach:
Behalte alle Zwischenaktivierungen im bfloat16-Format – kann float32 sein, aber das verwendet 2x mehr VRAM oder RAM (über Unsloths asynchrones Gradient Checkpointing)
Führe alle Matrixmultiplikationen in float16 mit Tensor Cores aus, aber mache manuelles Hoch- / Runtercasten ohne die Hilfe von Pythons gemischter Präzisions-Autocast.
Caste alle anderen Optionen, die keine Matrixmultiplikationen benötigen (Layernorms), auf float32 hoch.
🤔 Gemma 3 Fehlerbehebungsanalyse

Zuerst, bevor wir finetunen oder Gemma 3 ausführen, haben wir festgestellt, dass bei Verwendung von float16 gemischter Präzision Gradienten und Aktivierungen unendlich werden leider. Das passiert bei T4-GPUs, der RTX-20x-Serie und V100-GPUs, wo sie nur float16 Tensor Cores haben.
Bei neueren GPUs wie RTX-30x oder höher, A100s, H100s usw. haben diese GPUs bfloat16 Tensor Cores, sodass dieses Problem nicht auftritt! Aber warum?
Float16 kann nur Zahlen bis zu 65504, während bfloat16 riesige Zahlen bis zu 10^38darstellen kann! Aber beachte, dass beide Zahlformate nur 16 Bit verwenden! Das liegt daran, dass float16 mehr Bits zuordnet, damit es kleinere Dezimalstellen besser darstellen kann, während bfloat16 Bruchteile nicht gut darstellen kann.
Aber warum float16? Lass uns einfach float32 verwenden! Leider ist float32 auf GPUs bei Matrixmultiplikationen sehr langsam – manchmal 4 bis 10x langsamer! Daher können wir das nicht tun.
Zuletzt aktualisiert
War das hilfreich?


