Smollama is a distributed AI agent system designed for resource-constrained devices like Raspberry Pi. It enables nodes to sense their environment through GPIO sensors and system metrics, remember observations with semantic search, think using local LLMs via Ollama, communicate with other nodes over MQTT, and sync data using conflict-free replicated data types (CRDTs) for seamless offline-first operation.
Read GPIO sensors, system metrics, and environmental data from connected hardware.
Store observations and memories in SQLite with vector embeddings for semantic search.
Process events using local LLMs via Ollama with a tool-based reasoning loop.
Share state with other nodes via MQTT for distributed coordination.
Operate offline and merge data deterministically using append-only CRDT logs with Lamport timestamps.
FastAPI web interface with HTMX for live monitoring and interaction.