TAIT — Termux AI Training
A lightweight, NumPy-first local AI training toolkit for Termux, Android, and constrained Linux devices.
Made in Sudan 🇸🇩
TAIT started as a single-file MiniGPT trainer and is now an open-source modular package. It stays deliberately lightweight: no PyTorch, no TensorFlow, and no large runtime stack.
✨ Features
- NumPy-only MiniGPT training and inference
- Byte-level BPE tokenizer
- Compact reasoning / CoT training format
- Response-only loss and validation loss
- Early stopping and best checkpoints
- Safe Ctrl+C checkpoint preservation
- JSONL datasets with reasoning aliases
- Arabic, English, and mixed sample datasets
- Optional Hugging Face dataset adapter
- TOML configuration with CLI overrides
- Termux-aware setup, doctor, and benchmark
- Terminal chat and local browser chat
🚀 Installation
pip install tait
From source:
git clone https://github.com/muzammilsoft/tait.git
cd tait
pip install -e .
⚡ Quick Start
From the repository:
tait data inspect examples/datasets/mixed.jsonl
tait train --config configs/reasoning.toml
tait chat --model artifacts/reasoning.npz
Browser chat:
tait chat --web --model artifacts/reasoning.npz
Show the generated compact reasoning trace:
tait chat --model artifacts/reasoning.npz --show-reasoning
📦 Dataset format
{"prompt":"شنو عاصمة السودان؟","reasoning":"السؤال عن عاصمة السودان، والمدينة المعروفة بأنها العاصمة هي الخرطوم.","response":"عاصمة السودان هي الخرطوم."}
The default dataset is examples/datasets/mixed.jsonl. Arabic and English datasets are included separately. See Datasets for detailed generation rules.
🧠 Training
tait train --config configs/default.toml
CLI options override TOML settings. Validation, early stopping, response-only loss, and compact reasoning are enabled by default in the standard configuration.
See Training.
📚 Documentation
- Architecture
- Configuration
- Datasets
- Training
- Models
- Web Chat
- Termux
- Development
- Coding Guidelines
- AI Contributions
- Release Process
- Roadmap
🗺️ Roadmap
v2.1 focuses on better instruction learning and compact reasoning. A future v2.x can add teacher/student distillation workflows. v3 can add an Agent layer with function calling, tools, planning, and execution.
License
MIT — see LICENSE.
Metadata
Release files for tait 2.3.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| tait-2.3.0.tar.gz | 33.2 kB | Without provenance | Details for tait-2.3.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| tait-2.3.0-py3-none-any.whl | Python 3 | none | any | Details for tait-2.3.0-py3-none-any.whl |
Total release size: 67.1 kB
Release files / tait-2.3.0.tar.gz
| Download URL | tait-2.3.0.tar.gz |
|---|---|
| Size | 33.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
76fde21c286efcfb9aa2efdf268c273749d6d9900b7d089d30fa6d7c4241ba79
|
|
BLAKE2b-256 checksum How to use checksums |
3c734b1dcbaa0b1fad6e3a41de82d6d36ea752c44fde482b743d5ed5deacaa34
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
Release files / tait-2.3.0-py3-none-any.whl
| Download URL | tait-2.3.0-py3-none-any.whl |
|---|---|
| Size | 33.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
1e15e75d79c0edb42081bcd9a29071aeff87a2ca3e33a8fa5c6c969bda345487
|
|
BLAKE2b-256 checksum How to use checksums |
a668cddf4c5c1ffae27a06047f2c60b7f674734c109f0348a0f6e0b33abd310d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
Security for tait 2.3.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.