Instructions to use yuxinlu1/gemma-4-12B-agentic-fable5-composer2.5-v2-3.5x-tau2-GGUF with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- llama-cpp-python
How to use yuxinlu1/gemma-4-12B-agentic-fable5-composer2.5-v2-3.5x-tau2-GGUF with llama-cpp-python:
# !pip install llama-cpp-python from llama_cpp import Llama llm = Llama.from_pretrained( repo_id="yuxinlu1/gemma-4-12B-agentic-fable5-composer2.5-v2-3.5x-tau2-GGUF", filename="MTP/gemma-4-12B-it-MTP-BF16.gguf", )
llm.create_chat_completion( messages = [ { "role": "user", "content": "What is the capital of France?" } ] ) - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- llama.cpp
How to use yuxinlu1/gemma-4-12B-agentic-fable5-composer2.5-v2-3.5x-tau2-GGUF with llama.cpp:
Install (macOS, Linux)
curl -LsSf https://llama.app/install.sh | sh # Start a local OpenAI-compatible server with a web UI: llama serve -hf yuxinlu1/gemma-4-12B-agentic-fable5-composer2.5-v2-3.5x-tau2-GGUF:Q4_K_M # Run inference directly in the terminal: llama cli -hf yuxinlu1/gemma-4-12B-agentic-fable5-composer2.5-v2-3.5x-tau2-GGUF:Q4_K_M
Install from WinGet (Windows)
winget install llama.cpp # Start a local OpenAI-compatible server with a web UI: llama serve -hf yuxinlu1/gemma-4-12B-agentic-fable5-composer2.5-v2-3.5x-tau2-GGUF:Q4_K_M # Run inference directly in the terminal: llama cli -hf yuxinlu1/gemma-4-12B-agentic-fable5-composer2.5-v2-3.5x-tau2-GGUF:Q4_K_M
Use pre-built binary
# Download pre-built binary from: # https://github.com/ggerganov/llama.cpp/releases # Start a local OpenAI-compatible server with a web UI: ./llama-server -hf yuxinlu1/gemma-4-12B-agentic-fable5-composer2.5-v2-3.5x-tau2-GGUF:Q4_K_M # Run inference directly in the terminal: ./llama-cli -hf yuxinlu1/gemma-4-12B-agentic-fable5-composer2.5-v2-3.5x-tau2-GGUF:Q4_K_M
Build from source code
git clone https://github.com/ggerganov/llama.cpp.git cd llama.cpp cmake -B build cmake --build build -j --target llama-server llama-cli # Start a local OpenAI-compatible server with a web UI: ./build/bin/llama-server -hf yuxinlu1/gemma-4-12B-agentic-fable5-composer2.5-v2-3.5x-tau2-GGUF:Q4_K_M # Run inference directly in the terminal: ./build/bin/llama-cli -hf yuxinlu1/gemma-4-12B-agentic-fable5-composer2.5-v2-3.5x-tau2-GGUF:Q4_K_M
Use Docker
docker model run hf.co/yuxinlu1/gemma-4-12B-agentic-fable5-composer2.5-v2-3.5x-tau2-GGUF:Q4_K_M
- LM Studio
- Jan
- vLLM
How to use yuxinlu1/gemma-4-12B-agentic-fable5-composer2.5-v2-3.5x-tau2-GGUF with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "yuxinlu1/gemma-4-12B-agentic-fable5-composer2.5-v2-3.5x-tau2-GGUF" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "yuxinlu1/gemma-4-12B-agentic-fable5-composer2.5-v2-3.5x-tau2-GGUF", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker
docker model run hf.co/yuxinlu1/gemma-4-12B-agentic-fable5-composer2.5-v2-3.5x-tau2-GGUF:Q4_K_M
- Ollama
How to use yuxinlu1/gemma-4-12B-agentic-fable5-composer2.5-v2-3.5x-tau2-GGUF with Ollama:
ollama run hf.co/yuxinlu1/gemma-4-12B-agentic-fable5-composer2.5-v2-3.5x-tau2-GGUF:Q4_K_M
- Unsloth Studio
How to use yuxinlu1/gemma-4-12B-agentic-fable5-composer2.5-v2-3.5x-tau2-GGUF with Unsloth Studio:
Install Unsloth Studio (macOS, Linux, WSL)
curl -fsSL https://unsloth.ai/install.sh | sh # Run unsloth studio unsloth studio -H 0.0.0.0 -p 8888 # Then open http://localhost:8888 in your browser # Search for yuxinlu1/gemma-4-12B-agentic-fable5-composer2.5-v2-3.5x-tau2-GGUF to start chatting
Install Unsloth Studio (Windows)
irm https://unsloth.ai/install.ps1 | iex # Run unsloth studio unsloth studio -H 0.0.0.0 -p 8888 # Then open http://localhost:8888 in your browser # Search for yuxinlu1/gemma-4-12B-agentic-fable5-composer2.5-v2-3.5x-tau2-GGUF to start chatting
Using HuggingFace Spaces for Unsloth
# No setup required # Open https://huggingface.co/spaces/unsloth/studio in your browser # Search for yuxinlu1/gemma-4-12B-agentic-fable5-composer2.5-v2-3.5x-tau2-GGUF to start chatting
- Pi
How to use yuxinlu1/gemma-4-12B-agentic-fable5-composer2.5-v2-3.5x-tau2-GGUF with Pi:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf yuxinlu1/gemma-4-12B-agentic-fable5-composer2.5-v2-3.5x-tau2-GGUF:Q4_K_M
Configure the model in Pi
# Install Pi: npm install -g @mariozechner/pi-coding-agent # Add to ~/.pi/agent/models.json: { "providers": { "llama-cpp": { "baseUrl": "http://localhost:8080/v1", "api": "openai-completions", "apiKey": "none", "models": [ { "id": "yuxinlu1/gemma-4-12B-agentic-fable5-composer2.5-v2-3.5x-tau2-GGUF:Q4_K_M" } ] } } }Run Pi
# Start Pi in your project directory: pi
- Hermes Agent new
How to use yuxinlu1/gemma-4-12B-agentic-fable5-composer2.5-v2-3.5x-tau2-GGUF with Hermes Agent:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf yuxinlu1/gemma-4-12B-agentic-fable5-composer2.5-v2-3.5x-tau2-GGUF:Q4_K_M
Configure Hermes
# Install Hermes: curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash hermes setup # Point Hermes at the local server: hermes config set model.provider custom hermes config set model.base_url http://127.0.0.1:8080/v1 hermes config set model.default yuxinlu1/gemma-4-12B-agentic-fable5-composer2.5-v2-3.5x-tau2-GGUF:Q4_K_M
Run Hermes
hermes
- Atomic Chat new
- OpenClaw new
How to use yuxinlu1/gemma-4-12B-agentic-fable5-composer2.5-v2-3.5x-tau2-GGUF with OpenClaw:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf yuxinlu1/gemma-4-12B-agentic-fable5-composer2.5-v2-3.5x-tau2-GGUF:Q4_K_M
Configure OpenClaw
# Install OpenClaw: npm install -g openclaw@latest # Register the local server and set it as the default model: openclaw onboard --non-interactive --mode local \ --auth-choice custom-api-key \ --custom-base-url http://127.0.0.1:8080/v1 \ --custom-model-id "yuxinlu1/gemma-4-12B-agentic-fable5-composer2.5-v2-3.5x-tau2-GGUF:Q4_K_M" \ --custom-provider-id llama-cpp \ --custom-compatibility openai \ --custom-text-input \ --accept-risk \ --skip-health
Run OpenClaw
openclaw agent --local --agent main --message "Hello from Hugging Face"
- Docker Model Runner
How to use yuxinlu1/gemma-4-12B-agentic-fable5-composer2.5-v2-3.5x-tau2-GGUF with Docker Model Runner:
docker model run hf.co/yuxinlu1/gemma-4-12B-agentic-fable5-composer2.5-v2-3.5x-tau2-GGUF:Q4_K_M
- Lemonade
How to use yuxinlu1/gemma-4-12B-agentic-fable5-composer2.5-v2-3.5x-tau2-GGUF with Lemonade:
Pull the model
# Download Lemonade from https://lemonade-server.ai/ lemonade pull yuxinlu1/gemma-4-12B-agentic-fable5-composer2.5-v2-3.5x-tau2-GGUF:Q4_K_M
Run and chat with the model
lemonade run user.gemma-4-12B-agentic-fable5-composer2.5-v2-3.5x-tau2-GGUF-Q4_K_M
List all available models
lemonade list
Recommendations
I've tried using this model, but I cannot get it to produce any useful outputs or interactions. It seems to be fairly specialized to your setup (it constantly tries to invoke skills and tools that do not exist, does not understand file paths in the slightest, and completely ignores most instructions). I tried with your llama.ccp recommended flags, but I feel like I must be doing something wrong
--n-gpu-layers -1 /
--no-mmap -fa on /
--jinja /
--temp 1.0 --top-p 0.95 --top-k 64 /
and a bunch of other configurations, but it is unusable for me currently. Here is my exact set of params for transparency (for gemma4-v2-Q4_K_M):
PARAMS_GEMMA4=(--ctx-size 100000 --flash-attn on --n-gpu-layers -1 --temp 1.0 --top-p 0.95 --top-k 64 --no-mmap --jinja -m $MODEL_PATH_GEMMA4)
So I was hoping to find out your recommendations and if there were any specific plugins/skills/tools the model was trained against. Do you have any recommendations for other changes to the model input params?
I'm still new to tweaking local llms, so I'd appreciate any insight/input you have. Thank you!
Good news first: your params are basically fine β this isn't a config bug like some of the other reports here, it's a
model-fit issue. Let me explain what's going on.
v2 is an agentic / coding-execution model, not a general chatbot. It was trained almost entirely on agentic coding
traces β reading files, editing them, running shell/terminal tools β using Gemma 4's native tool-calling format. So
when you run it as a plain chat assistant with no tools actually wired up, it behaves like it's mid-agentic-session:
it tries to call tools/skills that aren't there, "references file paths" it can't reach, and feels like it ignores
your chat instructions. That's not it being broken β it's it doing exactly what it was specialized for, just in the
wrong environment.
So my recommendation depends on what you want:
- If you want a general assistant / chat / Q&A / planning: use my main distillation model instead β
yuxinlu1/gemma-4-12B-it-Claude-4.6-4.8-Opus-GGUF. That one is tuned for general reasoning and behaves like a normal
assistant. (Plain google/gemma-4-12B-it also works for that.) - If you want agentic coding: run v2 inside a real agentic harness β Cline, Roo, OpenCode, or Claude Code via a bridge
β where actual file/shell tools exist and --jinja parses its tool calls into real actions. In that setup the
tool-calling becomes the feature instead of noise.
On your question about specific plugins/skills: there's no special plugin ecosystem it was trained against. The
agentic data was coding sessions (file read/edit/write + shell commands) in Gemma 4's native tool format. What you
need isn't a particular plugin β it's a harness that exposes real tools, plus --jinja so the tool calls are parsed.
Param tweaks:
- --ctx-size 100000 is large; unless you have a lot of VRAM, drop to 16384β32768. Won't change the behavior above, but
it'll save memory and speed things up. - Sampling is good as-is. For long one-shot code generation, use --repeat-penalty 1.0 (and don't stack DRY); for
shorter/agentic turns 1.05β1.1 is fine. - If you do use it for chat anyway, a tight system prompt helps rein it in.
Honest heads-up: the over-eager tool-calling on simple turns is a known rough edge of v2. I'm specifically fixing it
in v3 (self-gating, so it only reaches for tools/extended thinking when the task actually needs it). Thanks for the
detailed write-up β and don't worry, you weren't doing anything wrong.
thank for your effort , i try your model for agentic code generation an analityc plc /programmable logic control , i still trying using this model and let see
@ilyassayunus88 Thanks, and glad you're giving it a go! One honest heads-up for your case: PLC / IEC 61131-3 (structured text, ladder, vendor dialects like Siemens SCL or Codesys) is a niche the model wasn't specifically trained on β its agentic strength is general file-read/edit/shell coding, so expect solid help on the surrounding scripting and logic, but weaker coverage on vendor-specific PLC syntax. Run it inside a real agentic harness with the tools actually wired up, and keep the tool list focused. If you hit specific failures, paste the snippet here and I'm happy to dig in.
Thanks for the in depth reply, I really appreciate it!
I should have been more clear that I am running it within an agentic harness (OpenCode), which was why I was surprised that it was trying to invoke non-existing skills/tools and was struggling with file paths. I played around with it some more and I could get it to write to a file within the current directory or a couple of levels deep, but it started hallucinating paths again for more than a couple directories deep. Probably the biggest issue I've been dealing with is it making up more work to do after it has completed simple instructions. Here are a couple of the interactions so you can see what I mean:
In the first one it decided to write script.js instead of script.sh, then ran it, then started trying to commit the work. In the second, I fixed my grammar mistake and it went a little bit better until it decided to run the script again which confused it into cloning the official gemma repo for some reason. In the last one, I gave it a sub-directory to output to, and that resulted in it hallucinating where the current directory was.
To be transparent, there were a couple of runs where it did follow the instructions and created the correct file. Only one of the successful ones stopped after completing the task though, all the others started committing, tagging, pushing, moving to other directories to do work, etc. --repeat-penalty helped a lot, as did turning down the temp to 0.6, but it was still hallucinating work each time. It's a little scary to leave unsupervised lol. I tried keeping it restricted to read-only mode as a primary agent at one point to keep it from going wild on my system, but it spawned a subagent with write mode to start making a mess. I think using it as a subagent with a dedicated agent file to restrict it's actions is probably the best use case, I'll need to play around with that some more.
I'm also going to checkout your v1 model, and I look forward to seeing how the v3 tuning works out!
One other thing, could you elaborate on what you meant by "(and don't stack DRY);"? I understand the general concept, but I'm not sure if you're referring to my prompt style or something that can be tweaked with settings. Thanks again, and keep up the good work!


