How to use from
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 marzoukbaig14/committed-gguf:Q4_K_M
# Run inference directly in the terminal:
llama cli -hf marzoukbaig14/committed-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 marzoukbaig14/committed-gguf:Q4_K_M
# Run inference directly in the terminal:
llama cli -hf marzoukbaig14/committed-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 marzoukbaig14/committed-gguf:Q4_K_M
# Run inference directly in the terminal:
./llama-cli -hf marzoukbaig14/committed-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 marzoukbaig14/committed-gguf:Q4_K_M
# Run inference directly in the terminal:
./build/bin/llama-cli -hf marzoukbaig14/committed-gguf:Q4_K_M
Use Docker
docker model run hf.co/marzoukbaig14/committed-gguf:Q4_K_M
Quick Links

Committed — Qwen3-1.7B (Q4_K_M GGUF) · higher-specificity option

A small model fine-tuned to write Conventional Commits messages from a git diff. It runs locally on CPU via llama.cpp, so your code never leaves your machine.

This is the larger of two sizes. Committed defaults to the smaller 0.6B GGUF — it matches this 1.7B on commit-type accuracy and faithfulness at ⅓ the size and a ~397 MB download. This 1.7B (1 GB) is the bigger sibling: worth it when you want the extra specificity (0.67 vs the 0.6B's 0.55), i.e. more consistently concrete descriptions. Most users want the 0.6B; reach for this if concreteness matters more than footprint.

This repo holds the merged, quantized GGUF used for serving. The training dataset, LoRA adapter, and source code are linked below.

Live Demo · Gradio Space · 0.6B GGUF · 1.7B GGUF (this repo) · 0.6B adapter · 1.7B adapter · Dataset · GitHub

Details

  • Base: Qwen/Qwen3-1.7B (Apache-2.0)
  • Method: QLoRA fine-tune (PEFT LoRA + TRL SFTTrainer, vanilla transformers), merged into the base, converted to GGUF
  • Quantization: Q4_K_M (~1 GB)
  • Task: single-file git diff → one Conventional Commits subject line, type(scope): description
  • Decoding: GBNF grammar-constrained, so output is always a well-formed CC line
  • Trained on: marzoukbaig14/committed-train (~58k filtered CommitChronicle commits, 16 languages)

Usage

The trained behavior depends on the exact prompt rendering used in training plus the GBNF grammar applied at decode time, so a bare llama-cpp-python prompt will not reproduce the evaluated output. Run it through the project's inference path instead.

Via the CLI (no token needed; the GGUF is public). The CLI defaults to the 0.6B — pass --model 1.7b for this model:

pip install --extra-index-url https://abetlen.github.io/llama-cpp-python/whl/cpu "committed @ git+https://github.com/marzoukbaig14/Committed.git"
git diff | committed --model 1.7b

Or call it through the repo's engine.py, the FastAPI endpoint, or the Gradio Space — all linked below. Full instructions and options are in the repo README.

Results

Evaluated against the un-tuned Qwen3-1.7B base on a 442-example test set, scored by an LLM judge (DeepSeek) on four axes; the judge was validated against 50 hand-rated examples. Headline numbers are reweighted to the true commit-type distribution.

The four-arm comparison — both base models, both fine-tunes, all judged by the same DeepSeek judge so the numbers are directly comparable:

Metric 0.6B base 0.6B fine-tune 1.7B base 1.7B fine-tune
Type accuracy 0.154 0.601 0.131 0.637
Type-correctness 0.296 0.726 0.296 0.778
Faithfulness 0.285 0.810 0.491 0.848
Completeness 0.353 0.729 0.543 0.776
Specificity 0.414 0.545 0.814 0.667
Conjunctive (all 4) 0.101 0.359 0.175 0.471
Graded mean (0–3) 0.777 2.094 1.447 2.139
feat-share of outputs 86.7% 9.7% 95.5% 8.4%

The finding: both base models "feat-collapse" — they label ~87–96% of all diffs feat regardless of content, scoring below a trivial always-guess-fix baseline (0.489) on type. Fine-tuning breaks the collapse on both. This 1.7B fine-tune is the stronger of the two overall, with its main edge in specificity (0.667 vs the 0.6B's 0.545) — but the margins on type, faithfulness, completeness, and the graded mean (2.139 vs 2.094) are small, which is why the 0.6B is the default and this is the higher-specificity option rather than the flagship.

Honest caveat on the judge: agreement with human raters is moderate-to-substantial on three axes (κ ≈ 0.56–0.61) but weakest on specificity (κ 0.34) — the very axis this model leads on — so that margin carries the most judge uncertainty. These DeepSeek-judged numbers are not comparable to any earlier Gemini-judged figures that may have appeared on this card previously; only the deltas within this all-DeepSeek table are valid.

Full before/after, the feat-collapse analysis, and the judge validation are in the eval writeup: FINDINGS_v1.md.

Related

License

Apache-2.0, inherited from the Qwen3-1.7B base.

Citation

Trained with TRL. Dataset derived from CommitChronicle (Eliseeva et al., From Commit Message Generation to History-Aware Commit Message Generation, arXiv:2308.07655).

Downloads last month
450
GGUF
Model size
2B params
Architecture
qwen3
Hardware compatibility
Log In to add your hardware

4-bit

Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for marzoukbaig14/committed-gguf

Finetuned
Qwen/Qwen3-1.7B
Quantized
(305)
this model

Dataset used to train marzoukbaig14/committed-gguf

Paper for marzoukbaig14/committed-gguf