The previous section covered the off-chain configuration of the AI Orchestrator node. This section details how to connect an AI Orchestrator node to the AI Subnet and earn fees for processing AI inference jobs.

Prerequisites

  • An established Mainnet Orchestrator within the Top 100 on the Livepeer network
  • A dedicated static IP address or domain name for your AI Orchestrator node
  • An additional Ethereum wallet, funded with enough gas to cover transaction fees for ticket redemption

Ensure you can Redeem Tickets

As the AI Subnet is in its Alpha phase, its software isn’t integrated with the Mainnet Transcoding Network software stack yet. This means that your Mainnet Transcoding Network Orchestrator is currently unable to directly redeem AI-related tickets. However, there are two methods to enable your AI Orchestrator node to redeem tickets:

To enable ticket redemption for your AI Orchestrator, set the ticket recipient to your Mainnet Transcoding Network Orchestrator’s ETH address. This method allows the earned fees to be credited directly to your main Orchestrator without requiring additional setup or causing disruption.

1

Wallet Creation

For security, it’s advised to use a separate account from your Mainnet Transcoding Network Orchestrator.

Create a new Ethereum wallet for your AI Orchestrator. Follow the Create a Wallet guide in the Catalyst documentation for detailed instructions.

2

Wallet Funding

Transfer sufficient ETH to the new wallet to cover the gas costs for redeeming AI tickets on-chain.

3

Recipient Configuration

To direct the fees earned by your AI Orchestrator to your main Orchestrator, set the ticket recipient as the Ethereum address of your main Orchestrator. This can be done by adding the following flag when launching your AI Orchestrator node:

./livepeer \
  -ethOrchAddr <MAIN_ORCH_ADDRESS> \
  ... \

Advertising Your AI Service URI

To make your AI Orchestrator node discoverable by AI Gateway nodes on the AI Subnet, you need to advertise your AI service URI on-chain. You can do this by registering your service URI with the AIServiceRegistry contract on the Arbitrum Mainnet.

The easiest and recommended method is to use the Foundry smart contract deployment toolchain.

1

Install Foundry Cast

Install Foundry Cast by executing the following commands in your terminal:

curl -L https://foundry.paradigm.xyz | bash
source /home/<USERNAME>/.bashrc
foundryup
2

Set your Service URI

No need to move your Mainnet Transcoding Network Orchestrator wallet. You can run Foundry Cast and register your AI Orchestrator from any machine.

Set your Service URI, ensuring it starts with https://, with the SetServiceURI function on the AIServiceRegistry contract. Use the KeyStore file and password from your Mainnet Transcoding Network Orchestrator wallet:

cast send --keystore '<PATH_TO_KEYSTORE_FILE>' --password '<PASSWORD>' --rpc-url <ARBITRUM_RPC_URI> 0x04C0b249740175999E5BF5c9ac1dA92431EF34C5 "setServiceURI(string)" https://<PUBLIC_ORCH_IP_OR_URL>:<PUBLIC_ORCH_PORT>

After successful execution, the output should look like this:

blockHash:               0x214a65d2dffd1732e971bd3662dcb681663c2eb0c95a33c8918bab0a44e2d3ed
blockNumber:             200370198
3

Verify your Service URI

Verify your Service URI by invoking the getServiceURI function on the AIServiceRegistry contract:

cast call --rpc-url <ARBITRUM_RPC_URI> 0x04C0b249740175999E5BF5c9ac1dA92431EF34C5 "getServiceURI(address)" <PUBLIC_WALLET_KEY> | xxd -r -p

If successful, the output should be:

https://<PUBLIC_ORCH_IP_OR_URL>:<PUBLIC_ORCH_PORT>

Congratulations! Your AI Orchestrator node is now discoverable by AI Gateway nodes and is ready to execute AI inference tasks on the AI Subnet! 🚀

Launch your On-chain AI Orchestrator

Once you’ve set your AI service URI on-chain, you can launch your AI Orchestrator node to start processing AI inference jobs on the AI Subnet. The commands to start the AI Orchestrator are similar to those for the off-chain Orchestrator, but with additional flags to enable on-chain functionality:

  • -network=arbitrum-one-mainnet: Connects the AI Orchestrator node to the Arbitrum Mainnet network.
  • -ethUrl=https://arb1.arbitrum.io/rpc: Sets the Arbitrum Mainnet RPC URL. You can replace this with your own RPC URL.
  • -ethKeystorePath=/root/.lpData/arbitrum-one-mainnet/keystore: Sets the path to the AI Orchestrator’s Ethereum keystore file.
  • -ethAcctAddr <AI_SUBNET_ORCH_ETH_ADDRESS>: Sets the Ethereum address of the AI Orchestrator.
  • -ethPassword=/root/.lpData/.eth_secret: Sets the Ethereum keystore password file path.
  • -ethOrchAddr=<MAIN_ORCH_ETH_ADDRESS>: Sets the Ethereum address of the Mainnet Transcoding Network Orchestrator.

Due to current limitations in the AI Subnet software, two additional flags are required:

  • -ticketEV=2999999999999: This flag ensures that the AI Orchestrator doesn’t trigger maximum ticket limits set by the go-livepeer software.