rockypod commited on
Commit
8bc3864
Β·
verified Β·
1 Parent(s): d2f663d

v3.0.0: README update (103Q scorecard, T11 server functions, Q8/Q16/Q21 fixes)

Browse files
Files changed (1) hide show
  1. README.md +176 -104
README.md CHANGED
@@ -6,113 +6,127 @@ language:
6
  - vi
7
  base_model: Qwen/Qwen3-Coder-14B
8
  tags:
9
- - rust
10
  - dioxus
11
- - dioxus-0.7
12
- - rsx
 
13
  - fine-tuned
14
  - raft
15
  - code
16
- - mlx
17
- - gguf
18
- - wcag
19
- - accessibility
20
- - tailwind
21
- - unsloth
22
- - qwen3
23
- - local-llm
24
- - continue-dev
25
  pipeline_tag: text-generation
26
- model-index:
27
- - name: neotoi-coder-v2
28
- results:
29
- - task:
30
- type: text-generation
31
- metrics:
32
- - type: custom
33
- name: Dioxus 0.7 Weighted Exam (100Q)
34
- value: 96.8
35
  ---
36
 
37
- # Neotoi Coder v2.0
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
38
 
39
- A Rust/Dioxus 0.7 specialist LLM β€” 96.8% on a 100-question weighted exam.
40
- Built with RAFT on a homelab RTX 3090 Ti. No cloud GPUs.
41
 
42
- **[Read the whole story on RockyPod.com β†’](https://rockypod.com/blog/neotoi-coder-v2-release)**
43
- **[Companion GitHub repo β€” benchmarks and integration guides](https://github.com/rockypod/neotoi-coder)**
44
 
45
- ## Direct Download
 
 
 
 
 
 
 
 
 
 
 
 
 
46
 
47
- No account or approval required.
48
 
49
- | File | Size | Format |
50
- |---|---|---|
51
- | [neotoi-coder-v2.0-q4_k_m.gguf](https://huggingface.co/rockypod/neotoi-coder/resolve/main/neotoi-coder-v2.0-q4_k_m.gguf) | 8.4GB | GGUF Q4_K_M |
52
- | [mlx/ weights](https://huggingface.co/rockypod/neotoi-coder/tree/main/mlx) | 7.8GB | MLX 4-bit |
53
 
54
- ## Quick Start
 
 
 
 
55
 
56
- ### Apple Silicon (mlx_lm)
57
- ```bash
58
- pip install mlx-lm
59
- mlx_lm server --model /path/to/neotoi-v2.0-mlx --port 8081
60
- ```
61
 
62
- ### Linux (Ollama)
63
- ```bash
64
- ollama create neotoi-coder-v2 -f Modelfile
65
- ollama run neotoi-coder-v2
66
- ```
67
 
68
- ### LM Studio
69
- Download `neotoi-coder-v2.0-q4_k_m.gguf` above.
70
- See the [LM Studio setup guide](https://github.com/rockypod/neotoi-coder/blob/main/integration/lm_studio.md).
 
 
 
71
 
72
- ### Continue.dev
73
- See the [Continue.dev config](https://github.com/rockypod/neotoi-coder/blob/main/integration/continue_dev.json).
74
 
75
- ### Zed Editor
76
- See the [Zed setup guide](https://github.com/rockypod/neotoi-coder/blob/main/integration/zed.md).
77
 
78
- ## Exam Results
 
 
79
 
80
- | Tier | Score | Max | Status |
81
- |---|---|---|---|
82
- | T1 Fundamentals | 11/12 | 12 | βœ… |
83
- | T2 RSX Syntax | 10/12 | 12 | βœ… |
84
- | T3 Signal Hygiene | 12/12 | 12 | βœ… Perfect |
85
- | T4 WCAG/ARIA | 14/14 Γ— 1.5 | 21 | βœ… Perfect |
86
- | T5 use_resource | 8/8 Γ— 1.5 | 12 | βœ… Perfect |
87
- | T6 Hard Reasoning | 10/10 Γ— 2.0 | 20 | βœ… Perfect |
88
- | T7 Primitives+CSS | 11/12 Γ— 1.5 | 18 | βœ… |
89
- | T8 GlobalSignal/i18n | 8/8 Γ— 1.5 | 12 | βœ… Perfect |
90
- | T9 Static Navigator | 6/6 Γ— 1.5 | 9 | βœ… Perfect |
91
- | T10 Dioxus 0.7.4 | 6/6 Γ— 2.0 | 12 | βœ… Perfect |
92
- | **Total** | **135.5/140** | **140** | **96.8%** |
93
 
94
- ## What It Knows
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
95
 
96
- - Dioxus 0.7 RSX brace syntax β€” never function-call style
97
- - `use_signal`, `use_resource` with correct three-arm match
98
- - `r#for` on label elements only, never inputs
99
- - `GlobalSignal` β€” `.write()` not `.set()` for statics
100
- - WCAG 2.2 AAA: tooltip always in DOM, listbox/option nesting,
101
- `aria_labelledby` on all role containers
102
- - dioxus-primitives β€” no manual ARIA on managed components
103
- - `styles!()` macro for CSS modules
104
- - Tailwind v4 utility classes and semantic tokens
105
- - EN/VI i18n via pre-rsx! let bindings
106
- - Dark mode via `document::eval` + CSS custom properties
107
- - Static content navigation with `use_memo` filtering
108
- - `use_context` panics without provider β€” never returns None
109
- - `WritableResultExt` from Dioxus 0.7.4
110
-
111
- ## What It Does Not Know
112
-
113
- - Playwright/E2E testing (out of scope)
114
- - Non-Dioxus web frameworks
115
- - WebSocket Stream+Sink real patterns (v2.1 target)
116
 
117
  ## Enabling Thinking Mode
118
 
@@ -120,40 +134,98 @@ See the [Zed setup guide](https://github.com/rockypod/neotoi-coder/blob/main/int
120
 
121
  | Field | Value |
122
  |---|---|
123
- | Before System | `<|im_start|>system` |
124
- | After System | `<|im_end|>` |
125
- | Before User | `<|im_start|>user` |
126
- | After User | `<|im_end|>` |
127
- | Before Assistant | `<|im_start|>assistant\n<think>` |
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
128
 
129
  ### llama.cpp
130
 
131
  ```bash
132
  ./llama-cli \
133
- -m neotoi-coder-v2.0-q4_k_m.gguf \
134
  -ngl 99 \
135
  --temp 0.2 \
136
  -p "<|im_start|>user\nYour question<|im_end|>\n<|im_start|>assistant\n<think>"
137
  ```
138
 
139
- ## Model Details
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
140
 
141
- - **Base model:** Qwen3-Coder-14B
142
- - **Method:** RAFT (Retrieval-Augmented Fine-Tuning)
143
- - **Dataset:** 4,185 curated Dioxus 0.7 examples
144
- - **Training:** 4 epochs, RTX 3090 Ti, ~4 hours
145
- - **Train loss:** 0.3727 (from clean Qwen3-14B base)
146
- - **Quantization:** Q4_K_M (8.4 GB) and MLX 4-bit (7.8 GB)
147
 
148
  ## License
149
 
150
- Neotoi Coder Community License v1.0.
151
- Commercial use of outputs permitted.
152
  Weight redistribution prohibited.
 
153
 
154
  ## Credits
155
 
156
- Built with [Unsloth](https://github.com/unslothai/unsloth),
157
- [Qwen3-Coder-14B](https://huggingface.co/Qwen/Qwen3-Coder-14B),
158
- [MLX](https://github.com/ml-explore/mlx), and
159
- [Claude Code](https://claude.ai/code).
 
 
 
 
6
  - vi
7
  base_model: Qwen/Qwen3-Coder-14B
8
  tags:
 
9
  - dioxus
10
+ - rust
11
+ - accessibility
12
+ - wcag
13
  - fine-tuned
14
  - raft
15
  - code
16
+ - server-functions
 
 
 
 
 
 
 
 
17
  pipeline_tag: text-generation
 
 
 
 
 
 
 
 
 
18
  ---
19
 
20
+ # Neotoi Coder v3.0
21
+
22
+ A Rust/Dioxus 0.7 specialist fine-tuned from Qwen3-Coder-14B using RAFT
23
+ (Retrieval-Augmented Fine-Tuning). Expanded for Dioxus 0.7.3–0.7.5:
24
+ scoped CSS, new event handlers, real WebSocket Stream+Sink, GlobalSignal
25
+ cache rebuilds, and fullstack server functions β€” on top of v2.0's
26
+ Tailwind v4 + WCAG 2.2 AAA + i18n coverage.
27
+
28
+ ## What's New in v3.0
29
+
30
+ - **New Tier 11 β€” Server Functions:** Clean sweep 4.5/4.5.
31
+ `#[server]` with server-only extractors, fullstack WebSocket
32
+ one-line syntax, `ServerFnError` with custom HTTP status codes
33
+ - **Scoped CSS (0.7.3):** `css!()` macro for inline scoped styles,
34
+ native `.module.css` imports
35
+ - **New event handlers (0.7.3):** `onauxclick` (middle-click),
36
+ `onscrollend` (scroll-end detection)
37
+ - **WebSocket Stream+Sink (0.7.4):** Real `stream.next()` and
38
+ `sink.send()` β€” no more `tokio::sleep` simulation (v2.0 gap closed)
39
+ - **GlobalSignal cache rebuild:** Idiomatic `.write()` on pre-rsx! lets
40
+ - **v2.0 regression fixes:** Q8 (button `r#type:`), Q16 and Q21
41
+ (RSX details/summary fidelity)
42
+ - **Dataset:** 4,535 curated examples β€” 4,185 v2.0 base plus 350
43
+ new cross-topic pairs covering the surface above
44
 
45
+ ## Exam Results
 
46
 
47
+ ### v3.0 β€” 103 Question Weighted Exam
 
48
 
49
+ | Tier | Questions | Weight | Score | Max | Status |
50
+ |---|---|---|---|---|---|
51
+ | T1 Fundamentals | Q1–12 | 1.0 | 11.0/12 | 12 | βœ… |
52
+ | T2 RSX Syntax | Q13–24 | 1.0 | 8.0/12 | 12 | ⚠️ Regression |
53
+ | T3 Signal Hygiene | Q25–36 | 1.0 | 9.5/12 | 12 | βœ… |
54
+ | T4 WCAG/ARIA | Q37–50 | 1.5 | 19.5/21 | 21 | βœ… |
55
+ | T5 use_resource | Q51–58 | 1.5 | 12.0/12 | 12 | βœ… Perfect |
56
+ | T6 Hard Reasoning | Q59–68 | 2.0 | 15.0/20 | 20 | βœ… |
57
+ | T7 Primitives+CSS | Q69–80 | 1.5 | 15.0/18 | 18 | βœ… |
58
+ | T8 GlobalSignal/i18n | Q81–88 | 1.5 | 10.5/12 | 12 | βœ… |
59
+ | T9 Static Navigator | Q89–94 | 1.5 | 9.0/9 | 9 | βœ… Perfect |
60
+ | T10 Dioxus 0.7.4 | Q95–100 | 2.0 | 10.0/12 | 12 | βœ… |
61
+ | T11 Server Functions | Q101–103 | 1.5 | 4.5/4.5 | 4.5 | βœ… Perfect |
62
+ | **Overall** | **Q1–103** | | **124.0/144.5** | **144.5** | **βœ… 85.8%** |
63
 
64
+ Release threshold: 85% (123.0/144.5). v3.0 clears it with 1.0 point to spare.
65
 
66
+ ### Version History
 
 
 
67
 
68
+ | Version | Score | Exam | Status |
69
+ |---|---|---|---|
70
+ | v1.0 | 51/60 (85.0%) | 60Q standard | Published |
71
+ | v2.0 | 135.5/140 (96.8%) | 100Q weighted | Published |
72
+ | v3.0 | 124.0/144.5 (85.8%) | 103Q weighted | Published |
73
 
74
+ v3.0's overall percentage is lower than v2.0 because the 103Q exam is
75
+ meaningfully harder: T11 Server Functions was added, T6 Hard Reasoning
76
+ and T10 Dioxus 0.7.4 got new items, and T2 RSX Syntax has regressed
77
+ against v2.0. The clean sweeps on T5 / T9 / T11 and the perfect fixes
78
+ at Q8 / Q16 / Q21 reflect the intended v3 surface expansion.
79
 
80
+ ### Improvements Over v2.0
 
 
 
 
81
 
82
+ - **Q8** β€” button `r#type:` attribute precision β€” fixed
83
+ - **Q16** β€” RSX details/summary fidelity β€” fixed
84
+ - **Q21** β€” semantic tag preservation β€” fixed
85
+ - **T11 clean sweep** β€” 4.5/4.5 on the brand-new Server Functions tier
86
+ - **T5 use_resource** β€” held perfect (12.0/12)
87
+ - **T9 Static Navigator** β€” held perfect (9.0/9)
88
 
89
+ ### Known Regressions β€” v3.1 Targets
 
90
 
91
+ T2 RSX Syntax dropped from 10/12 (v2.0) to 8.0/12 (v3.0):
 
92
 
93
+ - **Q14** β€” RSX attribute placement precision
94
+ - **Q15** β€” RSX attribute placement precision
95
+ - **Q22** β€” RSX attribute placement precision
96
 
97
+ Root cause under investigation. Targeted for v3.1.
 
 
 
 
 
 
 
 
 
 
 
 
98
 
99
+ ## Model Details
100
+
101
+ - **Base model:** Qwen3-Coder-14B (fresh base β€” never fine-tune a fine-tune)
102
+ - **Method:** RAFT (Retrieval-Augmented Fine-Tuning), Unsloth LoRA
103
+ - **Epochs:** 4
104
+ - **Training hardware:** RTX 3090 Ti (homelab)
105
+ - **Dataset:** 4,535 curated examples (4,185 v2.0 base + 350 new)
106
+ - **Scope:** Rust + Dioxus 0.7.5 + Tailwind v4 + WCAG 2.2 AAA +
107
+ fullstack server functions
108
+ - **Quantization:** GGUF Q4_K_M (9 GB). MLX 4-bit: coming in v3.1
109
+ - **Author:** Kevin Miller, Jr.
110
+
111
+ ## Install via Ollama
112
+
113
+ ```
114
+ ollama pull rockypod/neotoi-coder
115
+ ```
116
 
117
+ ## Read the Full Story
118
+
119
+ **[Read the whole story on RockyPod.com β†’](https://rockypod.com/blog/neotoi-coder-v2-release)**
120
+
121
+ ---
122
+
123
+ ## Files
124
+
125
+ | File | Format | Size | Use case |
126
+ |---|---|---|---|
127
+ | `neotoi-coder-v3-q4_k_m_patched.gguf` | GGUF Q4_K_M | 9 GB | LM Studio, llama.cpp, Ollama |
128
+ | `mlx/` | MLX 4-bit | coming in v3.1 | Apple Silicon via mlx_lm / Ollama 0.19+ |
129
+ | `neotoi-coder-v2-q4_k_m.gguf` | GGUF Q4_K_M | 8.4 GB | v2.0 legacy |
 
 
 
 
 
 
 
130
 
131
  ## Enabling Thinking Mode
132
 
 
134
 
135
  | Field | Value |
136
  |---|---|
137
+ | Before System | `<\|im_start\|>system` |
138
+ | After System | `<\|im_end\|>` |
139
+ | Before User | `<\|im_start\|>user` |
140
+ | After User | `<\|im_end\|>` |
141
+ | Before Assistant | `<\|im_start\|>assistant\n<think>` |
142
+ | After Assistant | `<\|im_end\|>` |
143
+
144
+ ### Ollama (GGUF)
145
+
146
+ ```
147
+ FROM neotoi-coder-v3-q4_k_m_patched.gguf
148
+ PARAMETER temperature 0.2
149
+ PARAMETER num_ctx 16384
150
+ PARAMETER stop "<|im_end|>"
151
+ TEMPLATE """{{- if .System }}<|im_start|>system
152
+ {{ .System }}<|im_end|>
153
+ {{ end }}<|im_start|>user
154
+ {{ .Prompt }}<|im_end|>
155
+ <|im_start|>assistant
156
+ <think>
157
+ """
158
+ SYSTEM You are Neotoi, an expert Rust and Dioxus 0.7 developer.
159
+ ```
160
+
161
+ Or simply pull the published model:
162
+ ```
163
+ ollama pull rockypod/neotoi-coder
164
+ ```
165
 
166
  ### llama.cpp
167
 
168
  ```bash
169
  ./llama-cli \
170
+ -m neotoi-coder-v3-q4_k_m_patched.gguf \
171
  -ngl 99 \
172
  --temp 0.2 \
173
  -p "<|im_start|>user\nYour question<|im_end|>\n<|im_start|>assistant\n<think>"
174
  ```
175
 
176
+ ## What It Knows
177
+
178
+ Everything v2.0 knew, plus:
179
+
180
+ - Native scoped CSS via `css!()` macro (0.7.3)
181
+ - Native CSS modules with `.module.css` imports (0.7.3)
182
+ - `onauxclick` (middle-click) and `onscrollend` event handlers (0.7.3)
183
+ - Real WebSocket Stream+Sink β€” `stream.next()`, `sink.send()` (0.7.4)
184
+ - GlobalSignal cache rebuild patterns
185
+ - T11 server functions β€” `#[server]` with extractors, fullstack
186
+ WebSocket one-liner, `ServerFnError` with HTTP status codes (0.7.3)
187
+ - `use_context_provider` / `use_context` placement β€” body only, never
188
+ inside rsx!
189
+
190
+ Carried forward from v2.0: Dioxus 0.7 RSX brace syntax (never function-
191
+ call), `use_signal`, `use_resource` three-arm match, `r#for` on labels
192
+ only, `GlobalSignal` `.write()` semantics, WCAG 2.2 AAA (tooltip always
193
+ in DOM, listbox/option nesting, `aria_labelledby` on role containers),
194
+ dioxus-primitives discipline, `styles!()` macro, Tailwind v4 utilities
195
+ and semantic tokens, EN/VI i18n via pre-rsx! let bindings, dark mode
196
+ via `document::eval`, static content navigation with `use_memo`,
197
+ `use_context` panic behavior, `WritableResultExt`.
198
+
199
+ ## Known Limitations
200
+
201
+ - **T2 RSX precision at Q14 / Q15 / Q22** β€” attribute placement
202
+ regression vs v2.0; v3.1 target
203
+ - **MLX format** β€” GGUF Q4_K_M only at v3.0 release; MLX build coming in v3.1
204
+ - **Non-Dioxus web frameworks** β€” out of scope by design
205
+ - **Playwright / E2E testing** β€” out of scope (see the SvelteCoder line)
206
+
207
+ ## Transparency
208
+
209
+ Full dataset, exam questions, and per-question model outputs are
210
+ published alongside the weights:
211
 
212
+ - **Weights:** [HuggingFace β€” rockypod/neotoi-coder](https://huggingface.co/rockypod/neotoi-coder)
213
+ - **Dataset + exam + per-question results:** [GitHub β€” rockypod/neotoi-coder](https://github.com/rockypod/neotoi-coder)
214
+ - **Ollama:** `ollama pull rockypod/neotoi-coder`
 
 
 
215
 
216
  ## License
217
 
218
+ Neotoi Coder Community License v1.0 β€” see LICENSE file.
219
+ Commercial use of model outputs permitted.
220
  Weight redistribution prohibited.
221
+ Mental health deployment requires written permission.
222
 
223
  ## Credits
224
 
225
+ Built with:
226
+ - [Unsloth](https://github.com/unslothai/unsloth) β€” 2x faster fine-tuning
227
+ - [TRL](https://github.com/huggingface/trl) β€” SFTTrainer
228
+ - [Qwen3-Coder-14B](https://huggingface.co/Qwen/Qwen3-Coder-14B) β€” base model
229
+ - [MLX](https://github.com/ml-explore/mlx) β€” Apple Silicon inference (coming in v3.1)
230
+ - [Claude Code](https://claude.ai/code) β€” dataset pipeline and training infrastructure
231
+ - [Dioxus](https://dioxuslabs.com) β€” the framework this model specializes in