Becoming a Miner

How to Become a Miner of the Subnet

Introduction

Infinite Games miners help power decentralised forecasting by submitting event-based probability predictions. This guide walks you through everything you need — from installing your miner to forecasting with AI.

What Does a Miner Actually Do?

Miners in Infinite Games receive real-time forecasting events and respond with a probability (between 0 and 1) that the event will occur. The data format is pre-defined in neurons/protocol.py. You only need to fill in the probability value. Miners get a new request every 3–5 minutes. You don’t need to recalculate constantly. The baseline miner includes a caching system to save on compute. This is useful if you’re using large LLMs like GPT-4.

How Are Miners Rewarded?

As part of the Bittensor network, our system operates a performance-based reward mechanism. Miners earn TAO in line with their score, calculated according to:

  • Forecast quality — how accurate your probabilities are.

  • Forecast timing — the earlier you forecast, the better.

  • Consistency — failure to forecast leads to penalties.

Events are scored every 4 hours — early, confident predictions pay more.

It is fundamental for a miner to understand deeply the scoring mechanism.

It is explained in details herearrow-up-right.

You can find the code herearrow-up-right.

What Events Will I Be Predicting?

Events are automatically generated by our LLM pipeline based on triggers from Polymarket and X. Most events focus on geopolitics, economics, crypto, and company earnings.

Examples include: Geopolitical:

Will the US confirm a new arms package to Ukraine by March 20, 2025?

Crypto:

Will the market cap of Bitcoin increase by more than 4.2% on March 25, 2025?

Economic:

Will the 5-Year TIPS bond exceed -2.44% on March 27, 2025??

Earnings:

Will LOCL’s stock open higher the day after its March 28 earnings call?

Polymarket:

Will NDP win 10–15 seats in the upcoming Canadian Election?

STEP-BY-STEP SETUP

1

Requirements

System:

Minimum requirements to run the public miner:

  • Storage: 50 GB

  • RAM: 4–8 GB

  • Consistent uptime (downtime is penalized)

Optional:

  • OpenAI or Perplexity API keys if using the built-in LLM forecaster

Tokens:

To register your miner on the network, you’ll need TAO tokens:

  • Testnet: Faucet TAO is used to simulate registration and prediction. These tokens are free and can be requested via the Bittensor Discordarrow-up-right. How this is done is provided below.

  • Mainnet: Real TAO tokens are required. These can be purchased on supported exchanges (e.g., Kraken, MEXC) and withdrawn to your Bittensor wallet.

2

Set Up The Environment

Clone the github repo:

Change directory:

Create a Virtual Environment:

Activate the Virtual Environment:

Install dependencies:

NOTE: Keep the virtual environment active while running the miner.

3

Create Wallets

Generate shareable coldkey and hotkey pairs:

Using an existing wallet? Regenerate it using your private mnemonic:

4

Start by testing your miner on our testnet before deploying to mainnet.

Testnet netuid: 155

Mainnet netuid: 6

Get testnet TAO:

Ask in the Bittensor Discord under “Requests for Testnet TAO” using this format:

  • Testnet netuid: 155

  • Mainnet netuid : 6

  • Roles: Miner

  • Coldkey: - paste your coldkey here -

  • Do you have your mnemonic phrase for the coldkey written down in a safe place? Yes

5

Register Keys

To register your miner on the testnet add the --subtensor.network test flag.

Then, follow the prompts:

6

Confirm Key Registration

To check your miner on the testnet add the --subtensor.network test flag The previous command should display the following:

7

Confirm Incoming Validator Requests Are Being Accepted

Ensure your firewall doesn't block the port on which validators query your miner. The port can be specified with the argument --axon.port and by default it is 8091 .

After registering your miner, check your logs to confirm you are receiving forecasting events. If present, you are correctly connected to the network. If not, please check the firewall of your provider as it may be blocking the port queried by validators.

8

Running a Miner

Run one of the two commands below inside the infinite_games directory to run your miner.

For the testnet:

For the mainnet:

Then, install and run PM2 commands:

Confirm PM2 is installed and running correctly:

Now, run the miner:

Modify the command above according to your purpose — for example, changing to the appropriate netuid. Use the explanations for Variables and PM2 Commands below to guide you.

9

Stopping Your Miner

Press CTRL + C in the terminal where the miner is running.

10

Using the Pre-Built LLM Forecaster

It is available at neurons/miner/forecasters/llm_forecaster.pyarrow-up-right and may be used for making predictions. To use it:

  1. Set your API keys as environment variables:

  2. Open neurons/miner.py#L31arrow-up-right and locate the assign_forecaster function

  3. Replace the placeholder forecaster with LLMForecaster.

  4. Start your miner — it will now use LLM models to forecast events.

11

Creating Your Own Forecaster (Advanced)

Want to build your own forecasting logic? Here’s how:

  1. Create a new forecaster class based on the existing file: neurons/miner/forecasters/base.pyarrow-up-right

  2. Implement the _run method in your forecaster

    1. It must return a number between 0 and 1.

    2. Event information can be accessed through the MinerEvent class neurons/miner/models/event.pyarrow-up-right

  3. Open neurons/miner.pyarrow-up-right and find the assign_forecaster function. Update it according to purpose — you can even use different forecasters for different types of events. Check the event info inside assign_forecaster and route accordingly.

12

Analysing Miner Performance (Advanced)

Before Joining Mainnet:

You can measure your miner's accuracy on testnet using these API endpoints:

  • Ongoing events: https://ifgames.win/api/v2/events?from_date=1&offset=0&limit=250

  • Resolved events: https://ifgames.win/api/v2/events/resolved?offset=0&resolved_since=1&limit=100

You can also explore previously broadcasted questions via the main analytics dashboardarrow-up-right.

New tools will be available soon to help you benchmark your miner before going live on mainnet.

After Registering on Mainnet:

Monitor how well your miner is doing using the following tools:

For a big-picture view, check Taostatsarrow-up-right:

  • Metagraph tab → live miner rankings

  • Distribution tab → real-time incentive flow

QUICK REFERENCE

chevron-rightVariableshashtag

--wallet.name Provide the name of your wallet. --wallet.hotkey Enter your wallet's hotkey. --netuid 6 for mainnet; 155 for testnet. --subtensor.network Specify the network you want to use (finney, test, local, etc). --logging.debug Adjust the logging level according to your preference. --axon.port Specify the port number you want to use.

chevron-rightPM2 Commandshashtag

For monitoring status and logs:

pm2 status pm2 logs 0

For managing your miner:

pm2 list lists all pm2 processes

pm2 logs <pid> replace pid with your process ID to view logs

pm2 restart <pid> restart this pic

pm2 reload <pid> reload this pic

pm2 stop <pid> stops your pid

pm2 del <pid> deletes your pid

pm2 describe <pid> prints out metadata on the process

Last updated