Baby AI is a minimalistic artificial intelligence system designed to evolve from scratch by observing character sequences and forming abstract concepts. It is intentionally built without any preloaded vocabulary, grammar, or language structure. The entire AI grows step-by-step, by experiencing the world of symbols and discovering meaning through patterns.
- 🧠 Concept discovery from raw character input
- 🗂️ Dynamic vocabulary and grammar development
- 📊 Web-based dashboard for visualization and monitoring
- 🧾 Detailed logging of all AI activities
- 🔁 Real-time learning with randomized data generation
- 💾 Model saving and reloading (
saved_model.pt)
The web dashboard includes:
- 📄 Full training logs (auto-refreshing)
- 🧠 List of discovered concepts
- 📊 Concept creation graph
- 📦 Model metadata (file size, parameter count, layer count)
- Python 3.10+
- PyTorch
- FastAPI
- Uvicorn
- Jinja2
- Matplotlib
git clone https://github.com/LunaStev/babylm.git
cd baby-ai
pip install -r requirements.txtpython main.pyThis will continuously generate random data and train the model.
uvicorn dashboard:app --reloadOpen your browser and visit: http://localhost:8000
babylm/
├── core/ # Core AI logic and model
│ ├── model.py # BabyModel (neural network)
│ ├── engine.py # Learning engine
│ ├── charset.py # Character set definitions
├── web/
│ ├── dashboard.py # FastAPI-based dashboard server
│ └── templates/
│ └── index.html # Dashboard HTML
├── main.py # Main training loop
├── logs/ai.log # Training log
├── saved_model.pt # Saved PyTorch model
This project is licensed under the Mozilla Public License 2.0 (MPL-2.0).
Baby AI is a philosophical experiment in bottom-up intelligence construction. Rather than relying on pretrained language models, this project aims to simulate a truly emergent learning process—starting from nothing but symbols.
Created with ❤️ by LunaStev