Update model card with explicit dataset utilization breakdown and training code link
Browse files
README.md
CHANGED
|
@@ -24,10 +24,36 @@ This repository contains a **5.0 Million Parameter Causal Language Model** train
|
|
| 24 |
|
| 25 |
The model is specialized in **Linux Terminal Commands, Shell Automation, and Multilingual Text Generation** (English, Indonesian, Spanish, French, German).
|
| 26 |
|
| 27 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 28 |
|
| 29 |
* **Total Trainable Parameters**: 4,984,064 (~4.98M / 5.0M)
|
| 30 |
-
* **Architecture**: Decoder-only Transformer (LLaMA style)
|
| 31 |
* **Vocabulary Size**: 4,096 (Byte-Pair Encoding Tokenizer)
|
| 32 |
* **Hidden Dimension (`d_model`)**: 256
|
| 33 |
* **Number of Layers (`n_layer`)**: 6
|
|
@@ -36,16 +62,9 @@ The model is specialized in **Linux Terminal Commands, Shell Automation, and Mul
|
|
| 36 |
* **Context Window (`max_seq_len`)**: 256 tokens
|
| 37 |
* **Weight Tying**: Tied Embedding and LM Head weights
|
| 38 |
|
| 39 |
-
|
| 40 |
-
|
| 41 |
-
* **Token Budget**: 100,000,000 Tokens (Chinchilla Optimal: 20 tokens per parameter)
|
| 42 |
-
* **Dataset Composition**:
|
| 43 |
-
* **Terminal CLI & Commands**: 20% (Bash commands, `cd ..`, `ls -la`, `mkdir`, `grep`, `git`, `chmod`, `curl`, Q&A pairs)
|
| 44 |
-
* **English Text**: 24% (`wikitext-103-v1` + technical corpus)
|
| 45 |
-
* **Multilingual Text**: 56% (Indonesian, Spanish, French, German Wikipedia & general text)
|
| 46 |
-
* **Hardware**: Kaggle NVIDIA GPU (Dual Tesla T4 / P100) with FP16 AMP Mixed Precision.
|
| 47 |
|
| 48 |
-
## Usage & Inference Example (PyTorch)
|
| 49 |
|
| 50 |
```python
|
| 51 |
import torch
|
|
|
|
| 24 |
|
| 25 |
The model is specialized in **Linux Terminal Commands, Shell Automation, and Multilingual Text Generation** (English, Indonesian, Spanish, French, German).
|
| 26 |
|
| 27 |
+
---
|
| 28 |
+
|
| 29 |
+
## 📊 Dataset Breakdown & Utilization
|
| 30 |
+
|
| 31 |
+
The model was trained on **100,000,000 Tokens** mixed across three distinct sources:
|
| 32 |
+
|
| 33 |
+
| Dataset Name | Source / Hugging Face ID | Token Count | Share (%) | Utilization Details |
|
| 34 |
+
| :--- | :--- | :--- | :--- | :--- |
|
| 35 |
+
| **Linux Terminal & CLI Engine** | Synthesized Shell Engine | **~20.0 Million** | **20%** | **100% Fully Utilized**: Synthesized Linux CLI commands (`cd ..`, `ls -la`, `mkdir`, `grep`, `git`, `chmod`, `curl`, Q&A pairs). |
|
| 36 |
+
| **English General Text** | [`wikitext`](https://huggingface.co/datasets/wikitext) (`wikitext-2-raw-v1`) | **~24.0 Million** | **24%** | **Streamed Sample**: Streamed line-by-line via Hugging Face `load_dataset("wikitext", streaming=True)`. |
|
| 37 |
+
| **Multilingual Wikipedia** | [`wikimedia/wikipedia`](https://huggingface.co/datasets/wikimedia/wikipedia) | **~56.0 Million** | **56%** | **Streamed Multilingual Sample**: Streamed across 4 language sub-splits (Indonesian `id`, Spanish `es`, French `fr`, German `de`). |
|
| 38 |
+
| **TOTAL** | Mixed Corpus | **100.0 Million** | **100%** | **Chinchilla Compute-Optimal** ($20\times$ params) |
|
| 39 |
+
|
| 40 |
+
---
|
| 41 |
+
|
| 42 |
+
## 📂 Complete Training Source Code
|
| 43 |
+
|
| 44 |
+
The full, self-contained training codebase is included directly in this repository inside the [`/training_code`](./training_code) folder:
|
| 45 |
+
|
| 46 |
+
* [`training_code/main_kaggle.py`](./training_code/main_kaggle.py): Complete Kaggle GPU standalone training script.
|
| 47 |
+
* [`training_code/train.py`](./training_code/train.py): Main PyTorch model architecture, loss functions, and HF auto-upload.
|
| 48 |
+
* [`training_code/terminal_dataset.py`](./training_code/terminal_dataset.py): CLI command generator and shell interaction builder.
|
| 49 |
+
* [`training_code/tokenizer_builder.py`](./training_code/tokenizer_builder.py): Custom 4,096 BPE Tokenizer trainer.
|
| 50 |
+
|
| 51 |
+
---
|
| 52 |
+
|
| 53 |
+
## ⚙️ Model Architecture
|
| 54 |
|
| 55 |
* **Total Trainable Parameters**: 4,984,064 (~4.98M / 5.0M)
|
| 56 |
+
* **Architecture**: Decoder-only Transformer (LLaMA style with SwiGLU & RMSNorm)
|
| 57 |
* **Vocabulary Size**: 4,096 (Byte-Pair Encoding Tokenizer)
|
| 58 |
* **Hidden Dimension (`d_model`)**: 256
|
| 59 |
* **Number of Layers (`n_layer`)**: 6
|
|
|
|
| 62 |
* **Context Window (`max_seq_len`)**: 256 tokens
|
| 63 |
* **Weight Tying**: Tied Embedding and LM Head weights
|
| 64 |
|
| 65 |
+
---
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 66 |
|
| 67 |
+
## 💻 Usage & Inference Example (PyTorch)
|
| 68 |
|
| 69 |
```python
|
| 70 |
import torch
|