Allora. Нода
Allora — это децентрализованная платформа, ориентированная на создание и управление цифровыми активами с использованием технологий блокчейна. Она позволяет пользователям безопасно создавать, хранить, передавать и торговать активами, включая токены и NFT, а также взаимодействовать с различными приложениями DeFi (децентрализованного финансирования).
Основная цель Allora — предоставить простые и безопасные инструменты для управления активами и участия в блокчейн-экономике.
Инвесторы: Polychain Capital, Delphi Ventures, Blockchain Capital, и другие
Характеристики: 2CPU/4GBRAM/5SSD — минимальные
Арендовать сервер: Hetzner, Contabo
Операционная сеть: Ubuntu 22.04
Сразу предупрежу, что в данной ноде нам потребуется получать поинты (что довольно таки сложно). Всё зависит от того насколько хорошо мы выставим наши настройки и правильности прогнозов ноды. По идее именно эти поинты будут конвертированы в токены проекта в будущем.
Подготовка к установке:
- Скачиваем и устанавливаем Termius
Для Windows - тут
Для macOS - тут
- Арендуем север (рекомендую всем начинать свой путь с Hetzner - на нем лучшее соотношение цены и качества, а также зарегистрируясь по рефке вы получите 20€ на свой аккаунт, которые сможете использовать для оплаты серверов. Гайд по аренде сервера на Hetzner.
- Открываем Termius и жмём New Host
- Откроется панель для ввода данных, где нам понадобится ввести IP который предоставит нам провайдер после аренды сервера в строке "IP or Hostname"; Любое название, которое вам нравится в "Label"; в строке "Username" вводим root, в строке "Password" вводим выданный пароль:
Дополнительные действия перед установкой:
- Открываем кран и запрашиваем тестовые токены.
Приступим к установке:
1. Обновление системы:
sudo apt-get update -y && sudo apt upgrade -y
sudo apt install ca-certificates zlib1g-dev libncurses5-dev libgdbm-dev libnss3-dev curl git wget make jq build-essential pkg-config lsb-release libssl-dev libreadline-dev libffi-dev gcc screen unzip lz4 -y
2. Устанавливаем Python3
sudo apt install python3 python3 --version sudo apt install python3-pip pip3 --version
3. Устанавливаем Docker
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null sudo apt-get update sudo apt-get install docker-ce docker-ce-cli containerd.io docker version
4. Устанавливаем Docker-Compose
VER=$(curl -s https://api.github.com/repos/docker/compose/releases/latest | grep tag_name | cut -d '"' -f 4) curl -L "https://github.com/docker/compose/releases/download/"$VER"/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose chmod +x /usr/local/bin/docker-compose docker-compose --version
sudo groupadd docker sudo usermod -aG docker $USER
5. Устанавливаем GO
sudo rm -rf /usr/local/go curl -L https://go.dev/dl/go1.22.4.linux-amd64.tar.gz | sudo tar -xzf - -C /usr/local echo 'export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin' >> $HOME/.bash_profile echo 'export PATH=$PATH:$(go env GOPATH)/bin' >> $HOME/.bash_profile source .bash_profile go version
6. Устанавливаем Allorad: Wallet
git clone https://github.com/allora-network/allora-chain.git
7. Клонируем репозиторий
git clone https://github.com/allora-network/basic-coin-prediction-node cd basic-coin-prediction-node
8. Настраиваем свой .env
apt install nano cp .env.example .env nano .env
- Ставим такие значение предварительно отредактировать при желании. Сначала прочитай объяснения под значениями
TOKEN=ETH TRAINING_DAYS=30 TIMEFRAME=4h MODEL=SVR REGION=US DATA_PROVIDER=binance CG_API_KEY=
ОБЪЯСНЕНИЯ:
Token
В пункте Token нужно указать используемый токен криптовалюты. Должен быть одним из следующих
'ETH' (Ethereum)
'SOL' (Solana)
'BTC' (Bitcoin)
'BNB' (Binance Coin)
'ARB' (Arbitrum)
TRAINING_DAYS
Представляет количество дней исторических данных для использования в обучении
Должно быть целым числом, большим или равным 1
TIMEFRAME
Определяет временные рамки данных, используемых в формате10min
(минуты),1h
(часы),1d
(дни) и т. д
Coingecko
Для Coingecko гранулярность данных (тело свечи) является автоматической. Чтобы избежать уменьшения масштаба при использовании Coingecko
Используйте TIMEFRAME >= 30 мин, если TRAINING_DAYS <= 2.
Используйте TIMEFRAME >= 4 ч, если TRAINING_DAYS <= 30.
Используйте TIMEFRAME >= 4 дн., если TRAINING_DAYS >= 31.
MODEL
Указывает модель машинного обучения для использования. Должен быть одним из следующих
«Линейная регрессия»
«SVR» (регрессия опорных векторов)
«KernelRidge»
«BayesianRidge»
REGION
Определяет регион для API Binance. Должен быть'EU'
или'US'
Должно быть EU или US
DATA_PROVIDER
Указывает поставщика данных для использования. Должен быть либо ,'Binance'
либо'Coingecko'
CG_API_KEY
: Ваш ключ API Coingecko, требуется, если выDATA_PROVIDER
установили'coingecko'
CG_API_KEY вы можете взять на сайте, выбрав бесплатный режим
- После того, как отредактировали свой .env - нажимаем CTRL X, затем Y и Enter. Таким образом мы сохранили данный файл.
9. Настраиваем свой config.json
cp config.example.json config.json nano config.json
- Удаляем все содержимое кнопками Ctrl K
- Вставляем этот текст, заменяем “your phase” на вашу сид фразу кеплер кошелька, который создавали в начале.
- "Token": "ETH" - ETH меняем в случае, если меняли в пункте 8.
{ "wallet": { "addressKeyName": "YourWalletName", "addressRestoreMnemonic": "YourSeedPhrase", "alloraHomeDir": "", "gas": "auto", "gasAdjustment": 1.5, "nodeRpc": "https://allora-rpc.testnet.allora.network/", "maxRetries": 1, "delay": 1, "submitTx": true }, "worker": [ { "topicId": 1, "inferenceEntrypointName": "api-worker-reputer", "loopSeconds": 2, "parameters": { "InferenceEndpoint": "http://inference:8000/inference/{Token}", "Token": "ETH" } }, { "topicId": 2, "inferenceEntrypointName": "api-worker-reputer", "loopSeconds": 4, "parameters": { "InferenceEndpoint": "http://inference:8000/inference/{Token}", "Token": "ETH" } }, { "topicId": 7, "inferenceEntrypointName": "api-worker-reputer", "loopSeconds": 6, "parameters": { "InferenceEndpoint": "http://inference:8000/inference/{Token}", "Token": "ETH" } } ] }
chmod +x init.config ./init.config
docker compose pull docker compose up --build -d
docker logs -f worker
Дополнительные команды:
docker logs -f worker --tail=50
docker stop worker updater inference
docker rm worker updater inference
rm -rf basic-coin-prediction-node
rm -rf allora-offchain-node
rm -rf allora-chain