Text Generation
Transformers
GGUF
inikitin commited on
Commit
59f104b
·
verified ·
1 Parent(s): dba7235

Update README.md

Browse files
Files changed (1) hide show
  1. README.md +210 -1
README.md CHANGED
@@ -7,4 +7,213 @@ datasets:
7
  - Fortytwo-Network/Strandset-Rust-v1
8
  pipeline_tag: text-generation
9
  library_name: transformers
10
- ---
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7
  - Fortytwo-Network/Strandset-Rust-v1
8
  pipeline_tag: text-generation
9
  library_name: transformers
10
+ ---
11
+
12
+
13
+ ![image/jpeg](https://cdn-uploads.huggingface.co/production/uploads/63aeda3a2314b93f9e706a68/I6WwY8U7I5V8lc138UmGt.jpeg)
14
+
15
+ # Strand-Rust-Coder-14B-v1
16
+
17
+ ## Overview
18
+
19
+ **Strand-Rust-Coder-14B-v1** is the first domain-specialized Rust language model created through **Fortytwo’s Swarm Inference Network**, a decentralized AI architecture where multiple models collaboratively generate, validate, and rank outputs through peer consensus.
20
+
21
+ The model fine-tunes **Qwen2.5-Coder-14B** for Rust-specific programming tasks using a **191K-example synthetic dataset** built via multi-agent generation and peer-reviewed validation.
22
+ It achieves **43–50% accuracy** on Rust-specific benchmarks – surpassing much larger proprietary models like GPT-5 Codex on Rust tasks – while maintaining competitive general coding performance.
23
+
24
+ ## Key Features
25
+
26
+ - **Rust-specialized fine-tuning** on 15 diverse programming task categories
27
+ - **Peer-validated synthetic dataset** (191,008 verified examples, 94.3% compile rate)
28
+ - **LoRA-based fine-tuning** for efficient adaptation
29
+ - **Benchmarked across Rust-specific suites:**
30
+ - **RustEvo²**
31
+ - **Evaluation on Hold-Out Set**
32
+ - **Deployed in the Fortytwo decentralized inference network** for collective AI reasoning
33
+
34
+ ---
35
+
36
+ ## Performance Summary
37
+
38
+ | **Model** | **Hold-Out Set** | **RustEvo²** |
39
+ |------------|------------------|---------------|
40
+ | **Fortytwo-Rust-One-14B (Ours)** | **48.00%** | **43.00%** |
41
+ | openai/gpt-5-codex | 47.00% | 28.00% |
42
+ | anthropic/claude-sonnet-4.5 | 46.00% | 21.00% |
43
+ | anthropic/claude-3.7-sonnet | 42.00% | 31.00% |
44
+ | qwen/qwen3-max | 42.00% | 40.00% |
45
+ | qwen/qwen3-coder-plus | 41.00% | 22.00% |
46
+ | x-ai/grok-4 | 39.00% | 37.00% |
47
+ | deepseek/deepseek-v3.1-terminus | 37.00% | 33.00% |
48
+ | Qwen3-Coder-30B-A3B-Instruct | 36.00% | 20.00% |
49
+ | openai/gpt-4o-latest | 34.00% | 39.00% |
50
+ | deepseek/deepseek-chat | 34.00% | 41.00% |
51
+ | google/gemini-2.5-flash | 33.00% | 7.00% |
52
+ | Qwen2.5-Coder-14B-Instruct (Base) | 29.00% | 30.00% |
53
+ | Qwen2.5-Coder-32B-Instruct | 29.00% | 31.00% |
54
+ | google/gemini-2.5-pro | 28.00% | 22.00% |
55
+ | qwen/qwen-2.5-72b | 28.00% | 32.00% |
56
+ | Tesslate/Tessa-Rust-T1-7B | 23.00% | 19.00% |
57
+
58
+ *Benchmarks measured using unit-test pass rate@1 in Docker-isolated Rust 1.86.0 environment.*
59
+
60
+ ---
61
+
62
+ ## Task Breakdown
63
+
64
+ | Task | Base | Strand-14B |
65
+ |------|------|-------------|
66
+ | test_generation | 0.00 | 0.51 |
67
+ | api_usage_prediction | 0.27 | 0.71 |
68
+ | function_naming | 0.53 | 0.87 |
69
+ | code_refactoring | 0.04 | 0.19–0.20 |
70
+ | variable_naming | 0.87 | 1.00 |
71
+ | code_generation | 0.40 | 0.49 |
72
+
73
+ Largest improvements appear in *test generation*, *API usage prediction*, and *refactoring* – areas demanding strong semantic reasoning about Rust’s ownership and lifetime rules.
74
+
75
+ ---
76
+
77
+ ## Dataset
78
+
79
+ **Fortytwo-Network/Strandset-Rust-v1 (191,008 examples, 15 categories)**
80
+ Built through Fortytwo’s *Swarm Inference* pipeline, where multiple SLMs generate and cross-validate examples with peer review consensus and output aggregation.
81
+
82
+ - 94.3% compile success rate
83
+ - 73.2% consensus acceptance
84
+ - Coverage of 89% of Rust language features
85
+ - Tasks include:
86
+ - `code_generation`, `code_completion`, `bug_detection`, `refactoring`, `optimization`
87
+ - `docstring_generation`, `code_review`, `summarization`, `test_generation`
88
+ - `naming`, `API usage prediction`, `search`
89
+
90
+ Dataset construction involved 2,383 crates from crates.io, automatic compilation tests, and semantic validation of ownership and lifetime correctness.
91
+
92
+ Dataset: [Fortytwo-Network/Strandset-Rust-v1](https://huggingface.co/datasets/Fortytwo-Network/Strandset-Rust-v1)
93
+
94
+ ---
95
+
96
+ ## Training Configuration
97
+
98
+ | Setting | Value |
99
+ |----------|-------|
100
+ | Base model | Qwen2.5-Coder-14B-Instruct |
101
+ | Method | LoRA (r=64, α=16) |
102
+ | Learning rate | 5e-5 |
103
+ | Batch size | 128 |
104
+ | Epochs | 3 |
105
+ | Optimizer | AdamW |
106
+ | Precision | bfloat16 |
107
+ | Objective | Completion-only loss |
108
+ | Context length | 32,768 |
109
+ | Framework | PyTorch + FSDP + Flash Attention 2 |
110
+ | Hardware | 8× H200 GPUs |
111
+
112
+ ---
113
+
114
+ ## Model Architecture
115
+
116
+ - **Base:** Qwen2.5-Coder (14 B parameters, GQA attention, extended RoPE embeddings)
117
+ - **Tokenizer:** 151 k vocabulary optimized for Rust syntax
118
+ - **Context:** 32 k tokens
119
+ - **Fine-tuning:** Parameter-efficient LoRA adapters (≈1% of parameters updated)
120
+ - **Deployment:** Compatible with local deployment and Fortytwo Capsule runtime for distributed swarm inference
121
+
122
+ ---
123
+
124
+ ## Evaluation Protocol
125
+
126
+ - All evaluations executed in Docker-isolated Rust 1.86.0 environment
127
+ - **Code tasks:** measured via unit test pass rate
128
+ - **Documentation & naming tasks:** scored via LLM-based correctness (Claude Sonnet 4 judge)
129
+ - **Code completion & API tasks:** syntax-weighted Levenshtein similarity
130
+ - **Comment generation:** compilation success metric
131
+
132
+ ---
133
+
134
+ ## Why It Matters
135
+
136
+ Rust is a high-safety, low-level language with complex ownership semantics that make it uniquely challenging for general-purpose LLMs.
137
+ At the same time, there is simply **not enough high-quality training data on Rust**, as it remains a relatively modern and rapidly evolving language.
138
+ This scarcity of large, reliable Rust datasets – combined with the language’s intricate borrow checker and type system – makes it an ideal benchmark for evaluating true model understanding and reasoning precision.
139
+
140
+ **Strand-Rust-Coder** demonstrates how **specialized models** can outperform giant centralized models – achieving domain mastery with a fraction of the compute.
141
+ Through **Fortytwo’s Swarm Inference**, the network was able to generate an **extremely accurate synthetic dataset**, enabling a **state-of-the-art Rust model** to be built through an efficient **LoRA fine-tune** rather than full retraining.
142
+
143
+ This work validates Fortytwo’s thesis: **intelligence can scale horizontally through networked specialization rather than centralized scale.**
144
+
145
+ ---
146
+
147
+ ## 🔬 Research & References
148
+
149
+ - [Self-Supervised Inference of Agents in Trustless Environments](https://arxiv.org/abs/2409.08386) – *High-level overview of Fortytwo architecture*
150
+
151
+ ---
152
+
153
+ ## Intended Use
154
+
155
+ - Rust code generation, completion, and documentation
156
+ - Automated refactoring and test generation
157
+ - Integration into code copilots and multi-agent frameworks
158
+ - Research on domain-specialized model training and evaluation
159
+
160
+ ### Limitations
161
+ - May underperform on purely algorithmic or multi-language tasks (e.g., HumanEval-style puzzles).
162
+ - Not suitable for generating unverified production code without compilation and test validation.
163
+
164
+ ---
165
+
166
+ ## Integration with Fortytwo Network
167
+
168
+ Strand-Rust-Coder models are integrated into **Fortytwo’s decentralized Swarm Inference Network**, where specialized models collaborate and rank each other’s outputs.
169
+ This structure enables **peer-reviewed inference**, improving reliability while reducing hallucinations and cost.
170
+
171
+ To run a Fortytwo node or contribute your own models and fine-tunes, visit: [fortytwo.network](https://fortytwo.network)
172
+
173
+ ---
174
+
175
+ ## Inference Examples
176
+
177
+ ### Using `pipeline`
178
+
179
+ ```python
180
+ from transformers import pipeline
181
+
182
+ pipe = pipeline("text-generation", model="Fortytwo-Network/Strand-Rust-Coder-14B-v1")
183
+ messages = [
184
+ {"role": "user", "content": "Write a Rust function that finds the first string longer than 10 characters in a vector."},
185
+ ]
186
+ pipe(messages)
187
+ ```
188
+
189
+ ### Using Transformers Directly
190
+
191
+ ```python
192
+ # Load model directly
193
+ from transformers import AutoTokenizer, AutoModelForCausalLM
194
+
195
+ tokenizer = AutoTokenizer.from_pretrained("Fortytwo-Network/Strand-Rust-Coder-14B-v1")
196
+ model = AutoModelForCausalLM.from_pretrained("Fortytwo-Network/Strand-Rust-Coder-14B-v1")
197
+
198
+ messages = [
199
+ {"role": "user", "content": "Write a Rust function that finds the first string longer than 10 characters in a vector."},
200
+ ]
201
+
202
+ inputs = tokenizer.apply_chat_template(
203
+ messages,
204
+ add_generation_prompt=True,
205
+ tokenize=True,
206
+ return_dict=True,
207
+ return_tensors="pt",
208
+ ).to(model.device)
209
+
210
+ outputs = model.generate(**inputs, max_new_tokens=40)
211
+ print(tokenizer.decode(outputs[0][inputs["input_ids"].shape[-1]:]))
212
+ ```
213
+
214
+ ---
215
+
216
+ **Fortytwo – An open, networked intelligence shaped collectively by its participants**
217
+ Join the swarm: [fortytwo.network](https://fortytwo.network)
218
+
219
+ X: [@fortytwonetwork](https://x.com/fortytwonetwork)