🌟 Important Prerequisites Notice

Before you embark on this journey with Masa Subnet 42, please take note:

  1. 🌐 Data Scraping Focus: Subnet 42 is designed for efficient data scraping from the X (Twitter) network. Ensure your setup is optimized for high-quality data extraction.
  2. πŸ” Validation Role: Validators are crucial in assessing the quality and relevance of the data scraped by miners. Be prepared to engage in this validation process.
  3. πŸ§ͺ Testnet Availability: You can test your setup on the testnet (netuid 165) before moving to the mainnet to ensure everything is functioning correctly.

πŸ“‹ Prerequisites

  • 🐍 Python 3.12 or higher
  • πŸ’Ό A Bittensor wallet with TAO
  • 🌐 Access to the Bittensor network (testnet or mainnet)

🌟 Key Features of Masa Subnet 42

Masa Subnet 42 offers specialized tools and frameworks to enhance your data scraping capabilities:

  • Masa SDK: Provides efficient tools for data scraping and validation.
  • Kurtosis Reward Curve: Ensures fair distribution of rewards based on performance.
  • Data Scraping and Validation: Miners extract trending tweets, while validators ensure data quality and relevance.

These features are designed to help you effectively participate in the data-driven ecosystem of Masa Subnet 42.

πŸ› οΈ Environment Setup

1

Clone the repository

git clone https://github.com/masa-finance/masa-bittensor
cd masa-bittensor
2

Create and activate virtual environment

# Create virtual environment
python -m venv venv
# Activate virtual environment
source venv/bin/activate
3

Get latest release

latest_tag=$(git describe --tags `git rev-list --tags --max-count=1`)
4

Checkout latest release

git checkout $latest_tag
5

Install Required Packages

pip install -e .
6

Run the validator

pm2 start "make run-validator"

Your validator should now be running! To view the logs, run

pm2 logs

This command runs the validator script with the following options:

  • --netuid $(NETUID): Specifies the network unique identifier for the validator.
  • --wallet.name validator: Uses the wallet named β€œvalidator”.
  • --wallet.hotkey default: Uses the default hotkey for the wallet.
  • --axon.port 8092: Sets the port for the Axon server to 8092.
  • --neuron.debug: Enables debug mode for the neuron, providing detailed output for troubleshooting.
  • --logging.debug: Enables debug logging, which provides verbose logging information.
  • --logging.logging_dir ~/.bittensor/wallets: Specifies the directory where logs will be stored.
  • --neuron.axon_off: Disables the Axon server to not expose validator’s IP

This setup is useful for running a validator node with detailed logging and debugging enabled, while disabling the Axon server.