Skip to content

(Windows/Linux) Local WebUI for finetuning, evaluation and generation of neural network models (LLM and StableDiffusion) on python (In Gradio interface)

License

Notifications You must be signed in to change notification settings

Dartvauder/NeuroTrainerWebUI

Repository files navigation

Description:

A simple and convenient interface for using of various neural network models. You can create datasets, finetune, evaluate and generate with LLM and StableDiffusion, using various hyperparameters. You can also download the LLM and StableDiffusion models, change the application settings inside the interface and check system sensors

The goal of the project - to create the easiest possible application to finetune, evaluate and generate of neural network models

LLM: 1

StableDiffusion: 2

ModelDownloader: 3

Settings: 4

System: 5

Features:

  • Easy installation via install.bat(Windows) or install.sh(Linux)
  • Flexible and optimized interface (By Gradio)
  • Authentication via admin:admin (You can enter your login details in the GradioAuth.txt file)
  • Support for Transformers: finetune, evaluate, quantize and generate (LLM)
  • Support for Diffusers and Safetensors: finetune, evaluate, conversion and generate (StableDiffusion)
  • Full and LORA types of finetune, evaluate and generate (For LLM and StableDiffusion)
  • Ability to create a dataset (For LLM and StableDiffusion)
  • ModelDownloader (For LLM and StableDiffusion)
  • Application settings
  • Ability to see system sensors

Required Dependencies:

Minimum System Requirements:

  • System: Windows or Linux
  • GPU: 8GB+ or CPU: 16 core 3.6Ghz
  • RAM: 24GB+
  • Disk space: 10GB+
  • Internet for installing

How to install:

Windows

  1. git clone https://github.com/Dartvauder/NeuroTrainerWebUI.git to any location
  2. Run the Install.bat and wait for installation
  3. After installation, run Start.bat
  4. Select the file version and wait for the application to launch
  5. Now you can start experiment with your models!

To get update, run Update.bat To work with the virtual environment through the terminal, run Venv.bat

Linux

  1. git clone https://github.com/Dartvauder/NeuroTrainerWebUI.git to any location
  2. In the terminal, run the ./Install.sh and wait for installation of all dependencies
  3. After installation, run ./Start.sh
  4. Wait for the application to launch
  5. Now you can start experiment with your models!

To get update, run ./Update.sh To work with the virtual environment through the terminal, run ./Venv.sh

How to use:

Interface has five tabs: LLM, StableDiffusion, ModelDownloader, Settings and System. Select the one you need and follow the instructions below

LLM - has five sub-tabs:

Dataset:

  • Here you can create a new or expand an existing dataset
  • Datasets are saved in a folder datasets/llm

Finetune:

  1. First upload your models to the folder: models/llm
  2. Upload your dataset to the folder: datasets/llm
  3. Select your model and dataset from the drop-down lists
  4. Select a finetune method
  5. Write a name for the model
  6. Set up the model hyper-parameters for finetuning
  7. Click the Submit button to receive the finetuned model

Evaluate:

  1. First upload your models to the folder: finetuned-models/llm
  2. Upload your dataset to the folder: datasets/llm
  3. Select your models and dataset from the drop-down lists
  4. Set up the models parameters for evaluate
  5. Click the Submit button to receive the evaluate of model

Quantize:

  1. First upload your models to the folder: finetuned-models/llm
  2. Select a Model and Quantization Type
  3. Click the Submit button to receive the conversion of model

Generate:

  1. Select your models from the drop-down list
  2. Set up the models according to the parameters you need
  3. Set up the models parameters to generate
  4. Click the Submit button to receive the generated text

StableDiffusion - has five sub-tabs:

Dataset:

  • Here you can create a new or expand an existing dataset
  • Datasets are saved in a folder datasets/sd

Finetune:

  1. First upload your models to the folder: models/sd
  2. Upload your dataset to the folder: datasets/sd
  3. Select your model and dataset from the drop-down lists
  4. Select a model type and finetune method
  5. Write a name for the model
  6. Set up the model hyper-parameters for finetuning
  7. Click the Submit button to receive the finetuned model

Evaluate:

  1. First upload your models to the folder: finetuned-models/sd
  2. Upload your dataset to the folder: datasets/sd
  3. Select your models and dataset from the drop-down lists
  4. Select a model method and model type
  5. Enter your prompt
  6. Set up the models parameters for evaluate
  7. Click the Submit button to receive the evaluate of model

Conversion:

  1. First upload your models to the folder: finetuned-models/sd
  2. Select a model type
  3. Set up the models parameters for convert
  4. Click the Submit button to receive the conversion of model

Generate:

  1. First upload your models to the folder: finetuned-models/sd
  2. Select your models from the drop-down list
  3. Select a model method and model type
  4. Enter your prompt
  5. Set up the models parameters to generate
  6. Click the Submit button to receive the generated image

ModelDownloader:

  • Here you can download LLM and StableDiffusion models. Just choose the model from the drop-down list and click the Submit button

LLM models are downloaded here: models/llm

StableDiffusion models are downloaded here: models/sd

Settings:

  • Here you can change the application settings. For now you can only change Share mode to True or False

System:

  • Here you can see the indicators of your computer's sensors by clicking on the Submit button

Additional Information:

  1. All finetunes are saved in the finetuned-models folder
  2. You can press the Clear button to reset your selection
  3. You can turn off the application using the Close terminal button
  4. You can open the finetuned-models, datasets, and outputs folders by clicking on the folder name button

Where can i get models and datasets?

  • LLM and StableDiffusion models can be taken from HuggingFace or from ModelDownloader inside interface
  • LLM and StableDiffusion datasets can be taken from HuggingFace or you can create own datasets inside interface

Wiki

Acknowledgment to developers

Many thanks to these projects because thanks to their applications/libraries, i was able to create my application:

First of all, I want to thank the developers of PyCharm and GitHub. With the help of their applications, i was able to create and share my code

Third Party Licenses:

Many models have their own license for use. Before using it, I advise you to familiarize yourself with them:

Donation

If you liked my project and want to donate, here is options to donate. Thank you very much in advance!

  • CryptoWallet(BEP-20) - 0x3d86bdb5f50b92d0d7Eb44F1a833acC5e91aAEcA

  • "Buy Me A Coffee"

About

(Windows/Linux) Local WebUI for finetuning, evaluation and generation of neural network models (LLM and StableDiffusion) on python (In Gradio interface)

Topics

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Languages