# BitSota **Decentralized Research Network on Bittensor** BitSota is a decentralized research network that evolves machine learning algorithms through competitive optimization. We're a problem agnostic platform and enable the optimization of different categories of problems, with a focus on self-improving and self-generating AI. Currently, miners develop ML algorithms using genetic programming, while validators run autoresearch replay validation and apply backend-directed Bittensor weights. ## Overview Bitsota is a platform that allows for decentralized open research problems to continuously evolve machine learning algorithms, state of the art results and self-improving AI. The system supports multiple participation modes to accommodate different hardware capabilities and preferences. BitSota is running without a miner cap and can support a theoretically infinite number of miners. ### Core Components **Miners:** Evolve ML algorithms using genetic programming and self-improving methods on our fixed CIFAR-10 binary evaluation pipeline, research benchmarks or hidden evaluation criteria. Can operate in direct or pool mining modes. **Validators:** Evaluate miner submissions independently, verify algorithm performance, and distribute rewards by setting on-chain weights via Yuma consensus. ## Inspiration BitSota builds on concepts from Google's [AutoML-Zero](https://research.google/blog/automl-zero-evolving-code-that-learns/) research, Schmidhuber's [Goedel Machines] (https://people.idsia.ch/~juergen/goedelmachine.html) and Jeff Clune's [AI generating Algorithms](https://arxiv.org/abs/1905.10985). We build on this approach by: - Decentralizing the evolution process across a distributed network of miners - Using blockchain incentives to drive continuous algorithm improvement - Implementing competitive markets where miners evolve algorithms in parallel - Applying cryptoeconomic mechanisms to ensure honest evaluation and quality control Where AutoML-Zero showed that algorithm evolution is possible in a research setting, Bitsota explores whether market incentives and distributed competition can sustainably produce novel ML algorithms and solve research problems at scale. ## Participation Modes ### Direct Mining Individual miners evolve algorithms locally and submit breakthroughs to validators. Requires higher compute but offers larger individual rewards. **Best for:** Experienced miners with dedicated hardware **[→ Direct Mining Guide](docs/mining.md)** ### Pool Mining Collaborative mining where participants handle smaller evolution and evaluation tasks. Pool aggregates results and submits to validators on behalf of all participants. **Best for:** New miners or those with limited compute resources **[→ Pool Mining Guide](docs/pool-mining.md)** ### Validation Validators evaluate assigned submissions through the autoresearch backend and apply backend-directed Bittensor weights. **[→ Validation Guide](docs/validation.md)** ### Experimental Research-Agent Mining SN94 now also includes an additive, coordinator-backed research miner that can launch an external agent CLI, with the older OpenAI-compatible chat-completions path kept as a fallback. This path is separate from the existing AutoML-Zero style evolutionary contest and does not replace the current direct mining, pool mining, GUI, or validator flows. The new path supports coordinator-backed research competitions with `direct` and `pool` participation styles across `standard`, `centerless`, and `peer_evaluation` task modes. See [Research-Agent Mining](docs/research-agent-mining.md). ## Architecture ### Direct Mining Flow ``` Miner → Evolve Locally → Submit Results → Backend/Pool Consensus → Backend Weight Snapshot → Validator Weight Setter → Emissions ``` 1. Miner runs genetic programming engine for up to 150 generations 2. Results are submitted through the current backend or pool path 3. Validators replay assigned work and post observed metrics back to the backend 4. The backend publishes `reward_policy.validator_weights` 5. Validators run `validator.backend_weight_setter` to submit Bittensor weights 6. Network emissions flow according to Yuma consensus ### Pool Mining Flow ``` Pool → Assigns Tasks → Miners Execute → Pool Consensus → Submit to Validators → Epoch Rewards ``` 1. Pool distributes evolution and evaluation tasks to participants 2. Multiple miners evaluate each algorithm (3+ required) 3. Pool computes median consensus with 10% tolerance 4. Rewards distributed based on reputation at epoch boundaries 5. Pool submits best algorithms to validators on behalf of participants **[→ Detailed Rewards Guide](docs/rewards.md)** ## Quick Start ### For Miners **Desktop GUI (Recommended):** 1. Download from [bitsota.ai](https://bitsota.ai) 2. Install for your platform 3. Import your Bittensor hotkey 4. Choose mining mode (Direct or Pool) 5. Start mining See detailed setup guides: - [Direct Mining Setup](docs/mining.md#setup) - [Pool Mining Setup](docs/pool-mining.md#setup) ### For Validators ```bash git clone https://github.com/AlveusLabs/SN94-BitSota.git cd SN94-BitSota pip install -r requirements.txt pip install -e . python -m validator.research_validator_runner --help python -m validator.backend_weight_setter --help ``` The legacy relay/local validator path has been removed. Production validators should follow **[Public Autoresearch Validator Runner](docs/public-validator-runner.md)**. Experienced operators with a clean GPU host can use the shorter **[Public Validator Quickstart](docs/public-validator-quickstart.md)**. ## Requirements **Minimum:** - Python 3.10+ - 4GB RAM - 2GB storage - Stable internet connection **For Validation:** - 16GB RAM - 8+ CPU cores ## Documentation - **[Mining Guide](docs/mining.md)** - Direct mining setup and strategies - **[Pool Mining Guide](docs/pool-mining.md)** - Collaborative mining details - **[Validation Guide](docs/validation.md)** - Running a validator node - **[Research-Agent Mining](docs/research-agent-mining.md)** - Experimental coordinator-backed miner and launcher for external agents, with the older OpenAI-compatible planner path kept as a fallback - **[Local Testing Guide](docs/local-testing.md)** - Run GUI + local relay submission checks - **[Rewards Guide](docs/rewards.md)** - Understanding incentive mechanisms ### Docs website If you prefer a rendered docs website instead of reading markdown files: ```bash python3 -m venv .venv-docs source .venv-docs/bin/activate python3 -m pip install -U pip python3 -m pip install -r requirements-docs.txt mkdocs serve -a 127.0.0.1:9001 ``` ## Links - **Website:** [bitsota.ai](https://bitsota.ai) - **Discord:** [discord.gg/bitsota](https://discord.gg/jkJWJtPuw7) ## Security Best Practices **Key Management:** - Never share private keys or seed phrases - Keep coldkeys offline - Backup Bittensor wallet securely - Protect validator hotkeys on server ## Contributing This subnet is under active development. Contributions welcome through: - Bug reports and feature requests via GitHub issues - Code contributions via pull requests - Community discussion on Discord ## License See LICENSE file for details. --- **Disclaimer:** By downloading, installing, running, submitting to, validating for, claiming through, connecting to, or otherwise continuing to use this software or related services, you acknowledge and agree to the full [Disclaimer](docs/disclaimer.md). This is experimental software. Rewards, claims, emissions, payouts, rankings, and validator acceptance are not guaranteed. Smart contracts, validators, Pool services, infrastructure, and operators can fail, pause, be exploited, or behave unexpectedly. No managed account, brokerage, insurance, or financial advice is provided.