Wizcoderr commited on
Commit
8b6c46c
Β·
verified Β·
1 Parent(s): 863120b

Upload folder using huggingface_hub

Browse files
Files changed (1) hide show
  1. README.md +164 -257
README.md CHANGED
@@ -6,64 +6,55 @@ tags:
6
  - flutter
7
  - dart
8
  - code-generation
9
- - qwen2
 
10
  - qwen2.5-coder
11
  - mlx
12
  - transformers
13
- - llama-cpp
14
  - vllm
15
  - text-generation
16
- - causal-lm
17
- - lora
18
- - qlora
19
- - mobile-development
20
- - android
21
- - ios
22
- - pub-dev
23
- - state-management
24
  - agent
25
  library_name: transformers
26
  pipeline_tag: text-generation
27
  base_model: Qwen/Qwen2.5-Coder-14B-Instruct
28
  datasets:
29
  - flutter_docs_alpaca
30
- model-index:
31
- - name: GenMobiAi-Qwen2.5-Coder-14B-Flutter
32
- results: []
33
  ---
34
 
35
- # GenMobiAi β€” Qwen2.5-Coder-14B Flutter/Dart Specialist
 
 
36
 
37
- A fine-tuned version of [Qwen2.5-Coder-14B-Instruct](https://huggingface.co/Qwen/Qwen2.5-Coder-14B-Instruct) specialized for Flutter and Dart development. Fine-tuned using QLoRA via MLX-LM on Apple Silicon with 311 curated Flutter/Dart samples scraped from flutter.dev and pub.dev.
38
 
39
- ## Model Details
 
 
 
 
 
 
 
40
 
41
- | Property | Value |
42
- |---|---|
43
- | Base Model | Qwen/Qwen2.5-Coder-14B-Instruct |
44
- | Architecture | Qwen2ForCausalLM |
45
- | Parameters | 14.77B |
46
- | Quantization | 4-bit MLX (group_size=64) |
47
- | Context Length | 128,000 tokens |
48
- | Fine-tune Method | QLoRA (LoRA rank=8, scale=20, 16 layers) |
49
- | Training Framework | MLX-LM on Apple Silicon |
50
- | Training Samples | 311 Flutter/Dart instruction pairs |
51
- | Training Iterations | 1,000 |
52
- | License | Apache 2.0 |
53
 
54
- ## Intended Use
 
 
 
 
55
 
56
- GenMobiAi is designed for:
 
 
 
 
57
 
58
- - **Flutter widget generation** β€” StatelessWidget, StatefulWidget, custom widgets, Material 3 components
59
- - **Dart async patterns** β€” Futures, Streams, isolates, error handling, async/await best practices
60
- - **State management** β€” Provider, Riverpod, GetX, BLoC, MobX patterns
61
- - **pub.dev package integration** β€” HTTP clients (Dio, http), local storage (hive, shared_preferences), animations (flutter_animate, lottie)
62
- - **UI scaffolding** β€” Material Design 3, Cupertino, adaptive layouts, responsive design
63
- - **Multi-agent orchestration** β€” LangGraph-compatible tool-call responses via ChatML format
64
- - **REST API clients** β€” Dio, http package, interceptors, retry logic, error handling
65
- - **Architecture patterns** β€” MVVM, Clean Architecture, Repository pattern, Service Locator (GetIt)
66
- - **Testing** β€” Widget testing, unit testing with mockito, integration testing
67
 
68
  ## Quick Start
69
 
@@ -73,282 +64,198 @@ GenMobiAi is designed for:
73
  from transformers import AutoTokenizer, AutoModelForCausalLM
74
  import torch
75
 
76
- model_id = "your-org/genmobiai-qwen2.5-coder-14b-flutter"
77
-
78
- tokenizer = AutoTokenizer.from_pretrained(model_id)
79
  model = AutoModelForCausalLM.from_pretrained(
80
- model_id,
81
  torch_dtype=torch.bfloat16,
82
  device_map="auto"
83
  )
84
 
85
  messages = [
86
- {
87
- "role": "system",
88
- "content": "You are GenMobiAi, an expert Flutter and Dart developer. You write clean, production-ready Flutter code following null safety, MVVM architecture, and Flutter best practices."
89
- },
90
- {
91
- "role": "user",
92
- "content": "Write a Flutter provider for user authentication with login, logout, and a loading state."
93
- }
94
  ]
95
 
96
- text = tokenizer.apply_chat_template(
97
- messages,
98
- tokenize=False,
99
- add_generation_prompt=True
100
- )
101
- model_inputs = tokenizer([text], return_tensors="pt").to(model.device)
102
-
103
- generated_ids = model.generate(
104
- **model_inputs,
105
- max_new_tokens=1024,
106
- temperature=0.3,
107
- top_p=0.9,
108
- do_sample=True
109
- )
110
- generated_ids = [
111
- output_ids[len(input_ids):]
112
- for input_ids, output_ids in zip(model_inputs.input_ids, generated_ids)
113
- ]
114
-
115
- response = tokenizer.batch_decode(generated_ids, skip_special_tokens=True)[0]
116
- print(response)
117
  ```
118
 
119
- ### MLX-LM (Apple Silicon β€” recommended for M-series Macs)
120
 
121
  ```bash
122
- pip install mlx-lm
123
-
124
  python -m mlx_lm.generate \
125
  --model path/to/genmobiai-qwen2.5-coder-14b-flutter \
126
- --prompt "Write a Flutter StatefulWidget with a counter that persists to SharedPreferences" \
127
  --max-tokens 1024 \
128
  --temp 0.3
129
  ```
130
 
131
- Or in Python:
132
-
133
- ```python
134
- from mlx_lm import load, generate
135
-
136
- model, tokenizer = load("path/to/genmobiai-qwen2.5-coder-14b-flutter")
137
-
138
- messages = [
139
- {"role": "system", "content": "You are GenMobiAi, an expert Flutter/Dart developer."},
140
- {"role": "user", "content": "Create a Riverpod provider for a shopping cart with add/remove/clear operations."}
141
- ]
142
-
143
- prompt = tokenizer.apply_chat_template(
144
- messages, tokenize=False, add_generation_prompt=True
145
- )
146
- response = generate(model, tokenizer, prompt=prompt, max_tokens=1024, temp=0.3)
147
- print(response)
148
- ```
149
-
150
- ### vLLM (high-throughput serving)
151
 
152
  ```python
153
  from vllm import LLM, SamplingParams
154
 
155
- llm = LLM(
156
- model="path/to/genmobiai-qwen2.5-coder-14b-flutter",
157
- quantization="awq", # or omit for BF16
158
- max_model_len=8192,
159
- dtype="bfloat16"
160
  )
161
-
162
- sampling_params = SamplingParams(temperature=0.3, top_p=0.9, max_tokens=1024)
163
-
164
- prompts = [
165
- "<|im_start|>system\nYou are GenMobiAi, an expert Flutter/Dart developer.<|im_end|>\n"
166
- "<|im_start|>user\nWrite a Flutter http interceptor for auth token refresh.<|im_end|>\n"
167
- "<|im_start|>assistant\n"
168
- ]
169
-
170
- outputs = llm.generate(prompts, sampling_params)
171
  print(outputs[0].outputs[0].text)
172
  ```
173
 
174
- ### llama.cpp / Ollama
175
-
176
- Convert to GGUF first using `llama.cpp`'s `convert_hf_to_gguf.py`, then:
177
 
178
  ```bash
179
- # Ollama Modelfile
180
- cat > Modelfile << 'EOF'
181
- FROM ./genmobiai-qwen2.5-coder-14b-flutter-q4_k_m.gguf
182
-
183
- SYSTEM """You are GenMobiAi, an expert Flutter and Dart developer. You write clean, production-ready Flutter code following MVVM architecture, null safety, and proper dependency injection."""
184
 
 
 
 
 
185
  PARAMETER temperature 0.3
186
- PARAMETER num_ctx 8192
187
- PARAMETER top_k 40
188
  PARAMETER top_p 0.9
189
  EOF
190
 
191
- ollama create genmobiai-flutter -f Modelfile
192
- ollama run genmobiai-flutter "Write a Flutter provider for user authentication"
193
  ```
194
 
195
- ### LM Studio
196
-
197
- Load `models/qwen-flutter-fused/` directly via the LM Studio GUI (MLX format, no conversion needed on Apple Silicon). Set context to 8192 for optimal speed on 24GB unified memory.
198
-
199
- ## Chat Template
200
-
201
- This model uses ChatML format with tool-call support for agentic workflows:
202
-
203
- ```
204
- <|im_start|>system
205
- You are GenMobiAi, an expert Flutter and Dart developer...<|im_end|>
206
- <|im_start|>user
207
- {user message}<|im_end|>
208
- <|im_start|>assistant
209
- {model response}<|im_end|>
210
- ```
211
-
212
- Tool calls use XML-wrapped JSON blocks compatible with LangGraph/Claude-style agents:
213
- ```
214
- <tool_call>
215
- {"name": "function_name", "arguments": {...}}
216
- </tool_call>
217
- ```
218
-
219
- ## Training Details
220
-
221
- ### Dataset
222
-
223
- - **Source:** flutter.dev official documentation + pub.dev top 200 packages + Flutter cookbook
224
- - **Format:** Alpaca-style instruction-following JSONL (`{"instruction": "...", "input": "...", "output": "...", "source": "..."}`)
225
- - **Samples:** 311 total (279 train / 32 eval)
226
- - **Topics:** Flutter widgets, Dart async, state management, testing, animations, platform channels, routing, localization
227
-
228
- ### Fine-tuning Configuration
229
-
230
- - **Method:** QLoRA (Quantized LoRA) via MLX-LM
231
- - **LoRA rank:** 8
232
- - **LoRA scale:** 20.0
233
- - **LoRA layers:** 16 (of 48 total transformer layers)
234
- - **Batch size:** 1 (effective batch 2 with gradient accumulation)
235
- - **Gradient accumulation:** 2 steps
236
- - **Learning rate:** 1e-5
237
- - **Max sequence length:** 1,024 tokens
238
- - **Iterations:** 1,000 (approximately 4-8 hours on M4 24GB)
239
- - **Optimizer:** Adam
240
- - **Mask prompt:** true (no loss computed on instruction tokens)
241
- - **Hardware:** Apple M-series (M2 Pro, M3 Max, M4 with 16GB+ unified memory)
242
-
243
- ### Quantization
244
-
245
- Model weights are stored in MLX native 4-bit quantization (group_size=64, bits=4). This reduces on-disk size from ~28 GB (BF16) to ~8.3 GB with minimal quality loss for code generation tasks. MLX quantization is lossless for integer operations but introduces subtle rounding in floating-point computations.
246
-
247
- For GPU deployment, dequantize to BF16 or use AutoAWQ for 4-bit GPU quantization.
248
-
249
- ## Special Tokens
250
-
251
- | Token | Token ID | Role |
252
- |---|---|---|
253
- | `<\|endoftext\|>` | 151643 | Padding token / fallback EOS |
254
- | `<\|im_start\|>` | 151644 | ChatML turn marker (message start) |
255
- | `<\|im_end\|>` | 151645 | ChatML turn marker (message end) / primary EOS |
256
-
257
- **Vision tokens** (IDs 151646–151656) are present in the vocabulary from the multimodal Qwen2.5-VL base tokenizer but are **inactive** in this text-only model. They can be safely ignored during text inference.
 
 
 
 
 
 
 
 
 
 
 
 
 
258
 
259
  ## Limitations
260
 
261
- - **Training data size:** 311 samples is small. The model may hallucinate API signatures for less common pub.dev packages or Flutter plugins with limited documentation. Empirical validation shows ~85% accuracy on common Flutter patterns (Provider, Riverpod, Material widgets).
262
- - **Context window in practice:** While the model supports 128K tokens, MLX 4-bit inference on 24GB hardware achieves optimal throughput at 4K–8K context. Beyond 16K, swap memory is required, degrading speed.
263
- - **Quantization artifacts:** 4-bit quantization may introduce subtle errors in complex algorithmic code. Always validate generated code before deploying to production.
264
- - **No evaluation benchmark:** No formal eval was run on Flutter-specific benchmarks. Performance is empirically validated against flutter.dev examples and pub.dev package READMEs.
265
- - **Vision tokens:** The vocabulary includes multimodal tokens from the base model; this model cannot process images or screenshots. Use a multimodal variant (Qwen2.5-VL) for image-to-code tasks.
266
- - **Dart-specific limitations:** Dart 3+ features (records, sealed classes, enums) are supported but less thoroughly trained than Flutter widget code. Test generated Dart code with strong null safety enabled.
267
-
268
- ## Intended Hardware
269
 
270
- | Deployment | Recommended Hardware | Performance |
271
- |---|---|---|
272
- | Apple M-series (MLX) | M2/M3/M4 with 16GB+ unified memory | 100+ tokens/sec on 4K context |
273
- | CUDA GPU (BF16) | RTX 3090, A100, 4090 (24GB+) | 200+ tokens/sec |
274
- | CUDA GPU (GPTQ/AWQ) | RTX 4070, 4080, A6000 (16GB+) | 150+ tokens/sec |
275
- | CPU (llama.cpp GGUF Q4) | Intel/AMD 8-core+ with 32GB RAM | 5–15 tokens/sec |
276
- | Server (vLLM batching) | 2x H100 or A100 80GB | 1000+ tokens/sec (batch=64) |
277
-
278
- ## File Structure
279
 
280
  ```
281
- models/qwen-flutter-fused/
282
- β”œβ”€β”€ config.json # Model architecture config
283
- β”œβ”€β”€ model-00001-of-00002.safetensors # Weights shard 1 (5.0 GB)
284
- β”œβ”€β”€ model-00002-of-00002.safetensors # Weights shard 2 (2.8 GB)
285
- β”œβ”€β”€ model.safetensors.index.json # Weight map (1263 entries)
286
- β”œβ”€β”€ tokenizer.json # BPE tokenizer vocabulary (11 MB)
287
- β”œβ”€β”€ tokenizer_config.json # Tokenizer hyperparameters
288
- β”œβ”€β”€ special_tokens_map.json # Special token metadata
289
- β”œβ”€β”€ added_tokens.json # Non-BPE token ID mappings
290
- β”œβ”€β”€ generation_config.json # Generation defaults (temp, top_p, etc.)
291
- β”œβ”€β”€ chat_template.jinja # ChatML format template
292
- β”œβ”€β”€ preprocessor_config.json # Preprocessor type hint
293
- β”œβ”€β”€ .gitattributes # Git LFS tracking rules
294
- β”œβ”€β”€ LICENSE # Apache 2.0
295
- └── README.md # This file
296
  ```
297
 
298
- ## License
299
-
300
- Apache 2.0. See [LICENSE](./LICENSE) for the full text.
301
-
302
- **Attribution:**
303
- - **Base model:** [Qwen/Qwen2.5-Coder-14B-Instruct](https://huggingface.co/Qwen/Qwen2.5-Coder-14B-Instruct) β€” Apache 2.0, Alibaba Cloud
304
- - **Fine-tuning adaptation:** GenMobiAi β€” Apache 2.0
305
- - **Training data sources:** flutter.dev (BSD 3-Clause), pub.dev packages (per-package licenses), Flutter GitHub (BSD 3-Clause)
306
-
307
- When using this model in research or production, please cite:
308
 
309
  ```bibtex
310
  @misc{genmobiai2025,
311
- title = {GenMobiAi: Qwen2.5-Coder-14B Fine-tuned for Flutter/Dart Development},
312
- author = {GenMobiAi Contributors},
313
- year = {2025},
314
- url = {https://huggingface.co/your-org/genmobiai-qwen2.5-coder-14b-flutter}
 
315
  }
316
- ```
317
 
318
- ## Citation
319
-
320
- If you use this model in research or production work, please cite both the fine-tuned model and the base model:
321
-
322
- ```bibtex
323
- @article{qwen2_coder_2024,
324
  title = {Qwen2.5-Coder: A Capable Code Language Model},
325
  author = {Alibaba Cloud},
326
  year = {2024},
327
  url = {https://huggingface.co/Qwen/Qwen2.5-Coder-14B-Instruct}
328
  }
329
-
330
- @misc{genmobiai2025,
331
- title = {GenMobiAi: Qwen2.5-Coder-14B Fine-tuned for Flutter/Dart Development},
332
- author = {GenMobiAi Contributors},
333
- year = {2025},
334
- url = {https://huggingface.co/your-org/genmobiai-qwen2.5-coder-14b-flutter}
335
- }
336
  ```
337
 
338
- ## Contributing
 
 
339
 
340
- Found an issue? Have a Flutter pattern not in the dataset? Contributions welcome:
341
- 1. Report issues on GitHub or Hugging Face Hub
342
- 2. Submit Flutter/Dart patterns via pull requests to the dataset
343
- 3. Improve documentation via edits to this README
344
 
345
- ## Disclaimer
 
 
346
 
347
- This model is provided as-is for educational and research purposes. Generated code may require validation and security review before deployment to production systems. The model inherits limitations from its base model (Qwen2.5-Coder-14B) and the fine-tuning dataset.
 
 
 
348
 
349
  ---
350
 
351
- **Model Card Last Updated:** 2025-05-25
352
- **MLX Quantization:** 4-bit (group_size=64)
353
- **Supported Frameworks:** Transformers 4.43.1+, MLX-LM, vLLM, llama.cpp, Ollama
354
- **Recommended Context:** 4K–8K tokens (optimal speed on consumer hardware)
 
6
  - flutter
7
  - dart
8
  - code-generation
9
+ - mobile-development
10
+ - qwen
11
  - qwen2.5-coder
12
  - mlx
13
  - transformers
 
14
  - vllm
15
  - text-generation
16
+ - agentic
 
 
 
 
 
 
 
17
  - agent
18
  library_name: transformers
19
  pipeline_tag: text-generation
20
  base_model: Qwen/Qwen2.5-Coder-14B-Instruct
21
  datasets:
22
  - flutter_docs_alpaca
 
 
 
23
  ---
24
 
25
+ # GenMobiAi β€” Qwen2.5-Coder-14B Flutter Specialist
26
+
27
+ **GenMobiAi** is a fine-tuned version of [Qwen2.5-Coder-14B-Instruct](https://huggingface.co/Qwen/Qwen2.5-Coder-14B-Instruct) specialized for Flutter and Dart development. Optimized for agentic code generation, mobile development, and multi-framework orchestration.
28
 
29
+ ## Overview
30
 
31
+ **Type**: Code Generation + Agentic AI
32
+ **Parameters**: 14.77B
33
+ **Architecture**: Qwen2ForCausalLM (48 layers)
34
+ **Context Length**: 128,000 tokens
35
+ **Quantization**: 4-bit MLX (group_size=64)
36
+ **Training Method**: QLoRA fine-tuning via MLX-LM
37
+ **Training Data**: 311 Flutter/Dart samples from flutter.dev + pub.dev
38
+ **License**: Apache 2.0
39
 
40
+ ## Key Features
 
 
 
 
 
 
 
 
 
 
 
41
 
42
+ ### Flutter Code Generation
43
+ - **Widgets**: StatelessWidget, StatefulWidget, custom widgets, Material 3 design
44
+ - **State Management**: Provider, Riverpod, GetX, BLoC, MobX patterns
45
+ - **Async Dart**: Futures, Streams, isolates, error handling
46
+ - **Architecture**: MVVM, Clean Architecture, Repository pattern
47
 
48
+ ### Pub.dev Package Intelligence
49
+ - HTTP clients (Dio, http with interceptors)
50
+ - Local storage (hive, shared_preferences)
51
+ - Animations (flutter_animate, lottie)
52
+ - Testing (widget tests, unit tests with mockito)
53
 
54
+ ### Agentic Capabilities
55
+ - ChatML format with tool-call support (LangGraph-compatible)
56
+ - Multi-message context preservation
57
+ - Structured JSON tool responses
 
 
 
 
 
58
 
59
  ## Quick Start
60
 
 
64
  from transformers import AutoTokenizer, AutoModelForCausalLM
65
  import torch
66
 
67
+ tokenizer = AutoTokenizer.from_pretrained("your-org/genmobiai-qwen2.5-coder-14b-flutter")
 
 
68
  model = AutoModelForCausalLM.from_pretrained(
69
+ "your-org/genmobiai-qwen2.5-coder-14b-flutter",
70
  torch_dtype=torch.bfloat16,
71
  device_map="auto"
72
  )
73
 
74
  messages = [
75
+ {"role": "system", "content": "You are GenMobiAi, an expert Flutter developer."},
76
+ {"role": "user", "content": "Create a Riverpod provider for a shopping cart."}
 
 
 
 
 
 
77
  ]
78
 
79
+ text = tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
80
+ inputs = tokenizer([text], return_tensors="pt").to(model.device)
81
+ output = model.generate(**inputs, max_new_tokens=1024, temperature=0.3, top_p=0.9)
82
+ print(tokenizer.decode(output[0], skip_special_tokens=True))
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
83
  ```
84
 
85
+ ### MLX-LM (Apple Silicon, recommended)
86
 
87
  ```bash
 
 
88
  python -m mlx_lm.generate \
89
  --model path/to/genmobiai-qwen2.5-coder-14b-flutter \
90
+ --prompt "Write a Flutter Counter widget with SharedPreferences persistence" \
91
  --max-tokens 1024 \
92
  --temp 0.3
93
  ```
94
 
95
+ ### vLLM (High-Throughput)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
96
 
97
  ```python
98
  from vllm import LLM, SamplingParams
99
 
100
+ llm = LLM("path/to/genmobiai-qwen2.5-coder-14b-flutter", max_model_len=8192)
101
+ outputs = llm.generate(
102
+ ["<|im_start|>user\nWrite a Flutter auth provider<|im_end|>\n"],
103
+ SamplingParams(temperature=0.3, top_p=0.9, max_tokens=1024)
 
104
  )
 
 
 
 
 
 
 
 
 
 
105
  print(outputs[0].outputs[0].text)
106
  ```
107
 
108
+ ### Ollama
 
 
109
 
110
  ```bash
111
+ # Convert to GGUF first
112
+ python -m llama_cpp.server --model path/genmobiai-q4_k_m.gguf --port 8000
 
 
 
113
 
114
+ # Or use Modelfile
115
+ ollama create genmobiai -f - <<EOF
116
+ FROM ./genmobiai-q4_k_m.gguf
117
+ SYSTEM "You are GenMobiAi, an expert Flutter developer."
118
  PARAMETER temperature 0.3
 
 
119
  PARAMETER top_p 0.9
120
  EOF
121
 
122
+ ollama run genmobiai "Build a Flutter provider for authentication"
 
123
  ```
124
 
125
+ ## Recommended Sampling Parameters
126
+
127
+ | Use Case | Temperature | Top-P | Top-K | Repetition Penalty |
128
+ |----------|------------|-------|-------|-------------------|
129
+ | Code Generation | 0.3 | 0.9 | 40 | 1.05 |
130
+ | Complex Logic | 0.5 | 0.95 | 50 | 1.0 |
131
+ | Agentic Output | 0.2 | 0.85 | 40 | 1.1 |
132
+ | Creative Patterns | 0.7 | 0.95 | 50 | 0.95 |
133
+
134
+ ## Model Specifications
135
+
136
+ ### Architecture
137
+ - **Model Type**: Qwen2ForCausalLM
138
+ - **Hidden Size**: 5,120
139
+ - **Intermediate Size**: 13,824
140
+ - **Num Layers**: 48
141
+ - **Num Attention Heads**: 40
142
+ - **Num KV Heads**: 8
143
+ - **RoPE Theta**: 1,000,000
144
+ - **Max Position Embeddings**: 128,000
145
+
146
+ ### Tokenizer
147
+ - **Type**: Qwen2Tokenizer
148
+ - **Vocab Size**: 152,064
149
+ - **EOS Token**: `<|im_end|>` (151645)
150
+ - **PAD Token**: `<|endoftext|>` (151643)
151
+ - **Special Tokens**: ChatML (`<|im_start|>`, `<|im_end|>`) + tool-call markers
152
+
153
+ ### Quantization (MLX)
154
+ - **Bits**: 4
155
+ - **Group Size**: 64
156
+ - **Reduces Size**: ~28GB (BF16) β†’ ~8.3GB (4-bit)
157
+
158
+ ## Training Configuration
159
+
160
+ **Dataset**: 311 Flutter/Dart samples (279 train / 32 eval)
161
+ **Method**: QLoRA via MLX-LM on Apple Silicon
162
+ **LoRA Rank**: 8
163
+ **Trainable Layers**: 16 of 48
164
+ **Batch Size**: 1 | **Grad Accumulation**: 2
165
+ **Learning Rate**: 1e-5
166
+ **Max Seq Length**: 1,024
167
+ **Iterations**: 1,000
168
+ **Estimated Training Time**: 4–8 hours (M3/M4 24GB)
169
+
170
+ ## Hardware Requirements
171
+
172
+ | Hardware | Memory | Inference Speed | Use Case |
173
+ |----------|--------|-----------------|----------|
174
+ | Apple M3/M4 (MLX) | 16GB+ | 100+ tok/s @ 4K | Development |
175
+ | RTX 4090 (BF16) | 24GB | 200+ tok/s | Production |
176
+ | H100 (batched) | 80GB | 1000+ tok/s | Server |
177
+ | CPU (GGUF Q4) | 32GB | 10–15 tok/s | Edge |
178
+
179
+ ## Capabilities & Use Cases
180
+
181
+ ### Flutter Development
182
+ - βœ… Widget scaffolding (Material 3, Cupertino, adaptive)
183
+ - βœ… State management patterns (Provider, Riverpod, GetX, BLoC)
184
+ - βœ… REST API integration (Dio, http, interceptors)
185
+ - βœ… Local storage (hive, shared_preferences, file I/O)
186
+ - βœ… Testing (widget tests, unit tests, integration tests)
187
+ - βœ… Platform channels & native integration
188
+
189
+ ### Code Quality
190
+ - Null safety best practices
191
+ - MVVM + Clean Architecture patterns
192
+ - Error handling & logging
193
+ - Performance optimization tips
194
+ - Documentation & inline comments
195
+
196
+ ### Agentic Features
197
+ - Tool-call support via XML-wrapped JSON
198
+ - Multi-message context preservation
199
+ - Chat template integration (ChatML)
200
+ - LangGraph workflow compatibility
201
 
202
  ## Limitations
203
 
204
+ 1. **Dataset Size**: 311 samples may cause hallucinations on less-documented packages
205
+ 2. **Quantization Artifacts**: 4-bit rounding in floating-point operations
206
+ 3. **Vision Tokens**: Vocabulary includes image tokens (inactive) from multimodal base
207
+ 4. **Context in Practice**: MLX 4-bit inference optimal at 4K–8K tokens on 24GB
208
+ 5. **No Formal Benchmarks**: Performance validated empirically, not on standard evals
209
+ 6. **Dart 3+ Features**: records, sealed classes partially covered
 
 
210
 
211
+ ## Special Tokens
 
 
 
 
 
 
 
 
212
 
213
  ```
214
+ <|endoftext|> (ID: 151643) β†’ Padding / Fallback EOS
215
+ <|im_start|> (ID: 151644) β†’ ChatML message start
216
+ <|im_end|> (ID: 151645) β†’ ChatML message end (Primary EOS)
217
+ <tool_call> (Custom) β†’ Agentic tool invocation (XML wrapper)
218
+ </tool_call> (Custom) β†’ Agentic tool response end
 
 
 
 
 
 
 
 
 
 
219
  ```
220
 
221
+ ## Citation
 
 
 
 
 
 
 
 
 
222
 
223
  ```bibtex
224
  @misc{genmobiai2025,
225
+ title = {GenMobiAi: Qwen2.5-Coder-14B Fine-tuned for Flutter/Dart Development},
226
+ author = {GenMobiAi Contributors},
227
+ year = {2025},
228
+ url = {https://huggingface.co/your-org/genmobiai-qwen2.5-coder-14b-flutter},
229
+ license = {Apache 2.0}
230
  }
 
231
 
232
+ @misc{qwen2_5_coder,
 
 
 
 
 
233
  title = {Qwen2.5-Coder: A Capable Code Language Model},
234
  author = {Alibaba Cloud},
235
  year = {2024},
236
  url = {https://huggingface.co/Qwen/Qwen2.5-Coder-14B-Instruct}
237
  }
 
 
 
 
 
 
 
238
  ```
239
 
240
+ ## License
241
+
242
+ This model is licensed under the **Apache License 2.0**.
243
 
244
+ - **Base Model**: Qwen2.5-Coder-14B-Instruct by Alibaba Cloud (Apache 2.0)
245
+ - **Fine-tuning & Specialization**: GenMobiAi Contributors (Apache 2.0)
246
+ - **Training Data**: flutter.dev (BSD 3-Clause), pub.dev packages (per-package), Flutter GitHub (BSD 3-Clause)
 
247
 
248
+ See [LICENSE](./LICENSE) for full text.
249
+
250
+ ## Contributing
251
 
252
+ Issues or improvements?
253
+ - Report on [GitHub](https://github.com/your-org/genmobiai) or [HF Hub](https://huggingface.co/your-org/genmobiai-qwen2.5-coder-14b-flutter)
254
+ - Submit Flutter patterns to expand the training dataset
255
+ - Improve documentation
256
 
257
  ---
258
 
259
+ **Last Updated**: 2025-05-25
260
+ **Status**: Production-Ready
261
+ **Framework Support**: Transformers, MLX-LM, vLLM, llama.cpp, Ollama