LLMcompoz
Compose a language model from scratch — and learn how it works.
LLMcompoz is a PySide6 desktop app (with a matching Qt-free CLI) that walks you
through building a GPT-style language model from nothing: a tokenizer you can
watch split text, a transformer you assemble block by block, a training loop
that draws its own loss curve, and a generation panel where you scrub
temperature and top-k and watch tokens appear one at a time.
Nothing is hidden behind a framework Trainer. Every core file is meant to be
read top to bottom — the attention math, the training step, the sampling loop.
The six stages (tabs)
- 📄 Veri — load text; see character/token counts and vocab size
- 🔤 Tokenizer — char vs BPE; live view of a sentence splitting into ids
- 🧠 Model — set layers/heads/embedding; live parameter count
- 🏋️ Eğitim — live loss curve, step logs, checkpoints
- ✨ Üretim — prompt in, tokens out, live; play with temperature/top-k
- 📚 Öğren — concept notes explaining what happens under each stage
Layout
src/llmcompoz/
├── core/ # the actual ML — readable, framework-free
│ ├── tokenizer.py # CharTokenizer + from-scratch BPE
│ ├── attention.py # multi-head causal self-attention
│ ├── model.py # GPT: embeddings -> blocks -> head
│ ├── trainer.py # explicit training loop with callbacks
│ ├── sampler.py # generation helper
│ └── config.py # ModelConfig / TrainConfig dataclasses
├── gui/ # PySide6 UI (panels wire into core via callbacks)
├── learn/ # educational content
└── cli.py # Qt-free llmcompoz command
Quick start
Windows (PowerShell)
cd C:\Github\LLMcompoz
python -m venv .venv
.\.venv\Scripts\Activate.ps1
pip install -e .
llmcompoz info
llmcompoz train .\data\tiny.txt --steps 500
llmcompoz-gui
Linux / CachyOS (Bash)
cd ~/Github/LLMcompoz
python -m venv .venv
source .venv/bin/activate
pip install -e .
llmcompoz info
llmcompoz train ./data/tiny.txt --steps 500
llmcompoz-gui
Status
v0.1.0 — scaffold: working core (tokenizer, model, trainer, sampler), CLI,
and a six-tab GUI shell. Panels are placeholders to be filled in next.
License
MIT
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file llmcompoz-0.1.0.tar.gz.
File metadata
- Download URL: llmcompoz-0.1.0.tar.gz
- Upload date:
- Size: 13.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6cccb725646f496d6f8a59ddc2cea6f5813372ef783ba1ffca7d3e9ca959c029
|
|
| MD5 |
448d85a075528a167a16fe20bd97cfc6
|
|
| BLAKE2b-256 |
5348e30609d8b4180ec1e2fb9820c1997a1e14c4832acda4d0c16e6cd82ceeb9
|
Provenance
The following attestation bundles were made for llmcompoz-0.1.0.tar.gz:
Publisher:
publish.yml on bayramkotan/LLMcompoz
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
llmcompoz-0.1.0.tar.gz -
Subject digest:
6cccb725646f496d6f8a59ddc2cea6f5813372ef783ba1ffca7d3e9ca959c029 - Sigstore transparency entry: 2252305250
- Sigstore integration time:
-
Permalink:
bayramkotan/LLMcompoz@8a3d1e30105a88a9657153d929a386bf6a534361 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/bayramkotan
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@8a3d1e30105a88a9657153d929a386bf6a534361 -
Trigger Event:
push
-
Statement type:
File details
Details for the file llmcompoz-0.1.0-py3-none-any.whl.
File metadata
- Download URL: llmcompoz-0.1.0-py3-none-any.whl
- Upload date:
- Size: 15.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
83b051bb185698660cb12f24316dfe250eb65062ead69bdc5c51ba9ef9d51801
|
|
| MD5 |
a290f0b52b043f047ef17604994fb368
|
|
| BLAKE2b-256 |
4a3ec6d8185aa1b1c45ba85e2c8233cca9af6881814ede767430af2a66988bd8
|
Provenance
The following attestation bundles were made for llmcompoz-0.1.0-py3-none-any.whl:
Publisher:
publish.yml on bayramkotan/LLMcompoz
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
llmcompoz-0.1.0-py3-none-any.whl -
Subject digest:
83b051bb185698660cb12f24316dfe250eb65062ead69bdc5c51ba9ef9d51801 - Sigstore transparency entry: 2252305481
- Sigstore integration time:
-
Permalink:
bayramkotan/LLMcompoz@8a3d1e30105a88a9657153d929a386bf6a534361 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/bayramkotan
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@8a3d1e30105a88a9657153d929a386bf6a534361 -
Trigger Event:
push
-
Statement type: