WebCoder-T28g-GGUF / README.md
kanaton's picture
Release WebCoder T28g GGUF (v2.3.5 experimental)
e5f8ba6 verified
|
Raw History Blame Contribute Delete
9.13 kB
metadata
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_proj and v_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.