Skip to main content

Allora Price Prediction Worker Node Installation

Updating the System, Installing Python and Installing Required Libraries​

apt update && apt upgrade -y
sudo apt install python3 && sudo apt install python3-pip
apt install ca-certificates curl gnupg lsb-release git htop liblz4-tool screen wget make jq gcc unzip lz4 build-essential pkg-config libssl-dev libreadline-dev libffi-dev zlib1g-dev libncurses5-dev libgdbm-dev libnss3-dev -y < "/dev/null"

Installing Docker​

curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh

Installing Docker Compose​

curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose

Installing Go​

ver="1.22.2" && \
wget "https://golang.org/dl/go$ver.linux-amd64.tar.gz" && \
rm -rf /usr/local/go && \
tar -C /usr/local -xzf "go$ver.linux-amd64.tar.gz" && \
rm "go$ver.linux-amd64.tar.gz" && \
echo "export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin" >> $HOME/.bash_profile && \
source $HOME/.bash_profile

Installing Allora & Wallet​

git clone https://github.com/allora-network/allora-chain.git
cd allora-chain && make all

Creating a New Wallet​

allorad keys add WALLET_NAME

Importing an Existing Wallet​

allorad keys add WALLET_NAME --recover

Then import your wallet to Keplr.

Adding the Allora Network​

Go to the Allora explorer page and add the network.

Allora Dashboard​

We will monitor our scores on the Allora dashboard.

Faucet​

Request tokens for the Allora wallet from the Faucet.

Installing the Allora Huggingface Walkthrough Worker​

cd $HOME
git clone https://github.com/allora-network/allora-huggingface-walkthrough
cd allora-huggingface-walkthrough

Creating the Data Files​

mkdir worker-data
chmod -R 777 worker-data

Changing Port (Optional)​

If there is another application on your server that uses port 8000, you need to change it.

Kullanmak istediğiniz port numarasını YOUR_PORT yazan yere girin ve kodu çalıştırın. Enter the port number you want to use in the place where it says YOUR_PORT and run the code.

PORT="YOUR_PORT"

Then run following code.

sed -i.bak -e "s%8000:8000%${YOUR_PORT}:${YOUR_PORT}%g" $HOME/allora-huggingface-walkthrough/docker-compose.yaml 

Creating the Config File​

Run the code below by entering your wallet name and seed phrase.

MNEMONIC=""
CUZDAN_ADI=""

Run the following code without any changes.

tee $HOME/allora-huggingface-walkthrough/config.json > /dev/null << EOF
{
"wallet": {
"addressKeyName": "$CUZDAN_ADI",
"addressRestoreMnemonic": "$MNEMONIC",
"alloraHomeDir": "/root/.allorad",
"gas": "1000000",
"gasAdjustment": 1.0,
"nodeRpc": "https://allora-rpc.testnet-1.testnet.allora.network/",
"maxRetries": 1,
"delay": 1,
"submitTx": false
},
"worker": [
{
"topicId": 1,
"inferenceEntrypointName": "api-worker-reputer",
"loopSeconds": 1,
"parameters": {
"InferenceEndpoint": "http://inference:8000/inference/{Token}",
"Token": "ETH"
}
},
{
"topicId": 2,
"inferenceEntrypointName": "api-worker-reputer",
"loopSeconds": 3,
"parameters": {
"InferenceEndpoint": "http://inference:8000/inference/{Token}",
"Token": "ETH"
}
},
{
"topicId": 3,
"inferenceEntrypointName": "api-worker-reputer",
"loopSeconds": 5,
"parameters": {
"InferenceEndpoint": "http://inference:8000/inference/{Token}",
"Token": "BTC"
}
},
{
"topicId": 4,
"inferenceEntrypointName": "api-worker-reputer",
"loopSeconds": 2,
"parameters": {
"InferenceEndpoint": "http://inference:8000/inference/{Token}",
"Token": "BTC"
}
},
{
"topicId": 5,
"inferenceEntrypointName": "api-worker-reputer",
"loopSeconds": 4,
"parameters": {
"InferenceEndpoint": "http://inference:8000/inference/{Token}",
"Token": "SOL"
}
},
{
"topicId": 6,
"inferenceEntrypointName": "api-worker-reputer",
"loopSeconds": 5,
"parameters": {
"InferenceEndpoint": "http://inference:8000/inference/{Token}",
"Token": "SOL"
}
},
{
"topicId": 7,
"inferenceEntrypointName": "api-worker-reputer",
"loopSeconds": 2,
"parameters": {
"InferenceEndpoint": "http://inference:8000/inference/{Token}",
"Token": "ETH"
}
},
{
"topicId": 8,
"inferenceEntrypointName": "api-worker-reputer",
"loopSeconds": 3,
"parameters": {
"InferenceEndpoint": "http://inference:8000/inference/{Token}",
"Token": "BNB"
}
},
{
"topicId": 9,
"inferenceEntrypointName": "api-worker-reputer",
"loopSeconds": 5,
"parameters": {
"InferenceEndpoint": "http://inference:8000/inference/{Token}",
"Token": "ARB"
}
}

]
}
EOF

Creating the Coingecko API key**​

Get an API Key for yourself at https://www.coingecko.com/en/developers/dashboard.

Write your own API in the code below, where it saysYOUR_API, and run the code.

APIKEY="YOUR_API"

Then run following code.

sed -i.bak -e "s%<Your Coingecko API key>%${APIKEY}%g" $HOME/allora-huggingface-walkthrough/app.py 

Running the Allora Huggingface Worker​

chmod +x init.config
./init.config
docker compose up --build -d

Checking the Logs​

docker compose logs -f worker
docker compose logs -f

Allora Points​

Go to Allora Points page and connect your wallet to check your scores.

Cheking Update the Node and ETH Price​

curl http://localhost:8000/update
curl http://localhost:8000/inference/ETH

Completely Deleting the Node​

rm -rf allora-chain
rm -rf .allorad
rm -rf basic-coin-prediction-node
bash -c "$(curl -s https://raw.githubusercontent.com/blackowltr/Testnetler-ve-Rehberler/main/Allora/stop.sh)"