Affine is Bittensor subnet 120 (SN120), a project in the Reinforcement Learning lane. Winner-takes-all RL for reasoning models
A single champion model holds all the miner rewards on Affine until a challenger beats it across every reasoning task, strictly. Lose the contest, and you are out of the queue for good.
It is an educational deep dive, not a recommendation to stake. For live price, pool depth, and performance, always open the live subnet page.
What is Affine (SN120)?
Affine is a Bittensor subnet that runs an open competition to build better reasoning models. Miners do not sell answers; they submit a model, and validators score it on hard reasoning tasks like program abduction and coding. The best model at any moment, the "champion," collects the rewards until someone submits a model that beats it.
In plain English: It is like a perpetual coding-and-reasoning tournament where the reigning champion keeps winning the prize money until a clearly better challenger shows up and takes the belt.
Centralized reference points: OpenAI RL post-training, DeepSeek-R1-style training loops
How miners and validators work
Like every Bittensor subnet, SN120 is a two-sided market: miners produce work, validators score it, and emissions follow those weights under the network’s dTAO economics.
- Miners train a model, upload the weights to Hugging Face, and commit the model reference on-chain. They are trying to outperform the current champion.
- Validators host inference for each submitted model and score it across the subnet's evaluation environments, then set on-chain weights toward whichever model is winning.
Mechanism and design
According to the Affine repository README, miners commit a Hugging Face (model, revision) pair on-chain. Validators host the inference themselves, currently through Targon, with the option of an operator-managed GPU fleet, so a miner's score reflects the model rather than the miner's own serving setup.
The scoring is winner-takes-all and deliberately harsh. The validator-side scheduler walks the queue of pending miners in registration order. Each challenger is run back-to-back against the current champion across every evaluation environment. A challenger only dethrones the champion if it wins strictly across all environments by a per-environment margin. If it falls short anywhere, it is permanently terminated and the queue moves on. The README describes the evaluation environments as reasoning tasks such as program abduction (ABD) and coding-style deduction (DED), packaged as pre-built Docker images and orchestrated through the team's Affinetes tooling. Roughly every 7,200 blocks (about a day) the task pool for each environment is refreshed and the champion is re-sampled before the queue continues.
The README states the mechanism is designed to be sybil-proof, decoy-proof, copy-proof, and overfitting-proof. The "win strictly across all environments" rule and the periodic task refresh are how it targets copying and overfitting: a model that merely memorized one environment cannot sweep every environment against a fresh task pool.
On the economics, emissions on Bittensor are not a single token. Each block the protocol injects both TAO (the network's base token) and the subnet's own alpha token into the subnet's liquidity pool, and at the end of each tempo the accumulated alpha is distributed through Yuma Consensus on a fixed split of 18% to the subnet owner, 41% to miners, and 41% to validators and their stakers. Because Affine's rewards are winner-takes-all at the miner layer, the miner share concentrates on whichever model currently holds the champion slot.…
Why the project exists
- The problem it solves: Reinforcement learning is how frontier models learn to reason, but that work happens inside closed labs with no shared incentive for outside contributors. Affine turns it into an open contest anyone can enter.
- The opportunity: If a non-permissioned crowd can be pointed at reasoning tasks the way Bittensor points miners at other work, improvements compound from many independent contributors instead of one team.
- The Bittensor advantage: A decentralized, always-on tournament with on-chain rewards means model improvement keeps running without a single company funding or gatekeeping it.
- Traction signals: The codebase is actively maintained: 900 commits across 16 contributors on the main repository, with the most recent commit on 2026-06-18. Affine runs a public dashboard at affine.io, and the subnet is a recurring topic in Bittensor community discussion.
What stakers should check before buying alpha
Subnet storytelling is cheap. On-chain and product checks are not. Use the same framework as our subnet metrics guide:
| Check | Why |
|---|---|
| Real product / docs / repo | Separates shipping teams from narrative-only slots |
| Pool depth (TAO) | Your exit door: thin pools amplify slippage |
| Net flows (7d / 30d) | Under flow-based emissions, capital votes with its feet |
| Emission share | Whether the market is funding this subnet right now |
| Ownership concentration | Large holders can move a small alpha market |
| Immunity / deregistration | Post-immunity weak slots can lose the race (see immunity guide) |
Pull the live numbers on Affine · SN120 rather than trusting any static screenshot in a blog post.
Risk factors
- Deregistration: Affine's current emission share is 0%, reflecting negative net staking flows under Taoflow, and the subnet is past its four-month immunity period (registered in June 2025). Bittensor automatically deregisters the lowest-EMA-price subnet among non-immune subnets when a new subnet registers, so a sustained zero-emission, low-price position leaves the slot exposed.
- Winner-takes-all concentration: The design routes the miner reward to a single champion model until it is dethroned, and challengers that lose are permanently removed from the queue. That is high variance for miners and concentrates rewards narrowly by design.
- Liquidity and market: The price is down about 17% over the trailing 30 days and daily volume is light at roughly 1,300 TAO, so larger trades face meaningful slippage against the pool.
- Concentration: Stake distribution is moderately concentrated, with a gini of about 0.64 across the top positions, so a few large stakers can move pool dynamics.
How this fits a TAO portfolio
Many holders keep a root vs subnet split: root for calmer TAO exposure, subnets like Affine for thematic upside (and higher variance). If you use TaoScale, you can size SN120 from your wallet without handing over custody. See non-custodial staking.
- Live market: SN120 on TaoScale
- Browse and stake: /invest
- More subnet explainers: /blog/subnets
FAQ
What does Affine do on Bittensor?
It is like a perpetual coding-and-reasoning tournament where the reigning champion keeps winning the prize money until a clearly better challenger shows up and takes the belt.
What is the SN120 alpha token?
When you stake TAO into subnet 120, you receive that subnet’s alpha. Its price versus TAO moves with the subnet’s pool (see what is dTAO).
How do I research Affine before staking?
Read the mechanism above, open the official repo/docs when available, then verify pool depth, flows, and activity on SN120. Cross-check with the metrics checklist.
Is this financial advice?
No. TaoScale publishes educational explainers and live tools. Decisions to stake are yours alone.
Not financial advice. Educational overview of Affine (SN120) compiled from public project materials and ecosystem documentation. Mechanisms and market structure change, so verify live data and official sources before acting.