Text Generation
PEFT
Arabic
English
egyptian-arabic
arabic
lora
sft
unsloth
tool-calling
masri
sovythos
syths
Instructions to use sovythos/SYTHS-1.0 with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- PEFT
How to use sovythos/SYTHS-1.0 with PEFT:
Task type is invalid.
- Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- Unsloth Desktop
File size: 11,610 Bytes
4122b65 fa6d59a 4122b65 fa6d59a | 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 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 | ---
license: apache-2.0
language:
- ar
- en
base_model: Qwen/Qwen3.5-2B
base_model_relation: adapter
library_name: peft
pipeline_tag: text-generation
tags:
- egyptian-arabic
- arabic
- lora
- sft
- unsloth
- tool-calling
- masri
- sovythos
- syths
---
<div align="center">
<img src="assets/syths_hero.png" alt="SYTHS-1.0" width="100%"/>
# SYTHS-1.0
**A Sovythos family model · An open Egyptian-Arabic language model, honest by design.**
**من عيلة Sovythos · صناعة محمود ياسر**
**موديل مصري مفتوح المصدر، صريح، ومش بيألّف.**
`Status: awaiting training results` · `Base: Qwen/Qwen3.5-2B` · `Method: LoRA SFT` · `Trainer: Mahmoud Yasser`
</div>
> **Status notice.** This is the official model card template. Training and evaluation had **not** been run when this file was prepared; fill every PENDING value from real runs only (see `assets/results.json`). Every benchmark value below is **PENDING**. No number in this document is estimated, projected or copied from another source. This file will be replaced by the final card once training and evaluation complete.
---
## The Sovythos family · عيلة Sovythos
**Sovythos** is an open-source family of language models created by **Mahmoud Yasser** (محمود ياسر), an Egyptian developer. Each model in the family has its own name and its own training method.
| Model | Type | Status |
|---|---|---|
| **SYTHS-1.0** (this model) | LoRA supervised fine-tune of `Qwen/Qwen3.5-2B` on 3,800 handwritten Egyptian-Arabic examples | Awaiting training and evaluation |
| [`Sovythos-66M-Base`](https://huggingface.co/my0919175/Sovythos-66M-Base) | Decoder-only Transformer trained from scratch (Sovereign AI Project) | Published |
> **Important:** SYTHS-1.0 is **not** trained from scratch. It builds on the official Qwen3.5-2B and adds an Egyptian-Arabic persona, honesty behavior and tool-calling through fine-tuning. The "from scratch" description applies only to the earlier `Sovythos-66M-Base` model.
## Frequently asked questions
**What is Sovythos?** An open-source family of language models by Mahmoud Yasser, focused on Egyptian Arabic.
**What is SYTHS-1.0?** The first model of the Sovythos family built on a modern instruction-tuned base: a LoRA fine-tune of Qwen3.5-2B, trained on handwritten data only.
**Who created Sovythos?** Mahmoud Yasser (محمود ياسر), an Egyptian developer.
**Does SYTHS-1.0 use external datasets?** No. All 3,800 training examples were written by hand. No generator and no external datasets were used.
**Is SYTHS-1.0 better than Qwen3.5-2B?** Not yet measured. Benchmark values in this card are PENDING until training and evaluation finish; no number here is estimated.
## About the creator · عن المؤسس
**Mahmoud Yasser** (محمود ياسر) is an Egyptian developer and the founder of Sovythos. He wrote the entire SYTHS-1.0 training set by hand, designed the training and evaluation pipeline, and builds the SYTHS platform, a Sovythos-family product that gives Arabic speakers a coding and chat assistant.
- Hugging Face: [`my0919175`](https://huggingface.co/my0919175)
- Projects: Sovythos family (`Sovythos-66M-Base`, `SYTHS-1.0`), SYTHS platform
## 1. Overview
**SYTHS-1.0** (`SYTHS` is the model; **Sovythos** is the family/umbrella it belongs to) is an open-source language model, made by Mahmoud Yasser, that speaks Egyptian Arabic (with English and Franco-Arabic support). It is a parameter-efficient (LoRA) supervised fine-tune of the official [`Qwen/Qwen3.5-2B`](https://huggingface.co/Qwen/Qwen3.5-2B). Design goals:
- Natural Egyptian-dialect conversation.
- Calibrated honesty: it does not invent facts, phone numbers, prices or sources, and it does not claim live data, internet access or memory across chats. For volatile facts it points to the official source ("راجع المصدر الرسمي").
- Coding tutoring.
- Reliable tool calling, treating tool, file and web text as data rather than instructions.
- Polite, safe refusals; confirmation before destructive or sending actions.
## 2. Model details
| Item | Value |
|---|---|
| Model name | SYTHS-1.0 |
| Family | Sovythos |
| Hugging Face repo | `Sovythos/SYTHS-1.0` |
| Base model | `Qwen/Qwen3.5-2B` (official Qwen release, post-trained) |
| Base license | Apache-2.0 (per the base model card) |
| Fine-tuning method | LoRA SFT, single stage, [Unsloth](https://github.com/unslothai/unsloth) |
| Founder / trainer | Mahmoud Yasser (محمود ياسر) |
| Languages | Egyptian Arabic (primary), English, Franco-Arabic |
| Thinking mode | Off (`enable_thinking=False`) in training and tests |
| SYTHS-1.0 license | Apache-2.0 (set to match the base model; author may change before release) |
| Release status | Awaiting training and evaluation |
## 3. Training data
The dataset is **entirely handwritten**: no generator, no external datasets, no scraped or third-party sources.
File: `sovythos_handmade.jsonl`
| Statistic | Count |
|---|---|
| Total examples | 3,800 |
| Tool-use conversations | 317 |
| With a system prompt | 476 |
| Multi-turn (≥ 2 user turns) | 335 |
| Arabic-majority replies | 2,845 |
| Duplicates (validated) | 0 |
| Schema errors (validated) | 0 |
Schema: `{"messages": [...], "tools": [...]}` with roles `system / user / assistant / tool`. Each conversation ends with a plain assistant message; every tool call has a matching tool result and a declared tool with required arguments present.
## 4. Training procedure
| Hyperparameter | Value |
|---|---|
| Base | `Qwen/Qwen3.5-2B` (16-bit load) |
| LoRA | r = 64, targets q/k/v/o/gate/up/down proj |
| Epochs | 3 |
| Learning rate | 1e-4, cosine schedule |
| Optimizer | adamw_8bit |
| Batch | 1 × grad-accum 16 |
| Max sequence length | 2048 (longest example ≈ 1,623 tokens) |
| Validation split | 3% |
| Loss | Assistant responses only (`train_on_responses_only`) |
| Seed | 3407 |
`train.py` aborts if response-only masking is not working (trainable-token fraction must be between 2% and 98%). Chat-template and masking markers are **not yet verified on real hardware**; `test.py render` and `train.py --smoke` exist to verify them before the full run.
## 5. Evaluation protocol
SYTHS-1.0 is compared **only against its own official base model** (`Qwen3.5-2B`) under identical conditions: same prompts, same chat template, greedy decoding, thinking off. Scores are 0–100, higher is better.
### 5.1 Official base-model results (as published)
Copied verbatim from the official [`Qwen/Qwen3.5-2B`](https://huggingface.co/Qwen/Qwen3.5-2B) model card, **Instruct (non-thinking) mode**, which is the mode SYTHS-1.0 is trained and tested in. These are Qwen's own reported numbers, not re-run by us. SYTHS-1.0 will be evaluated on the same public benchmarks (e.g. via `lm-evaluation-harness`) and reported side by side once training is done.
<div align="center">
<img src="assets/syths_official.png" alt="Qwen3.5-2B official benchmarks" width="100%"/>
</div>
| Benchmark | Qwen3.5-2B (official) | SYTHS-1.0 |
|---|---|---|
| MMLU-Pro | 55.3 | PENDING |
| MMLU-Redux | 69.2 | PENDING |
| C-Eval | 65.2 | PENDING |
| SuperGPQA | 30.4 | PENDING |
| IFEval | 61.2 | PENDING |
| MMMLU | 56.9 | PENDING |
Note: Qwen's published numbers use their own evaluation setup; our re-run may differ slightly. A fine-tune on 3,800 examples is not expected to raise general-knowledge scores, and the goal of this check is to confirm it does **not regress** them.
### 5.2 Behavior benchmarks (SYTHS-1.0-specific)
<div align="center">
<img src="assets/syths_benchmarks.png" alt="Behavior benchmarks — pending" width="100%"/>
</div>
| Capability (القدرة) | SYTHS-1.0 | Qwen3.5-2B (base) |
|---|---|---|
| Identity consistency (ثبات الهوية) | PENDING | PENDING |
| Hallucination avoidance (تجنّب الهلوسة) | PENDING | PENDING |
| Egyptian Arabic fluency (سلاسة اللهجة المصرية) | PENDING | PENDING |
| Code tutoring (تعليم البرمجة) | PENDING | PENDING |
| Tool calling (استدعاء الأدوات) | PENDING | PENDING |
| Safe & polite refusal (الرفض المهذّب والآمن) | PENDING | PENDING |
Caveat: the current `test.py chat` suite has 11 heuristic cases. It is a smoke test, not a publication-grade benchmark. Before publishing numbers, the evaluation set should be extended (target ≥ 50 prompts per capability) and the fluency category should be human-rated.
## 6. Intended use and limitations
**Intended use:** Egyptian-Arabic assistance, coding explanations, and tool-calling research on a small open model.
**Limitations:**
- A 2B-class model can still make factual and reasoning errors. Verify important outputs.
- It has no live data, no internet access and no memory across chats.
- Medical, legal and financial answers are general information, not professional advice.
- Trained on 3,800 examples; coverage of niche domains is limited.
- Not evaluated yet (see §5).
## 6.1 Usage
```python
from unsloth import FastLanguageModel
model, tok = FastLanguageModel.from_pretrained("Qwen/Qwen3.5-2B", load_in_16bit=True)
model.load_adapter("Sovythos/SYTHS-1.0") # or a local ./adapter folder
FastLanguageModel.for_inference(model)
msgs = [{"role": "user", "content": "اشرحلي الـ list comprehension في بايثون"}]
ids = tok.apply_chat_template(msgs, add_generation_prompt=True, enable_thinking=False, return_tensors="pt").to(model.device)
print(tok.decode(model.generate(ids, max_new_tokens=300)[0][ids.shape[1]:], skip_special_tokens=True))
```
## 7. Reproduce
```bash
pip install unsloth "transformers>=5"
python training/test.py data # validate dataset schema
python training/test.py render --model Qwen/Qwen3.5-2B # verify template + masking markers
python training/train.py --smoke # 20-step dry run, no save
python training/train.py # full run -> outputs/sovythos/final
python training/test.py chat --adapter outputs/sovythos/final # behavior suite
```
Once trained: run the suite on the base model and on the adapter, fill `assets/results.json`, then run `python assets/render_cards.py` to regenerate the benchmark image.
## 8. Credits
Built on **Qwen3.5** by the Qwen Team (Alibaba Cloud). Trained with Unsloth. SYTHS-1.0 is a model of the Sovythos family, made by Mahmoud Yasser. It is an independent project, not affiliated with or endorsed by the Qwen Team.
---
<div dir="rtl">
## ملخص بالعربي
**SYTHS-1.0** موديل مصري مفتوح المصدر من عيلة **Sovythos** وصناعة محمود ياسر، متدرّب بـ LoRA على موديل `Qwen/Qwen3.5-2B` الرسمي، على **3,800 مثال مكتوب يدويًا بالكامل** (من غير أي داتا خارجية ولا مولّد). هدفه: لهجة مصرية طبيعية، صراحة وعدم تأليف، شرح برمجة، واستدعاء أدوات بشكل سليم.
**الحالة: نسخة مؤقتة قبل التدريب.** كل نتائج المقارنة مع الموديل الأساسي الرسمي لسه **PENDING**، ومفيش أي رقم متقدّر أو متنسخ من مصدر تاني. هتتحدّث بعد التدريب والتقييم.
</div>
> **ملاحظة عن الاسم:** اسم الموديل العام **SYTHS-1.0**. داتا التدريب بتعرّف الموديل باسم عيلته **Sovythos** (وده مقصود)، فممكن يقول إنه "Sovythos" لما يتسأل عن هويته. |