File size: 3,865 Bytes
dad06f8
19f01c0
 
 
dad06f8
19f01c0
 
 
 
 
 
 
 
 
 
 
dad06f8
19f01c0
858ce94
 
 
19f01c0
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
858ce94
19f01c0
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
858ce94
19f01c0
 
 
 
858ce94
19f01c0
 
 
 
 
 
858ce94
19f01c0
 
 
 
 
 
 
 
858ce94
19f01c0
858ce94
 
 
 
 
 
19f01c0
 
 
 
 
 
 
 
 
858ce94
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
---
language:
  - it
  - en
license: apache-2.0
tags:
  - text-generation
  - causal-lm
  - bilingual
  - italian
  - english
  - small-language-model
  - trained-from-scratch
  - quark
library_name: transformers
pipeline_tag: text-generation
---

# Quark-270M Base — Bilingual Italian-English Language Model
Quark-270M Base is a compact bilingual language model for Italian and English, built entirely from scratch by [ThingsAI](https://things-ai.org). This is the raw pretrained model optimized for text completion.
For conversational use, see [**Quark-270M-Instruct**](https://huggingface.co/ThingAI/Quark-270m-Instruct).

## Model Details

| | |
|---|---|
| **Parameters** | 252M (with weight tying) |
| **Architecture** | Decoder-only Transformer |
| **Vocabulary** | 65,537 tokens (QuarkTokenizer, bilingual BPE) |
| **Context Length** | 2,048 tokens |
| **Precision** | BF16 |
| **Languages** | Italian, English |
| **License** | Apache 2.0 |

## Architecture

| Component | Details |
|---|---|
| Model Dimension | 768 |
| Layers | 32 |
| Attention | Grouped Query Attention (GQA) |
| Query Heads | 12 |
| KV Heads | 4 (3:1 ratio) |
| Head Dimension | 64 |
| FFN Dimension | 2,048 |
| FFN Activation | SwiGLU |
| Normalization | RMSNorm (pre-norm) |
| Positional Encoding | RoPE (θ=10,000) |
| Weight Tying | embed_tokens ↔ lm_head |

## Pretraining

### Data

Trained on **~10B tokens** from a curated bilingual mix:

| Subset | Weight | Source |
|---|---|---|
| FineWeb-2 (Italian) | 29% | `HuggingFaceFW/fineweb-2` [ita_Latn] |
| CulturaX (Italian) | 14% | `uonlp/CulturaX` [it] |
| Wikipedia (Italian) | 7% | `wikimedia/wikipedia` [20231101.it] |
| FineWeb (English) | 36% | `HuggingFaceFW/fineweb` [sample-10BT] |
| Wikipedia (English) | 7% | `wikimedia/wikipedia` [20231101.en] |
| The Stack (Code) | 7% | `bigcode/the-stack-smol` |

**Language split:** Italian 50% · English 43% · Code 7%

### Training Configuration

| | |
|---|---|
| **Hardware** | NVIDIA B200 |
| **Total Tokens** | ~10B |
| **Batch Size** | 64 × 4 grad accum = 256 sequences |
| **Sequence Length** | 2,048 |
| **Learning Rate** | 3e-4 → 3e-5 (cosine) |
| **Warmup Steps** | 1,000 |
| **Optimizer** | AdamW (β₁=0.9, β₂=0.95) |
| **Precision** | BF16 mixed precision |
| **Throughput** | ~281k tokens/sec |
| **Training Time** | ~10 hours |

## Usage

```python
from transformers import AutoModelForCausalLM, AutoTokenizer

model = AutoModelForCausalLM.from_pretrained(
    "ThingAI/Quark-270m-Base",
    trust_remote_code=True,
    torch_dtype="bfloat16"
).cuda()

tokenizer = AutoTokenizer.from_pretrained("ThingAI/Quark-270m-Base")

inputs = tokenizer("L'Italia è un paese", return_tensors="pt").to("cuda")
out = model.generate(**inputs, max_new_tokens=100, do_sample=True, temperature=0.7, top_k=40)
print(tokenizer.decode(out[0]))
```

> **Note:** This is a base model for text completion. For chat and instructions, use [Quark-270M-Instruct](https://huggingface.co/ThingAI/Quark-270m-Instruct).

## Limitations

- **Scale:** 252M parameters limits factual knowledge and complex reasoning
- **Hallucination:** Generates plausible but often incorrect information
- **Mathematics:** Limited arithmetic capabilities
- **Code:** Can produce syntactically plausible but often non-functional code

## The Quark Family

| Model | Parameters | Type |
|---|---|---|
| [Quark-50M](https://huggingface.co/ThingAI/Quark-50m) | 51M | Base |
| [Quark-135M](https://huggingface.co/ThingAI/Quark-135m) | 135M | Base |
| **Quark-270M Base** | **252M** | **Base** |
| [Quark-270M-Instruct](https://huggingface.co/ThingAI/Quark-270m-Instruct) | 252M | Chat |

## Links

- 🌐 [ThingsAI](https://things-ai.org)
- 💬 [Things Chat](https://chat.things-ai.org)
- 🔤 [QuarkTokenizer](https://huggingface.co/ThingAI/QuarkTokenizer)

---

*Built from scratch by ThingsAI 🇮🇹*