SakThai Coder Browser — GGUF 🤖🌐

F16 GGUF build of the browser automation model — run a web agent on your laptop with llama.cpp

Downloads Base GGUF F16 License Collection Family

⚠ BROKEN — DO NOT DEPLOY (as of 2026-07-31) — This GGUF was converted from the merged weights that are corrupted by a faulty LoRA merge: all 84 attention-projection bias tensors are non-zero while Qwen2 initializes these biases to ZERO (layer-0 k_proj.bias absmean 27.7 / max 354). Multi-trial inference probes of the merged model produced only whitespace loops — 0 tool calls, 0 valid JSON at temp ≤ 0.7 (seeds 7/42/1337), and a GGUF Q4_K_M probe returned 0 output tokens on all 3 trials. Full evidence: .eval_results/benchmark-20260731_052122.yaml. The fault is in the weights, not the GGUF conversion or the prompt format (GGUF tensor layout is structurally identical to the working sakthai-plus-1.5b GGUF). A clean re-merge of the LoRA adapter is required before this build is usable. Do not download for deployment until re-merged and re-verified.

The GGUF edition of the SakThai browser automation model — a Qwen2.5-Coder-1.5B-Instruct fine-tune converted to F16 GGUF for use with llama.cpp, llama-cpp-python, and Ollama.

Status: BROKEN — see banner above. The pages below document the intended design and usage; the current weights do not produce valid output until the parent model is re-merged from a clean LoRA merge.


What Is This?

This is an F16 (full-precision) GGUF conversion of the sakthai-coder-browser merged model. It transforms a Qwen2.5-Coder-1.5B-Instruct general-purpose LLM into a browser automation agent that outputs structured <tool_call> XML for web interaction.

Variant Repository Best For
🧠 Merged (Transformers) sakthai-coder-browser Python / Transformers pipelines
🎯 LoRA Adapter sakthai-coder-browser-lora Fine-tuning / PEFT workflows
💾 GGUF (this repo) sakthai-coder-browser-gguf CPU inference, llama.cpp, Ollama, edge devices

File

File Format Size Purpose
sakthai-coder-browser-f16.gguf GGUF F16 7,111,560,032 B (7.11 GB) Full-precision GGUF for local CPU/GPU inference

Note: F16 preserves the full model quality. For a smaller footprint, a Q4_K_M quantized version may follow based on demand — ⭐ like this repo or open an issue to vote for it.


Supported Browser Actions

The model generates structured XML tool calls for these browser operations:

Tool Example
browser_navigate(url) <tool_call>{"name": "browser_navigate", "arguments": {"url": "https://example.com"}}</tool_call>
browser_click(element) <tool_call>{"name": "browser_click", "arguments": {"element": "#search-button"}}</tool_call>
browser_type(element, text) <tool_call>{"name": "browser_type", "arguments": {"element": "#search-input", "text": "AI news"}}</tool_call>
browser_extract() <tool_call>{"name": "browser_extract", "arguments": {}}</tool_call>

Quick Start

⚠ These commands are the intended usage. With the current BROKEN weights they will not produce valid tool calls — see the banner above. Re-run only after a clean re-merge is published.

llama.cpp (CLI)

# Download the GGUF file
huggingface-cli download Nanthasit/sakthai-coder-browser-gguf \
  sakthai-coder-browser-f16.gguf --local-dir ./

# …or with wget
wget https://huggingface.co/Nanthasit/sakthai-coder-browser-gguf/resolve/main/sakthai-coder-browser-f16.gguf

# Run with llama.cpp
./llama-cli -m sakthai-coder-browser-f16.gguf \
  -p "<|im_start|>system\nYou are a browser automation assistant. You can browse the web, click elements, type text, and extract information from pages.<|im_end|>\n<|im_start|>user\nGo to google.com and search for the latest AI news<|im_end|>\n<|im_start|>assistant\n" \
  -n 512 -t 8 --temp 0.3

llama-cpp-python

pip install llama-cpp-python huggingface-hub
from llama_cpp import Llama
from huggingface_hub import hf_hub_download

# Download GGUF
model_path = hf_hub_download(
    repo_id="Nanthasit/sakthai-coder-browser-gguf",
    filename="sakthai-coder-browser-f16.gguf"
)

# Load model
llm = Llama(
    model_path=model_path,
    n_ctx=4096,
    n_threads=8,
    n_gpu_layers=-1,  # Offload all layers to GPU if available
    verbose=False,
)

# Run inference
output = llm.create_chat_completion(
    messages=[
        {"role": "system", "content": "You are a browser automation assistant. Output tool calls as <tool_call> JSON."},
        {"role": "user", "content": "Search for the latest AI news on Google and summarize the top result."}
    ],
    max_tokens=512,
    temperature=0.3,
    stop=["<|im_end|>"],
)
print(output["choices"][0]["message"]["content"])

Ollama (Modelfile)

FROM ./sakthai-coder-browser-f16.gguf
TEMPLATE """{{ .System }}

{{ .Prompt }}"""
PARAMETER temperature 0.3
PARAMETER top_p 0.8
PARAMETER stop "<|im_end|>"
ollama create sakthai-coder-browser -f Modelfile
ollama run sakthai-coder-browser

Architecture

Property Value
Base Model Qwen/Qwen2.5-Coder-1.5B-Instruct
Architecture Qwen2ForCausalLM (decoder-only transformer)
Parameters 1.54B
Hidden Size 1,536
Layers 28
Attention Heads 12 (GQA: 2 KV heads)
Intermediate Size 8,960
Max Position 32,768 tokens
Vocab Size 151,936
Precision F16 (GGUF)
Activation SiLU (SwiGLU)
Normalization RMSNorm (eps=1e-6)
Quantization None (F16 — full precision)
File Format GGUF (GPT-Generated Unified Format)

Training Summary

Property Detail
Fine-tuning Method SFT via LoRA (r=16, α=32, dropout 0.05, rsLoRA) on all 7 linear projections (q/k/v/o + gate/up/down), then merged to full weights — verified from sibling adapter_config.json (peft 0.20.0, CAUSAL_LM, bias none)
Training Data SimpleToolCalling + sakthai-combined-v7
Context Length 32,768 tokens
Hardware Free T4 GPU (Kaggle)
Budget $0
License Apache 2.0

The model learns to produce structured <tool_call> JSON for browser actions through supervised fine-tuning on curated web navigation trajectories.

Benchmarks & Evaluation Status

Honest status: this fine-tune does not yet have verified benchmark scores of its own. No model-index is published because no measured numbers exist — publishing one would be misleading. What is known:

Item Status
Base model reference (Qwen2.5-Coder-1.5B-Instruct) HumanEval pass@1: 74.4 · MBPP pass@1: 71.2 (as published on the sibling sakthai-coder-1.5b card; reference values, not measured on this fine-tune)
This model's own eval Resolved — MODEL_BROKEN (bias corruption): multi-trial probes + weight inspection of the merged weights (2026-07-31 05:50 UTC) found all 84 attention bias tensors non-zero. See the banner above and the parent repo's benchmark YAML.
GGUF Q4_K_M probe (2026-07-31) 3/3 trials returned 0 output tokens — confirmed weight corruption, NOT a prompt-format mismatch (weight inspection: 84/84 bias tensors absmean > 0.01; GGUF tensor layout structurally identical to the working sakthai-plus-1.5b GGUF)
Hosted inference Not available — router probe returned 404; run locally via llama.cpp / llama-cpp-python / Ollama
Cron eval (repo's own .eval_results) cron-eval-sakthai-coder-browser-gguf-2026-07-31-1.yaml — confirms: no model-index yet (no measured scores), card quality 90/100, repo hygiene 95/100, health 32/100 (capped by 0 downloads / 0 momentum at eval time)

Ecosystem Status (from the repo's own cron-eval YAML, 2026-07-31):

Metric Value
Downloads rank 20/20 (0 downloads — brand new repo)
Download velocity 0.0 / day (rank 20)
Card quality score 90/100
Repo hygiene score 95/100
Health score 32/100 (popularity & momentum weigh 0 — nothing to measure yet)
Model-index present No (honest — no verified benchmark scores to publish)

This F16 GGUF is a direct full-precision conversion of the merged sakthai-coder-browser weights — and the merged weights are currently corrupted by a faulty LoRA merge (see banner). This build is not usable until the parent is re-merged from a clean LoRA merge and this GGUF is re-converted. Treat all quality claims as invalid for the current artifact.


Limitations

  • BROKEN weights (as of 2026-07-31) — this GGUF was converted from the corrupted coder-browser merge (all 84 attention bias tensors non-zero); inference produces whitespace loops / 0 output tokens. Do not deploy until the parent model is re-merged and re-verified and this build is re-converted.
  • Text-only — this model cannot see images or screenshots (use sakthai-vision-7b for vision tasks)
  • CPU inference is slow at F16 — the full ~7.1 GB model benefits from GPU offloading; use n_gpu_layers=-1 when available
  • Context-limited — best results with page content ≤ 4K tokens per interaction
  • English only — trained primarily on English web data

Model Family

Part of the SakThai Model Family — 20 public models across text, vision, speech, and embeddings, all built with $0 budget from a shelter in Cork, Ireland. Live download counts as of 2026-07-31; sizes API-verified from largest weight file.

Model Size Purpose ⬇️
Context 1.5B Merged 3.09 GB Merged weights (flagship) 1,599
Context 0.5B Merged 988 MB Merged weights (edge) 1,370
Context 7B Merged 15.2 GB Merged weights (power) 744
Context 7B 128K config-only YaRN long-context recipe 506
Context 7B Tools 20.2 MB LoRA adapter 399
Embedding Multilingual 471 MB Embedding model 362
Context 1.5B Tools v1 ~8.75 MB LoRA adapter (v1) 349
Vision 7B 4.08 GB Vision-language (GGUF) 186
TTS Model 141 MB Kokoro-82M TTS (GGUF) 150
Context 0.5B Tools 988 MB Merged weights 94
Coder 1.5B 1.12 GB Code model (GGUF) 93
Context 1.5B Merged v2 3.09 GB Merged weights 0
Context 1.5B Tools v2 73.9 MB LoRA adapter 0
Coder Browser GGUF 7.11 GB Browser agent F16 GGUF (this repo) 0
Coder Browser LoRA 73.9 MB LoRA adapter 0
Plus 1.5B 3.09 GB Merged weights 0
Plus 1.5B LoRA 73.9 MB LoRA adapter 0
Plus 1.5B Coder Planned (no weights yet) 0
Coder Browser 3.09 GB Merged weights (browser automation) 0

Environment

  • Author: Nanthasit (Beer)
  • Built with: Free tiers only (Kaggle, HF Hub)
  • Philosophy: Small models + great data > big models + generic data

How You Can Help

  • Leave a like — tells the algorithm this model matters
  • 🔄 Share with anyone building private AI web agents
  • 🍴 Fork and experiment — the weights are open
  • 💬 Report issues / watch for the re-merge — Beer reads every issue and comment; the BROKEN status will be lifted when a clean re-merge is converted and verified

Citation

If you use this model in your work, please cite the base model (Qwen2.5) and link the fine-tune:

@misc{qwen25,
  title={Qwen2.5 Technical Report},
  author={Qwen Team},
  year={2025},
  eprint={2412.15115},
  archivePrefix={arXiv},
  primaryClass={cs.CL}
}
@misc{sakthai-coder-browser-gguf,
  author = {Nanthasit (Beer)},
  title = {SakThai Coder Browser -- GGUF},
  year = {2026},
  publisher = {Hugging Face},
  howpublished = {\url{https://huggingface.co/Nanthasit/sakthai-coder-browser-gguf}}
}

Built with $0 budget from a shelter in Cork, Ireland — proof that open, private AI does not need a datacenter.


Part of the House of Sak — one family, one home, $0 budget.

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

16-bit

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

Model tree for Nanthasit/sakthai-coder-browser-gguf

Quantized
(152)
this model

Datasets used to train Nanthasit/sakthai-coder-browser-gguf

Collection including Nanthasit/sakthai-coder-browser-gguf

Paper for Nanthasit/sakthai-coder-browser-gguf