FunctionGemma: So ausführen & feinabstimmen
Erfahren Sie, wie Sie FunctionGemma lokal auf Ihrem Gerät und Telefon ausführen und feinabstimmen.
FunctionGemma ist ein neues Modell mit 270 Mio. Parametern von Google, das für Funktionsaufrufe und Fine-Tuning entwickelt wurde. Basierend auf Gemma 3 270M und speziell für textbasiertes Tool-Calling trainiert. Seine geringe Größe macht es ideal für den Einsatz auf Ihrem eigenen Smartphone.
Sie können das Modell in voller Genauigkeit ausführen auf 550 MB RAM (CPU) und Sie können es jetzt fine-tunen lokal mit Unsloth. Vielen Dank an Google DeepMind für die Partnerschaft mit Unsloth für Support ab Tag 0!
Anleitung zum AusführenFine-Tuning von FunctionGemma
FunctionGemma GGUF zum Ausführen: unsloth/functiongemma-270m-it-GGUF
Kostenlose Notebooks:
Fine-Tuning, um vor Tool-Aufrufen zu schlussfolgern/denken mit unserem FunctionGemma-Notebook
Machen Sie Multi-Turn-Tool-Calling in einem kostenlosen Notebook für Multi-Turn-Tool-Calling
Fine-Tuning, um mobile Aktionen aktivieren (Kalender, Timer setzen) in unserem Notebook für mobile Aktionen
⚙️ Verwendungsleitfaden
Google empfiehlt diese Einstellungen für die Inferenz:
top_k = 64top_p = 0,95temperature = 1,0maximale Kontextlänge =
32,768
Das Chat-Template-Format findet sich, wenn wir Folgendes verwenden:
def get_today_date():
""" Gibt das heutige Datum zurück """
return {"today_date": "18. Dezember 2025"}
tokenizer.apply_chat_template(
[
{"role" : "user", "content" : "Wie lautet das heutige Datum?"},
],
tools = [get_today_date], add_generation_prompt = True, tokenize = False,
)Format des FunctionGemma-Chat-Templates:
FunctionGemma erfordert die System- oder Developer-Nachricht als Sie sind ein Modell, das Funktionsaufrufe mit den folgenden Funktionen durchführen kann Unsloth-Versionen haben dies bereits integriert, falls Sie vergessen, eine anzugeben. Bitte verwenden Sie daher unsloth/functiongemma-270m-it
🖥️ FunctionGemma ausführen
Unten sehen Sie eine Anleitung für den lokalen Desktop oder Sie können unseren Leitfaden zur Smartphone-Bereitstellung ansehen.
Llama.cpp-Tutorial (GGUF):
Anweisungen zum Ausführen in llama.cpp (beachten Sie, dass wir 4-Bit verwenden werden, um auf die meisten Geräte zu passen):
Holen Sie sich die neueste llama.cpp auf GitHub hier. Sie können auch den unten stehenden Build-Anweisungen folgen. Ändern Sie -DGGML_CUDA=ON zu -DGGML_CUDA=OFF wenn Sie keine GPU haben oder einfach nur CPU-Inferenz möchten. Für Apple Mac / Metal-Geräte, setzen Sie -DGGML_CUDA=OFF und fahren Sie dann wie gewohnt fort - Metal-Unterstützung ist standardmäßig aktiviert.
Sie können direkt von Hugging Face herunterladen. Da das Modell so klein ist, verwenden wir die unquantisierte BF16-Variante in voller Genauigkeit.
Laden Sie das Modell herunter über (nach der Installation von pip install huggingface_hub hf_transfer ). Sie können BF16 oder andere quantisierte Versionen wählen (obwohl es nicht empfohlen wird, unter 4-Bit zu gehen) aufgrund der kleinen Modellgröße.
Dann führen Sie das Modell im Konversationsmodus aus:
📱 Smartphone-Bereitstellung
Sie können FunctionGemma aufgrund seiner geringen Größe auch auf Ihrem Smartphone ausführen und bereitstellen. Wir haben mit PyTorch zusammengearbeitet, um einen optimierten Workflow mithilfe von quantisierungsbewusstem Training (QAT) zu erstellen, um 70 % Genauigkeit wiederherzustellen und es dann direkt auf Edge-Geräten bereitzustellen.
FunctionGemma lokal bereitstellen auf Pixel 8 und iPhone 15 Pro um Inferenzgeschwindigkeiten von ~50 Token/s zu erreichen
Erhalten Sie Privatsphäre zuerst, sofortige Antworten und Offline-Funktionen
Verwenden Sie unser kostenloses Colab-Notebook um Qwen3 0,6B feinabzustimmen und für die Smartphone-Bereitstellung zu exportieren - ändern Sie es einfach in Gemma3 und folgen Sie den Gemma 3 Executorch-Dokumenten.
Sehen Sie sich unsere iOS- und Android-Tutorials zur Bereitstellung auf Ihrem Smartphone an:
🦥 Fine-Tuning von FunctionGemma
Google bemerkte, dass FunctionGemma für das Fine-Tuning vorgesehen ist für Ihre spezifische Funktionsaufruf-Aufgabe, einschließlich Multi-Turn-Anwendungsfällen. Unsloth unterstützt jetzt das Fine-Tuning von FunctionGemma. Wir haben 2 Fine-Tuning-Notebooks erstellt, die zeigen, wie Sie das Modell über vollständiges Fine-Tuning oder LoRA kostenlos über ein Colab-Notebook trainieren können:
Im Fine-Tuning-Notebook „vor dem Tool-Calling schlussfolgern“, werden wir es für "denken/schlussfolgern" vor dem Funktionsaufruf feinabstimmen. Chain-of-Thought-Reasoning wird immer wichtiger, um die Fähigkeiten zur Werkzeugnutzung zu verbessern.
FunctionGemma ist ein kleines Modell, das auf Funktionsaufrufe spezialisiert ist. Es verwendet sein eigenes, eigenständiges Chat-Template. Wenn Tool-Definitionen und ein Benutzer-Prompt bereitgestellt werden, erzeugt es eine strukturierte Ausgabe. Diese Ausgabe können wir dann parsen, um das Tool auszuführen, die Ergebnisse abzurufen und sie zur Generierung der endgültigen Antwort zu verwenden.
Developer-Prompt
<start_of_turn>developer
Sie können Funktionsaufrufe mit den folgenden Funktionen durchführen:
Funktionsdeklaration
<start_function_declaration>declaration:get_weather{
description: "Wetter für Stadt abrufen",
parameters: { city: STRING }
}
<end_function_declaration>
<end_of_turn>
Benutzerdurchlauf
<start_of_turn>user
Wie ist das Wetter in Paris?
<end_of_turn>
Funktionsaufruf
<start_of_turn>model
<start_function_call>call:get_weather{
city: "paris"
}
<end_function_call>
Funktionsantwort
<start_function_response>response:get_weather{temperature:26}
<end_function_response>
Abschluss des Assistenten
Das Wetter in Paris beträgt 26 Grad Celsius.
<end_of_turn>
Hier implementieren wir eine vereinfachte Version mit einem einzigen Denkblock (statt verschachteltem Reasoning) über <think></think>. Folglich sieht unsere Modellinteraktion so aus:
Denken + Funktionsaufruf
<start_of_turn>model
<think>
Der Benutzer möchte das Wetter für Paris. Ich habe das Tool get_weather. Ich sollte es mit dem Stadt-Argument aufrufen.
</think>
<start_function_call>call:get_weather{
city: "paris"
}
<end_function_call>
🪗Fine-Tuning von FunctionGemma für mobile Aktionen
Wir haben auch ein Notebook erstellt, das zeigt, wie Sie FunctionGemma mobile Aktionen ausführen lassen können. Im Fine-Tuning-Notebook für mobile Aktionen, haben wir auch die Auswertung aktiviert und zeigen, wie das Fine-Tuning für Aktionen auf dem Gerät gut funktioniert, wie am sinkenden Evaluierungsverlust zu sehen ist:

Zum Beispiel, gegeben einen Prompt Bitte setze für diesen Freitag, den 6. Juni 2025, um 14:00 Uhr eine Erinnerung für ein "Team Sync Meeting".
Wir haben das Modell so feinabgestimmt, dass es Folgendes ausgeben kann:
🏃♂️Multi-Turn-Tool-Calling mit FunctionGemma
Wir haben auch ein Notebook erstellt, das zeigt, wie Sie FunctionGemma für Multi-Turn-Tool-Calls verwenden können. Im Notebook für Multi-Turn-Tool-Calling, zeigen wir, wie FunctionGemma in der Lage ist, Tools in einer langen Nachrichtenänderung aufzurufen, zum Beispiel siehe unten:

Sie müssen zunächst Ihre Tools wie unten angeben:
Dann erstellen wir ein Mapping für alle Tools:
Wir benötigen außerdem etwas Code für den Tool-Aufruf und das Parsen:
Und jetzt können wir das Modell aufrufen!
Probieren Sie die 3 Notebooks aus, die wir für FunctionGemma erstellt haben:
Zuletzt aktualisiert
War das hilfreich?

