Loading
Loading
Neuron registration trends
Businesses and researchers need access to authentic user-generated content—reviews, feedback, and social signals—at scale, but centralized platforms restrict access through rate limits, API costs, and terms of service. Maintaining internal infrastructure to collect this data requires constant engineering effort, API subscriptions across multiple platforms, and ongoing validation to filter spam and bot-generated content. Traditional approaches also suffer from staleness; data becomes outdated quickly without continuous collection.
Distributing content collection across a network of independent nodes solves these bottlenecks. Rather than relying on a single provider or building proprietary scraping infrastructure, a decentralized network can continuously collect, validate, and refresh user-generated content from multiple platforms in parallel. Each node contributes data, validators assess quality through spot-check verification against live sources, and AI analysis layers detect spam, classify sentiment, and translate content—all without centralized gatekeeping.
Subnet 111 implements this model on the Bittensor network. Miners operate distributed collection nodes that scrape reviews and content from Google Maps, Yelp, and other platforms. Validators run synthetic quality challenges every 20 minutes, scoring miners on volume, speed, and recency. The network distributes earnings through a profit-sharing mechanism, aligning incentives: miners earn by providing high-quality data, validators earn by maintaining standards, and consumers access structured content via a subscription API.
Use cases were auto-generated from the GitHub repository and may not reflect the latest changes.
oneoneone (Subnet 111) is a decentralized protocol built on Bittensor that collects, validates, and serves user-generated content from platforms like Google Maps and Yelp. Miners scrape and process content while validators assess data quality through synthetic challenges, with AI-enhanced analysis for authenticity detection, sentiment analysis, and multi-language support. The subnet monetizes access through a subscription-based API platform with profit sharing back to network participants.
The subnet uses a distributed architecture with three main components: Miners run a Node.js backend stack to collect and process user-generated content from platforms like Google Maps and Yelp, exposing a /fetch API endpoint. Validators generate synthetic challenges every 20 minutes, query miners asynchronously, and score responses using the composite volume-speed-recency metric with spot check verification against live data. Both miners and validators run Python neuron processes that handle Bittensor network communication, blacklisting/priority logic based on stake, and profit distribution.
The network is coordinated through the Bittensor subnet mechanism with optional auto-updater scripts handling code deployment and process management.
The scoring system rewards miners who return more items, respond faster, and provide fresher data. Volume score is normalized against the highest performing miner. Speed score is calculated as fastest_response_time / miner_response_time.
Turning scientific literature into a structured claim-evidence graph
This information was auto-extracted from the GitHub repository and may be incomplete or out of date. Always refer to the subnet's GitHub repository for the latest instructions.
Recency score measures freshness of the most recent item returned. Miners are disqualified if they fail validation checks, exceed timeout (120 seconds), or return invalid data. Validators assess data quality through comprehensive structural validation and random spot checks verifying samples against live platform data.
The sections above were auto-generated from the GitHub repository and may not reflect the latest changes. View repository
FAQs were auto-generated from the GitHub repository and may not reflect the latest changes.
Holder & total-staked metrics as of 4h ago (hourly snapshot)
Requires Node.js 18+ runtime for data collection services
Requires Node.js 18+ runtime for synthetic challenge generation and validation
Install Node Version Manager, Node.js 21, and PM2 process manager
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash && source ~/.bashrc && nvm i 21 && npm i pm2 -g
Clone the subnet repository
git clone https://github.com/oneoneone-io/subnet-111.git && cd subnet-111
Create and activate Python 3.12 Conda environment
conda create -n subnet-111 python=3.12 && conda activate subnet-111
Install Python dependencies and the oneoneone package
pip install -r requirements.txt && pip install -e .
Install Node.js dependencies for the miner stack
cd node && npm install && cd ..
Copy environment configuration templates
cp .env.example .env && cp node/.env.miner.example node/.env
Edit node/.env to add APIFY_TOKEN and GRAVITY_API_TOKEN
nano node/.env
Register wallet and hotkey to mainnet subnet 111 (or use --netuid 427 --subtensor.network test for testnet)
btcli subnet register --no_prompt --wallet.name miner --wallet.hotkey default --netuid 111
Start miner with auto-updater on mainnet (recommended) or use manual setup with pm2 start npm --name node-miner --cwd ./node -- run miner:start
chmod +x auto-updater.sh && pm2 start ./auto-updater.sh --name autoupdater-miner-prod -- miner 111 miner default 9001
Install Node Version Manager, Node.js 21, and PM2 process manager
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash && source ~/.bashrc && nvm i 21 && npm i pm2 -g
Clone the subnet repository
git clone https://github.com/oneoneone-io/subnet-111.git && cd subnet-111
Create and activate Python 3.12 Conda environment
conda create -n subnet-111 python=3.12 && conda activate subnet-111
Install Python dependencies and the oneoneone package
pip install -r requirements.txt && pip install -e .
Install Node.js dependencies for the validator stack
cd node && npm install && cd ..
Copy environment configuration templates
cp .env.example .env && cp node/.env.validator.example node/.env
Edit node/.env to add APIFY_TOKEN, DESEARCH_API_TOKEN, CHUTES_API_TOKEN, and PLATFORM_TOKEN (contact subnet team for token)
nano node/.env
Register wallet and hotkey to mainnet subnet 111 (or use --netuid 427 --subtensor.network test for testnet). Requires minimum stake.
btcli subnet register --no_prompt --wallet.name validator --wallet.hotkey default --netuid 111
Start validator with auto-updater on mainnet (recommended) or use manual setup with pm2 start npm --name node-validator --cwd ./node -- run validator:start
chmod +x auto-updater.sh && pm2 start ./auto-updater.sh --name autoupdater-validator-prod -- validator 111 validator default 9000