September 15, 2024

Как создать свою модель Allora

Способ мне поинтов не принес. Надо делать действия посложнее.

Создаем космос валлет которого не жаль

Меняем чейн на аллора и в faucet просим монет

Идем сюда

https://github.com/0xtnpxsgt/Allora-Comprehensive-Guide/blob/main/Allora101Guide.md

Копируем и ставим скрипт

wget https://raw.githubusercontent.com/0xtnpxsgt/Allora-Comprehensive-Guide/main/alloraoneclickinstall.sh && chmod +x alloraoneclickinstall.sh && ./alloraoneclickinstall.sh

Вводим мнемонику с кошелька выше

Дальше docker compose down

Выходим с папки с докером

Создаем новую папку. Для создания модели надо сервер помощнее, ядер 8, а можно на компе создать в wsl ubuntu

Скачиваем в папку файл https://github.com/0xtnpxsgt/Allora-Comprehensive-Guide/blob/main/birnn_model.py

Меняем на свое_название_модели.py Например bear_model.py

Далее правим сам файл. В python важно не нарушить отступы, иначе будет ошибка

class BiRNNModel(nn.Module):  // Меняем BiRNNModel на свою модель например Bear  
/// будет вот так:   class Bear(nn.Module):
 super(BiRNNModel, self).__init__()  // также меняем на Bear
def train_model(model, data, epochs=50, lr=0.001, sequence_length=10): // epoch меняем на свой 50 или выше
 torch.save(model.state_dict(), "birnn_model_optimized.pth")    /// меняем birnn_model_optimized.pth  на bear_model_optimized.pth
    print("Model trained and saved as birnn_model_optimized.pth")  // также меняем на bear_model_optimized.pth
 model = BiRNNModel(input_size=1, hidden_layer_size=115, output_size=1, num_layers=2, dropout=0.3) 
 
   // Меняем  hidden_layer_size от 103 до 128, 

num_layers 2 или 3 или 4 или даже больше

dropout=0.3 можно поменять на 0.31, 0,32 или подобное

Сохраняем файл.
///
Измененную строку сохраняем еше и отдельно, например

model = Bear(input_size=1, hidden_layer_size=111, output_size=1, num_layers=4, dropout=0.32)

///////

Запускаем файл bear_model.py в командной строке:   python3 bear_model.py

Ждем формирование модели

В конце в папке должен пояится файл bear_model_optimized.pth

Копируем файл в папку с нодой на сервере


Дальше в папке на сервере

nano app.py

class BiRNNModel(nn.Module):   //// class Bear(nn.Module):
 super(BiRNNModel, self).__init__()   //  Bear

Строку ниже

model = BiRNNModel(input_size=1, hidden_layer_size=115, output_size=1, num_layers=2, dropout=0.3)
Меняем на:  
model = Bear(input_size=1, hidden_layer_size=111, output_size=1, num_layers=4, dropout=0.32) 

// Она в точности должна быть как мы изменили в модели
bear_model.py

model.load_state_dict(torch.load("birnn_model_optimized.pth", weights_only=True))  // меняем на bear_model_optimized.pth или то как вы сохранили модель
  # Prepare data for the BiRNN model   ..  меняэм на свою модель


сохраняем

//

Дальше nano config.json 

Меняем RPC на актуальную

Дальше

"submitTx": false на "submitTx": true
сохраняем

дальше chmod +x init.config

./init.config

дальше docker compose up -d