Loading
Loading
Neuron registration trends
Organizations need to convert raw unstructured data—conversations, documents, webpages, surveys—into structured, labeled datasets suitable for machine learning and vector databases. Manual human annotation is costly, slow, and difficult to scale; crowdsourcing introduces quality inconsistency. Current centralized services lock data into proprietary systems and require third-party API dependencies.
Decentralized validation networks can solve this by distributing annotation work across independent contributors who are economically incentivized to produce high-quality results. Instead of relying on a single company, validators establish a ground truth (the correct labels for full content), create windowed segments of data, and miners compete by analyzing those segments using LLMs. A transparent scoring mechanism—measuring tag embeddings against ground-truth embeddings using cosine similarity—rewards accuracy and penalizes low-effort submissions.
ReadyAI implements this on Bittensor (subnet 33). Validators pull raw data from any source (a conversation server, customer database, or proprietary dataset), tag the full content with an LLM to establish ground truth, split it into windows, and send masked windows to miners. Miners use configurable LLMs (GPT-4o, Claude, local models) to tag their assigned windows. Validators score each miner's tags against the ground truth, apply quality penalties, and the scoring directly adjusts miner incentives. The result: structured, tagged data at scale—and miners earn rewards based on quality, not volume.
Use cases were auto-generated from the GitHub repository and may not reflect the latest changes.
ReadyAI is a decentralized data structuring and semantic tagging pipeline built on Bittensor that converts raw unstructured data into structured, AI-ready data. Validators establish ground truth by tagging full conversations/documents and create data windows for miners to process. Miners analyze these windows using LLMs to generate semantic tags and embeddings, which are scored against the validator's ground truth using cosine similarity metrics.
The subnet supports multiple task types including conversation tagging, webpage metadata generation, survey analysis, named entity extraction, and skill generation, enabling cost-efficient, scalable data annotation without human annotators.
The ReadyAI subnet operates on a validator-miner architecture where validators pull raw data (conversations, webpages, surveys, documents) from the ReadyAI Conversation Server, establish ground truth semantic tags via LLM annotation of full content, and create windowed data segments. Validators distribute masked task windows to miners, who use configurable LLMs (OpenAI GPT-4o default, also supports Anthropic, OpenRouter, Chutes) to generate semantic tags and embeddings. Miners return annotated results via the CgSynapse protocol.
Validators receive miner responses, score them using cosine similarity between miner tag embeddings and ground truth tag embedding neighborhoods, apply quality penalties, and update per-miner scores. These scores adjust miner weights in the metagraph, influencing future task allocation. Results are persisted to local SQLite databases and optionally logged to Weights & Biases for monitoring.
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.
The system supports multiple task types (conversation tagging, webpage metadata, survey analysis, named entity extraction, skill generation, skill coverage evaluation), each with specialized scoring mechanisms. Validators can optionally run custom conversation servers instead of using ReadyAI's API for proprietary data. Miner endpoints can be encrypted on-chain (commitment protocol) with validators decrypting them using a private key to enable private endpoint discovery.
For tagging-style tasks (conversation_tagging, webpage_metadata_generation, survey_tagging, skill_generation): Each miner-submitted tag is scored by cosine distance from its embedding to the neighborhood of validator ground-truth tag embeddings. The final miner score blends: top-3 unique tag score mean (55% weight), overall mean tag score (25% weight), median tag score (10% weight), and single best tag score (10% weight). Penalties are applied for: not providing tags shared with ground truth, providing fewer than minimum unique tags, or having all tags below a quality threshold.
For skill_coverage_evaluation: Scoring blends Section Coverage (test suite addresses validator-defined sections) and Skill Coverage (test suite represents generated skill), with LLM-as-judge validation of assertion correctness; fabricated assertions score zero. For named_entities_extraction: Uses NoPenaltyGroundTruthTagSimilarityScoringMechanism skipping tag count penalties since entity extraction legitimately yields different result shapes. Scores update weights for miners in the metagraph, determining their proportion of future task allocation and earnings.
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 1h ago (hourly snapshot)
GPU with minimum 6.0 CUDA compute capability required (7.0 recommended). SSD storage preferred with minimum 1000 IOPS (5000 IOPS recommended). CPU-only variant available (gpu_required: false) for miners using OpenAI API only.
GPU with minimum 6.0 CUDA compute capability required (7.0 recommended). SSD storage preferred with minimum 1000 IOPS (5000 IOPS recommended). Validators require COMMITMENT_PRIVATE_KEY environment variable to decrypt miner endpoints and access ReadyAI Conversation Server API.
Clone the ReadyAI subnet repository
git clone https://github.com/afterpartyai/bittensor-conversation-genome-project.git cgp-subnet && cd cgp-subnet
Install Python dependencies including bittensor, torch, openai, and other required packages
pip install -r requirements.txt
Create environment configuration file from template
cp env.example .env
Edit .env to add OpenAI API key, Weights & Biases key, and configure LLM settings (GPT-4o is default)
nano .env (or your preferred editor)
Run miner loop tests to verify configuration is correct before registering on network(optional)
python -m pytest -s --disable-warnings tests/test_full_loop.py
Register your hotkey on the subnet (testnet or mainnet)
btcli s register --netuid 138 --wallet.name <coldkey_name> --wallet.hotkey <hotkey_name> --network test --wallet.path ~/.bittensor/wallets (or --netuid 33 --network finney for mainnet)
Start the miner (use --netuid 33 without --subtensor.network for mainnet)
python3 -m neurons.miner --subtensor.network test --netuid 138 --wallet.name <coldkey_name> --wallet.hotkey <hotkey_name> --logging.debug --axon.port <port>
Clone the ReadyAI subnet repository
git clone https://github.com/afterpartyai/bittensor-conversation-genome-project.git cgp-subnet && cd cgp-subnet
Install Python dependencies including bittensor, torch, openai, wandb, and other required packages
pip install -r requirements.txt
Create environment configuration file from template
cp env.example .env
Edit .env to add OpenAI API key, Weights & Biases key (required for validators), COMMITMENT_PRIVATE_KEY, and configure LLM settings
nano .env (or your preferred editor)
Generate ReadyAI Conversation Server API key by running the validator API key generation script. Requires wallet credentials and will create readyai_api_data.json file
python scripts/get_validator_api_key.py (or 'test' for testnet)
Register your hotkey on the subnet with sufficient stake (minimum stake required for validator permit)
btcli s register --netuid 138 --wallet.name <coldkey_name> --wallet.hotkey <hotkey_name> --network test --wallet.path ~/.bittensor/wallets (or --netuid 33 --network finney for mainnet)
Start the validator (use --netuid 33 without --subtensor.network for mainnet)
python3 -m neurons.validator --subtensor.network test --netuid 138 --wallet.name <coldkey_name> --wallet.hotkey <hotkey_name> --logging.debug --axon.port <port>
Set the COMMITMENT_PRIVATE_KEY environment variable (testnet key provided in env.example; mainnet key distributed securely to validators)
export COMMITMENT_PRIVATE_KEY=<provided_key>