Instructions to use kanaton/WebCoder-T28g-GGUF with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- llama.cpp
How to use kanaton/WebCoder-T28g-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 kanaton/WebCoder-T28g-GGUF:Q4_K_M # Run inference directly in the terminal: llama cli -hf kanaton/WebCoder-T28g-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 kanaton/WebCoder-T28g-GGUF:Q4_K_M # Run inference directly in the terminal: llama cli -hf kanaton/WebCoder-T28g-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 kanaton/WebCoder-T28g-GGUF:Q4_K_M # Run inference directly in the terminal: ./llama-cli -hf kanaton/WebCoder-T28g-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 kanaton/WebCoder-T28g-GGUF:Q4_K_M # Run inference directly in the terminal: ./build/bin/llama-cli -hf kanaton/WebCoder-T28g-GGUF:Q4_K_M
Use Docker
docker model run hf.co/kanaton/WebCoder-T28g-GGUF:Q4_K_M
- LM Studio
- Jan
- vLLM
How to use kanaton/WebCoder-T28g-GGUF with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "kanaton/WebCoder-T28g-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": "kanaton/WebCoder-T28g-GGUF", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker
docker model run hf.co/kanaton/WebCoder-T28g-GGUF:Q4_K_M
- Ollama
How to use kanaton/WebCoder-T28g-GGUF with Ollama:
ollama run hf.co/kanaton/WebCoder-T28g-GGUF:Q4_K_M
- Unsloth Desktop
- Pi
How to use kanaton/WebCoder-T28g-GGUF with Pi:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf kanaton/WebCoder-T28g-GGUF:Q4_K_M
Configure the model in Pi
# Install Pi: npm install -g @earendil-works/pi-coding-agent # Add to ~/.pi/agent/models.json: { "providers": { "llama-cpp": { "baseUrl": "http://localhost:8080/v1", "api": "openai-completions", "apiKey": "none", "models": [ { "id": "kanaton/WebCoder-T28g-GGUF:Q4_K_M" } ] } } }Run Pi
# Start Pi in your project directory: pi
- Docker Model Runner
How to use kanaton/WebCoder-T28g-GGUF with Docker Model Runner:
docker model run hf.co/kanaton/WebCoder-T28g-GGUF:Q4_K_M
- Lemonade
How to use kanaton/WebCoder-T28g-GGUF with Lemonade:
Pull the model
# Download Lemonade from https://lemonade-server.ai/ lemonade pull kanaton/WebCoder-T28g-GGUF:Q4_K_M
Run and chat with the model
lemonade run user.WebCoder-T28g-GGUF-Q4_K_M
List all available models
lemonade list
- Hermes Agent
How to use kanaton/WebCoder-T28g-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 kanaton/WebCoder-T28g-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 kanaton/WebCoder-T28g-GGUF:Q4_K_M
Run Hermes
hermes
- Atomic Chat
- OpenClaw
How to use kanaton/WebCoder-T28g-GGUF with OpenClaw:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf kanaton/WebCoder-T28g-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 "kanaton/WebCoder-T28g-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"
Download README.md from kanaton/WebCoder-T28g-GGUF: direct link, hf CLI and curl.
- Browser
- Download file 9.13 kB
-
https://huggingface.co/kanaton/WebCoder-T28g-GGUF/resolve/main/README.md
- Command line
-
hf download hf://kanaton/WebCoder-T28g-GGUF/README.md
-
curl -L -o README.md https://huggingface.co/kanaton/WebCoder-T28g-GGUF/resolve/main/README.md
license: apache-2.0
language:
- en
- fr
base_model: Qwen/Qwen2.5-Coder-1.5B-Instruct
base_model_relation: finetune
pipeline_tag: text-generation
library_name: gguf
tags:
- gguf
- qwen2
- code
- php
- sql
- javascript
- experimental
WebCoder T28g — experimental local coding assistant
WebCoder T28g is a fine-tuned derivative of Qwen2.5-Coder-1.5B-Instruct, adapted by Pierre Jean Duvivier for local web-development experiments. This repository distributes the adopted T28g weights from the WebCoder project release v2.3.5, merged and quantized to GGUF Q4_K_M.
This is an experimental download for independent testing. It is not a hosted chat service. No retraining or weight changes were performed for this publication.
What is included
| File | Purpose |
|---|---|
webcoder-t28g-q4_k_m.gguf |
Merged 1.5B model, Q4_K_M quantization |
webcoder_no_tools.jinja |
Chat template shipped with release v2.3.5 |
README.md |
Attribution, instructions, evaluation summary and limitations |
LICENSE |
Apache License 2.0, retained from the upstream model |
The GGUF is 986,048,096 bytes (approximately 940 MiB).
SHA-256:
7bea9c9d8bbc7c2450967a9e7ee55b6dd152b013a794e43926295855fea8684a
Provenance and training
- Base: Qwen/Qwen2.5-Coder-1.5B-Instruct.
- Base revision:
2e1fd397ee46e1388853d2af2c993145b0f1098a. - Base architecture and pretraining: Qwen, Alibaba Cloud. WebCoder is a downstream adaptation, not a model pretrained from scratch.
- Adaptation: T28g LoRA, rank 8, targeting
q_projandv_proj; 320 training steps on the project's CPU pipeline. - Reported training corpus: 267 examples, comprising 73 code examples, 50 chat examples and 144 SQL examples.
- Export: LoRA merged into the base, then converted and quantized to GGUF Q4_K_M.
- Tested inference backend: llama.cpp commit
77757a34672a888845a09ab45728b8d34aa475ff.
This initial release contains the inference artifact and chat template. It does not include the training corpus, LoRA adapter, test fixtures or a reproducible training package. Corpus counts describe the project records; they are not counts of independently evaluated complex applications.
The base model is distributed under Apache License 2.0. This distribution retains that license. Downstream modifications consist of the T28g adaptation, merge and quantization by Pierre Jean Duvivier. No affiliation with or endorsement by the upstream authors is implied.
Intended use
Local experimentation with PHP, SQL, JavaScript, HTML and CSS; explaining code; and proposing code changes for human review. The project uses separate instructions for ordinary chat and for its file-editing worker protocol.
The model is not an autonomous coding agent. It cannot read or edit local files, run tests, access a database or execute tools merely because those actions are requested in chat. Such capabilities require an external application or orchestrator.
Démarrage rapide en français
1. Télécharger les fichiers
Avec le client officiel Hugging Face installé :
hf download kanaton/WebCoder-T28g-GGUF --local-dir WebCoder-T28g-GGUF
cd WebCoder-T28g-GGUF
Il est aussi possible de télécharger les fichiers depuis l'onglet Files and versions. Le modèle est déjà fusionné : aucun téléchargement séparé de la base Qwen n'est nécessaire pour l'inférence GGUF.
2. Vérifier le modèle
Linux / WSL :
sha256sum webcoder-t28g-q4_k_m.gguf
PowerShell :
Get-FileHash .\webcoder-t28g-q4_k_m.gguf -Algorithm SHA256
Comparer le résultat à l'empreinte publiée plus haut.
3. Lancer le chat avec llama.cpp
Installer ou compiler llama.cpp avec llama-server. Le template Jinja fourni est nécessaire pour reproduire la configuration de chat testée.
Depuis le dossier téléchargé, avec llama-server accessible dans le PATH :
llama-server --model webcoder-t28g-q4_k_m.gguf --alias webcoder --chat-template-file webcoder_no_tools.jinja --ctx-size 4096 --parallel 1 --n-gpu-layers 0 --threads 6 --threads-batch 6 --host 127.0.0.1 --port 8081
Sous Windows, le programme peut s'appeler llama-server.exe. Adapter son chemin à l'installation.
Ouvrir ensuite http://127.0.0.1:8081/ dans un navigateur. Le chargement peut prendre un moment ; attendre que le serveur soit prêt.
Le contexte de démarrage est fixé à 4096 tokens pour limiter les ressources nécessaires. Le profil du projet utilise aussi 32768 tokens : remplacer --ctx-size 4096 par --ctx-size 32768 si la mémoire disponible le permet. Ce réglage augmente le contexte servi ; il ne garantit pas de bonnes réponses sur des applications longues.
Le poids du fichier n'est pas la mémoire totale requise. La mémoire dépend notamment du contexte, du cache KV et du backend. La validation sur une véritable machine limitée à 8 Go reste à effectuer ; les chiffres mémoire de la base 7B ne doivent pas être attribués à ce modèle.
4. Utiliser le bon prompt
Le template fourni définit cette identité par défaut lorsqu'aucun message système n'est envoyé :
Tu es WebCoder, un assistant de developpement web cree par Pierre Jean Duvivier.
Si l'application cliente remplace le message système, utiliser pour le chat :
Tu es WebCoder, un assistant de developpement web cree par Pierre Jean Duvivier. Reponds en langage naturel, en francais, de facon claire et concise. Explique et discute librement. N'utilise un bloc de fichier que si l'on te demande explicitement de modifier un fichier.
Cette identité désigne l'adaptation WebCoder. La base technique reste Qwen2.5-Coder-1.5B-Instruct, comme indiqué dans la provenance.
Pour le mode worker, demander uniquement un bloc par fichier modifié, avec le contenu complet :
Reponds UNIQUEMENT avec un bloc par fichier modifie, au format exact :
```file:src/example.php
<contenu complet du fichier>
```
N'ajoute aucun texte avant ou apres les blocs.
Le backend propose une API compatible avec les requêtes de chat OpenAI à l'adresse locale /v1/chat/completions, sous l'alias webcoder.
Evaluation: project-reported results
These results come from small internal project test sets. They are not public leaderboard scores, independent audits or guarantees of real-world application correctness.
| Evaluation | T28g result | Conditions |
|---|---|---|
| Historical sealed-4 set, 40 short tasks | 32/40 first attempt; 37/40 within corrections | Worker harness; up to two corrections; PHP, JavaScript and SQL |
| Later PHP/WordPress holdout, 16 cases | 8/16 successful | Same batch repair harness used for the T28j comparison; up to three patches |
The historical sealed-4 result includes eight PHP, eight JavaScript and 24 SQL tasks. These are short tasks and do not establish reliable generation of larger multi-file applications. The later PHP/WordPress result is included because it better exposes remaining limitations.
Correction scores require an external test-and-feedback loop. They are not equivalent to success in a single chat answer. SQL results can also depend on the project's few-shot prompting and evaluation setup. Exact reproduction of those historical scores requires the original harness and fixtures, which are not part of this download.
Known limitations
- First drafts may contain syntax, logic, security and integration errors. Corrections can repeat failures or introduce regressions.
- Multi-file applications, persistent state and unfamiliar workflows remain difficult. A larger served context does not resolve these limitations by itself.
- There is no validated native tool-calling capability. The supplied template avoids describing tools; it does not turn the model into an agent.
- The WebCoder identity depends on the chat prompt/template. With a generic system prompt, tests produced incorrect creator claims. Direct questions about the underlying model also produced fabricated answers. Use the provenance in this model card instead of the model's self-description.
- Treat generated code as untrusted. Review it and test it in an isolated environment before using it with real files, credentials, users or data.
- T28h, T28i and T28j are separate experimental candidates. Their weights and results are not included or attributed to this T28g release.
Feedback for testing
Please use the repository's Community discussions to report a reproducible example. Include your runtime/version, launch options, whether you used the supplied template, the prompt, the generated answer, the expected behavior and the error observed.
Use synthetic or shareable examples and remove credentials and private information before posting. State whether the failure happened on the initial generation or after a correction. This helps distinguish prompt, runtime and model limitations.