CoolFace
Modelpublic

TristanQUINTARD/Gemma-4-Agentic-E2B-GGUF

sourceHugging Faceotherupdated 3mo agoView on Hugging Face
3likes85downloads
Model Card

gemma-4-E2B-it-uncensored-agentic-gguf

Développé et entraîné par [Treestan325](https://huggingface.co/Treestan325)

Version quantifiée en GGUF (Q4_K_M) de `gemma-4-E2B-it-uncensored-agentic`, un modèle ajusté spécifiquement pour les tâches agentiques complexes, l'utilisation d'outils (tool-use) et le raisonnement par étapes (Chain-of-Thought). Ce modèle est basé sur `TrevorJS/gemma-4-E2B-it-uncensored`, fine-tuné à l'aide d'Unsloth sur Google Colab.

Le modèle intègre le support natif des blocs de réflexion (<think>...</think>) avant la génération de code ou l'appel de fonctions, permettant une intégration propre dans des boucles d'agents autonomes (ex. OpenCode, E2B executor).


⚡ Caractéristiques techniques de l'entraînement

Le modèle a été entraîné selon une configuration hautement spécialisée pour les agents :

  • —Base de départ : TrevorJS/gemma-4-E2B-it-uncensored (chargé en précision 4-bit QLoRA).
  • —LoRA étendu (Focus Agentic) : Application de LoRA sur l'intégralité des modules de projection (q_proj, k_proj, v_proj, o_proj, gate_proj, up_proj, down_proj) avec un rang élevé $r = 32$ et un $\alpha = 64$ pour capturer la syntaxe complexe des appels de fonctions et du code.
  • —Pas de packing de contexte (`packing = False`) : Choix essentiel lors du SFT pour préserver l'intégrité logique des limites de sessions d'agents et éviter d'interférer avec le comportement de tool-calling.
  • —Longueur de contexte maximale (`max_seq_length`) : 4096 tokens (optimisé pour stocker les longues traces d'exécution et les historiques de conversation d'agents).
  • —Taux d'apprentissage doux (`learning_rate = 2e-5`) : Configuration mesurée pour préserver les poids uncensored du modèle d'origine tout en affinant ses capacités logiques.

📊 Données d'entraînement et fusion

Le modèle a été entraîné en fusionnant plusieurs jeu de données de traces de raisonnement brutes sans modification de texte (pour préserver la pureté des chemins logiques) :

  1. 1.Traces Hermes Agentic (lambda/hermes-agent-reasoning-traces, sous-ensembles kimi et glm-5.1).
  2. 2.Traces Qwen Pi (armand0e/qwen3.7-max-pi-traces).

La standardisation et la tokenisation ont été réalisées via la bibliothèque Teich avec l'option enable_thinking: True activée pour forcer le comportement d'analyse pas-à-pas.


🚀 Guide de démarrage rapide

Le fichier quantifié model_gguf/gemma-4-E2B-it-uncensored-agentic-Q4_K_M.gguf contient déjà le gabarit d'invite (chat template) natif configuré avec le support des outils.

Option 1 : Utilisation avec Ollama

  1. 1.Créez un fichier nommé Modelfile :
dockerfile
FROM ./model_gguf/gemma-4-E2B-it-uncensored-agentic-Q4_K_M.gguf

# Paramètres optimaux d'inférence
PARAMETER temperature 0.6
PARAMETER top_p 0.95
PARAMETER num_ctx 4096

# Template de discussion natif avec mode de réflexion activé
TEMPLATE """{{ if .System }}<|im_start|>system
{{ .System }}<|im_end|>
{{ end }}{{ if .Prompt }}<|im_start|>user
{{ .Prompt }}<|im_end|>
{{ end }}<|im_start|>assistant
{{ .Response }}<|im_end|>"""
  1. 1.Créez et lancez le modèle :
bash
ollama create gemma4-agentic -f Modelfile
ollama run gemma4-agentic

Option 2 : Llama.cpp (llama-cli)

Pour exécuter le modèle en ligne de commande locale :

bash
llama-cli \
  -m model_gguf/gemma-4-E2B-it-uncensored-agentic-Q4_K_M.gguf \
  -p "<|im_start|>user\nWrite a python script to run a binary search over a sorted list and explain its complexity.<|im_end|>\n<|im_start|>assistant\n<think>\n" \
  -n 1024 \
  --temp 0.6 --top-p 0.95 \
  -c 4096

🛠️ Recommandations d'échantillonnage (Sampling)

Pour exploiter le raisonnement de l'agent sans causer de boucles répétitives :

ParamètreValeur recommandéeJustification
temperature0.6Laisse une flexibilité suffisante pour la génération de code sans halluciner.
top_p0.95Concentre la probabilité sur les sorties les plus propres.
max_new_tokens1024 / 2048Budget généreux nécessaire pour le <think> et le code de sortie.

⚠️ Limites et Avertissements

  • —Modèle Uncensored : Ce modèle n'a pas subi l'alignement de sécurité classique. Il est capable de traiter des sujets techniques de cybersécurité ou d'ingénierie système sans refus. Il incombe à l'intégrateur d'ajouter une couche de filtrage applicatif si le modèle est exposé à des utilisateurs finaux.
  • —Formatage `<think>` : Les réponses s'ouvrent généralement par une balise <think> et se referment par </think> avant d'apporter la réponse ou d'appeler un outil. Assurez-vous que vos scripts de parsing d'agents en tiennent compte.

📜 Licence et Remerciements