Skip to main content

A Stable Diffusion GUI

Project description

Banner Discord PyPi GitHub GitHub last commit GitHub issues GitHub closed issues GitHub pull requests GitHub closed pull requests


AI RUNNER


Run AI models on your own hardware

Stable Diffusion

img.png

Customizable Chatbots with Moods and Personalities

img_1.png


โญ Features

AI Runner is an AI interface which allows you to run open-source large language models (LLM) and AI image generators (Stable Diffusion) on your own hardware.

Feature Description
๐Ÿ—ฃ๏ธ LLMs and communication
โœ… Voice-based chatbot conversations Have conversations with a chatbot using your voice
โœ… Text-to-speech Convert text to spoken audio
โœ… Speech-to-text Convert spoken audio to text
โœ… Customizable chatbots with LLMs Generate text using large language models
โœ… RAG on local documents and websites Interact with your local documents using an LLM
๐ŸŽจ Image Generation
โœ… Stable Diffusion (all versions) Generate images using Stable Diffusion
โœ… Drawing tools Turn sketches into art
โœ… Text-to-Image Generate images from textual descriptions
โœ… Image-to-Image Generate images based on input images
๐Ÿ–ผ๏ธ Image Manipulation
โœ… Inpaint and Outpaint Modify parts of an image while maintaining context
โœ… Controlnet Control image generation with additional input
โœ… LoRA Efficiently fine-tune models with LoRA
โœ… Textual Embeddings Use textual embeddings for image generation control
โœ… Image Filters Blur, film grain, pixel art and more
๐Ÿ”ง Utility
โœ… Run offline, locally Run on your own hardware without internet
โœ… Fast generation Generate images in ~2 seconds (RTX 2080s)
โœ… Run multiple models at once Utilize multiple models simultaneously
โœ… Dark mode Comfortable viewing experience in low-light environments
โœ… Infinite scrolling canvas Seamlessly scroll through generated images
โœ… NSFW filter toggle Help control the visibility of NSFW content
โœ… NSFW guardrails toggle Help prevent generation of LLM harmful content
โœ… Fully customizable Easily adjust all parameters
โœ… Fast load time, responsive interface Enjoy a smooth and responsive user experience
โœ… Pure python No reliance on a webserver, pure python implementation

๐Ÿ’ป System Requirements

Minimum system requirements

  • OS: Linux
  • Processor: Intel i5 or equivalent
  • Memory: 16 GB RAM
  • Graphics: 2080s RTX or higher
  • Network: Broadband Internet connection required for setup
  • Storage: 130 GB available space

Recommended system specs

  • OS: Linux
  • Processor: Intel i7 or equivalent
  • Memory: 30 GB RAM
  • Graphics: 4090 RTX or higher
  • Network: Broadband Internet connection required for setup
  • Storage: 130 GB available space

๐Ÿ”ง Installation

Linux

Install prerequisites

sudo apt update
sudo apt install -y fonts-noto-color-emoji
sudo apt install -y libportaudio2
sudo apt install -y libxcb-cursor0
sudo apt install -y espeak
sudo apt install -y xclip
sudo apt install -y git
sudo apt install -y python3-pip
sudo apt install -y python3.10-venv

Clone the repository

git clone https://github.com/Capsize-Games/airunner.git
cd airunner

Create a virtual environment

python3 -m venv airunner
source airunner/bin/activate

Install AI Runner

pip install -e .

๐Ÿš€ Running AI Runner

Linux

Activate the virtual environment

source airunner/bin/activate

Run AI Runner

cd airunner/src/airunner
./main.py

Models

AI Runner installs all of the models required to run a chatbot with text-to-speech and speech-to-text capabilities, as well as the core models required for Stable Diffusion. However, you must supply your own art generator models.

You can download models from Huggingface.co or civitai.com.

The supported Stable Diffusion models are:

  • SD 1.5
  • SDXL 1.0
  • SDXL Turbo

Models must be placed in their respective directories in the airunner directory.

~/.local/share/airunner
โ”œโ”€โ”€ art
โ”‚   โ”œโ”€โ”€ models
โ”‚   โ”‚   โ”œโ”€โ”€ SD 1.5
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ lora
โ”‚   โ”‚   โ”‚   โ””โ”€โ”€ embeddings
โ”‚   โ”‚   โ”œโ”€โ”€ SDXL 1.0
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ lora
โ”‚   โ”‚   โ”‚   โ””โ”€โ”€ embeddings
โ”‚   โ”‚   โ””โ”€โ”€ SDXL Turbo
โ”‚   โ”‚       โ”œโ”€โ”€ lora
โ”‚   โ”‚       โ””โ”€โ”€ embeddings

Privacy and Security

Although AI Runner v3.0 is built with Huggingface libraries, we have taken care to strip the application of any telemetry or tracking features.


Internet access

Only the setup wizard needs access to the internet in order to download the required models.

For more information see the Darklock and Facehuggershield libraries.


Disc access

Write access for the transformers library has been disabled, preventing it from creating a huggingface cache directory at runtime.

The application itself may still access the disc for reading and writing, however we have restricted reads and writes to the user provided airunner directory (by default this is located at ~/.local/share/airunner).

All other attempts to access the disc are blocked and logged for your review.

For more information see src/security/restrict_os_access.py.


Huggingface Hub

The Huggingface Hub is installed so that Transformers, Diffusers and other Huggingface libraries will continue to function as expected, however it has been neutered to prevent it from accessing the internet.

The security measures taken for this library are as follows

  • Prevented from accessing the internet
  • Prevented from accessing the disc
  • All environment variables set for maximum security
  • All telemetry disabled

See Facehuggershield for more information.

Project details


Release history Release notifications | RSS feed

This version

3.0.8

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

airunner-3.0.8.tar.gz (336.8 kB view hashes)

Uploaded Source

Built Distribution

airunner-3.0.8-py3-none-any.whl (416.5 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page