返回排行榜

Woolverine94/biniou

Python

a self-hosted webui for 30+ generative ai

barkcontrolnetgfpgangradiohuggingfaceinsightfacekandinskyreal-esrganstable-diffusionwebuiwhisperdiffusers
Star 增长趋势
Star
1.1k
Forks
133
周增长
Issues
2
5001k
2023年9月2024年8月2025年8月2026年7月
制品库PyPIpip install biniou
README

Home

biniou screenshot

biniou Docker Image CI biniou CUDA Docker Image CI

biniou is a self-hosted webui for several kinds of GenAI (generative artificial intelligence). You can generate multimedia contents with AI and use a chatbot on your own computer, even without dedicated GPU and starting from 8GB RAM. Can work offline (once deployed and required models downloaded).

GNU/Linux base : [ OpenSUSE | RHEL | Arch | Mandriva | Debian ] • WindowsmacOS Intel (experimental)Docker
Documentation ❓ | Showroom 🖼️ | Video presentation (by @Natlamir) 🎞️ | Windows install tutorial (by Fahd Mirza) 🎞️


Updates


Features
Prerequisites
Installation
    GNU/Linux
      OpenSUSE Leap 15.5 / OpenSUSE Tumbleweed
      Rocky 9.3+ / Alma 9.3+ / CentOS Stream 9 / Fedora 39+
      CachyOS
      OpenMandriva
      Debian 12 / Ubuntu 22.04.3 / Ubuntu 24.04 / Linux Mint 21.2+ / Linux Mint 22+ / Pop! OS
    Windows 10 / Windows 11
    macOS Intel Homebrew install
    Dockerfile
CUDA support
How To Use
Good to know
Credits
License


Features


Prerequisites

  • Minimal hardware :

    • 64bit CPU (AMD64 architecture ONLY)
    • 8GB RAM
    • Storage requirements :
      • for GNU/Linux : at least 20GB for installation without models.
      • for Windows : at least 30GB for installation without models.
      • for macOS : at least ??GB for installation without models.
    • Storage type : HDD
    • Internet access (required only for installation and models download) : unlimited bandwidth optical fiber internet access
  • Recommended hardware :

    • Massively multicore 64bit CPU (AMD64 architecture ONLY) and a GPU compatible with CUDA or ROCm
    • 16GB+ RAM
    • Storage requirements :
      • for GNU/Linux : around 200GB for installation including all defaults models.
      • for Windows : around 200GB for installation including all defaults models.
      • for macOS : around ??GB for installation including all defaults models.
    • Storage type : SSD Nvme
    • Internet access (required only for installation and models download) : unlimited bandwidth optical fiber internet access
  • Operating system :

    • a 64 bit OS :
      • Debian 12
      • Ubuntu 22.04.3 / 24.04
      • Linux Mint 21.2+ / 22+
      • Pop! OS
      • Rocky 9.3+
      • Alma 9.3+
      • CentOS Stream 9
      • Fedora 39+
      • OpenSUSE Leap 15.5
      • OpenSUSE Tumbleweed
      • CachyOS
      • OpenMandriva
      • Windows 10 22H2
      • Windows 11 22H2
      • macOS ???
  • Software pre-requisites (will be installed automatically with install scripts) :

    • Python 3.10 or 3.11 (3.11+ wouldn't work)
    • git
    • pip
    • python3.x-venv
    • python3.x-dev
    • gcc
    • perl
    • make / Cmake via Visual Studio 2017 for Windows
    • ffmpeg
    • openssl

Note : biniou supports Cuda or ROCm but does not require a dedicated GPU to run. You can install it in a virtual machine.


Installation

GNU/Linux

OpenSUSE Leap 15.5 / OpenSUSE Tumbleweed

One-click installer :
  1. Copy/paste and execute the following command in a terminal :
sh <(curl https://raw.githubusercontent.com/Woolverine94/biniou/main/oci-opensuse.sh || wget -O - https://raw.githubusercontent.com/Woolverine94/biniou/main/oci-opensuse.sh)

Rocky 9.3+ / Alma 9.3+ / CentOS Stream 9 / Fedora 39+

One-click installer :
  1. Copy/paste and execute the following command in a terminal :
sh <(curl https://raw.githubusercontent.com/Woolverine94/biniou/main/oci-rhel.sh || wget -O - https://raw.githubusercontent.com/Woolverine94/biniou/main/oci-rhel.sh)

CachyOS

One-click installer :
  1. Copy/paste and execute the following command in a terminal :
sh (curl https://raw.githubusercontent.com/Woolverine94/biniou/main/oci-arch.sh|psub)

OpenMandriva

One-click installer :
  1. Copy/paste and execute the following command in a terminal :
sh <(curl https://raw.githubusercontent.com/Woolverine94/biniou/main/oci-mandriva.sh || wget -O - https://raw.githubusercontent.com/Woolverine94/biniou/main/oci-mandriva.sh)

Debian 12 / Ubuntu 22.04.3 / Ubuntu 24.04 / Linux Mint 21.2+ / Linux Mint 22+ / Pop! OS

One-click installer :
  1. Copy/paste and execute the following command in a terminal :
sh <(curl https://raw.githubusercontent.com/Woolverine94/biniou/main/oci-debian.sh || wget -O - https://raw.githubusercontent.com/Woolverine94/biniou/main/oci-debian.sh)
Manual installation (debian 12 / Ubuntu 22.04 / Linux Mint 21.2+) :
  1. Install the pre-requisites as root :
apt install git pip python3 python3-venv gcc perl make ffmpeg openssl
  1. Clone this repository as user :
git clone https://github.com/Woolverine94/biniou.git
  1. Launch the installer :
cd ./biniou
./install.sh
  1. (optional, but highly recommended) Install TCMalloc as root to optimize memory management :
apt install google-perftools

Windows 10 / Windows 11

Windows installation has more prerequisites than GNU/Linux one, and requires following softwares (which will be installed automatically) :

  • Git
  • Python 3.11 (and specifically 3.11 version)
  • OpenSSL
  • Visual Studio Build tools
  • Windows 10/11 SDK
  • Vcredist
  • ffmpeg
  • ... and all their dependencies.

It's a lot of changes on your operating system, and this could potentially bring unwanted behaviors on your system, depending on which softwares are already installed on it.

⚠️ You should really make a backup of your system and datas before starting the installation process. ⚠️

OR

  • Download and execute : install_win.cmd (right-click on the link and select "Save Target/Link as ..." to download)

All the installation is automated, but Windows UAC will ask you for confirmation for each software installed during the "prerequisites" phase. You can avoid this by running the chosen installer as administrator.

⚠️ Since commit 8d2537b Windows users can now define a custom path for biniou directory, when installing with install_win.cmd ⚠️

Proceed as follow :

  • Download and edit install_win.cmd
  • Modify set DEFAULT_BINIOU_DIR="%userprofile%" to set DEFAULT_BINIOU_DIR="E:\datas\somedir" (for example)
  • Only use absolute path (e.g.: E:\datas\somedir and not .\datas\somedir)
  • Don't add a trailing slash (e.g.: E:\datas\somedir and not E:\datas\somedir\ )
  • Don't add a "biniou" suffix to your path (e.g.: E:\datas\somedir\biniou), as the biniou directory will be created by the git clone command
  • Save and launch install_win.cmd

macOS Intel Homebrew install

⚠️ Homebrew install is theoretically compatible with macOS Intel, but has not been tested. Use at your own risk. Also note that biniou is currently incompatible with Apple silicon. Any feedback on this procedure through discussions or an issue ticket will be really appreciated. ⚠️

⚠️ Update 01/09/2024: Thanks to @lepicodon, there's a workaround for Apple Silicon's users : you can install biniou in a virtual machine using OrbStack. See this comment for explanations. ⚠️

  1. Install Homebrew for your operating system

  2. Install required homebrew "bottles" :

brew install git python3 gcc gcc@11 perl make ffmpeg openssl
  1. Install python virtualenv :
python3 -m pip install virtualenv
  1. Clone this repository as user :
git clone https://github.com/Woolverine94/biniou.git
  1. Launch the installer :
cd ./biniou
./install.sh

Dockerfile

These instructions assumes that you already have a configured and working docker environment.

  1. Create the docker image :
docker build -t biniou https://github.com/Woolverine94/biniou.git

or, for CUDA support :

docker build -t biniou https://raw.githubusercontent.com/Woolverine94/biniou/main/CUDA/Dockerfile

Alternatively, you can directly pull a weekly updated image from ghcr.io using :

docker pull ghcr.io/woolverine94/biniou:main

or, for CUDA support :

docker pull ghcr.io/woolverine94/biniou-cuda:main
  1. Launch the container :
  • For Dockerfile generated images :
docker run -it --restart=always -p 7860:7860 \
-v biniou_outputs:/home/biniou/biniou/outputs \
-v biniou_models:/home/biniou/biniou/models \
-v biniou_cache:/home/biniou/.cache/huggingface \
-v biniou_gfpgan:/home/biniou/biniou/gfpgan \
biniou:latest

or, with CUDA support :

docker run -it --gpus all --restart=always -p 7860:7860 \
-v biniou_outputs:/home/biniou/biniou/outputs \
-v biniou_models:/home/biniou/biniou/models \
-v biniou_cache:/home/biniou/.cache/huggingface \
-v biniou_gfpgan:/home/biniou/biniou/gfpgan \
biniou:latest
  • For docker images pulled from ghcr.io :
docker run -it --restart=always -p 7860:7860 \
-v biniou_outputs:/home/biniou/biniou/outputs \
-v biniou_models:/home/biniou/biniou/models \
-v biniou_cache:/home/biniou/.cache/huggingface \
-v biniou_gfpgan:/home/biniou/biniou/gfpgan \
ghcr.io/woolverine94/biniou:main

or, with CUDA support :

docker run -it --gpus all --restart=always -p 7860:7860 \
-v biniou_outputs:/home/biniou/biniou/outputs \
-v biniou_models:/home/biniou/biniou/models \
-v biniou_cache:/home/biniou/.cache/huggingface \
-v biniou_gfpgan:/home/biniou/biniou/gfpgan \
ghcr.io/woolverine94/biniou-cuda:main
  1. Access the webui by the url :
    https://127.0.0.1:7860 or https://127.0.0.1:7860/?__theme=dark for dark theme
    ... or replace 127.0.0.1 by ip of your container

Note : to save storage space, the previous container launch command defines common shared volumes for all biniou containers and ensure that the container auto-restart in case of OOM crash. Remove --restart and -v arguments if you didn't want these behaviors.


CUDA support

biniou is natively cpu-only, to ensure compatibility with a wide range of hardware, but you can easily activate CUDA support through Nvidia CUDA (if you have a functional CUDA 12.1 environment) or AMD ROCm (if you have a functional ROCm 5.6 environment) by selecting the type of optimization to activate (CPU, CUDA or ROCm for Linux), in the WebUI control module.

Currently, all modules except Chatbot, Llava and faceswap modules, could benefits from CUDA optimization.


How To Use

  1. Launch by executing from the biniou directory :
  • for GNU/Linux :
cd /home/$USER/biniou
./webui.sh
  • for Windows :

Double-click webui.cmd in the biniou directory (C:\Users\%username%\biniou\). When asked by the UAC, configure the firewall according to your network type to authorize access to the webui

Note : First start could be very slow on Windows 11 (comparing to others OS).

  1. Access the webui by the url :
    https://127.0.0.1:7860 or https://127.0.0.1:7860/?__theme=dark for dark theme
    You can also access biniou from any device (including smartphones) on the same LAN/Wifi network by replacing 127.0.0.1 in the url with biniou host ip address.

  2. Quit by using the keyboard shortcut CTRL+C in the Terminal

  3. Update this application (biniou + python virtual environment) by using the WebUI control updates options.


Good to know

  • Most frequent cause of crash is not enough memory on the host. Symptom is biniou program closing and returning to/closing the terminal without specific error message. You can use biniou with 8GB RAM, but 16GB at least is recommended to avoid OOM (out of memory) error.

  • biniou use a lot of differents AI models, which requires a lot of space : if you want to use all the modules in biniou, you will need around 200GB of disk space only for the default model of each module. Models are downloaded on the first run of each module or when you select a new model in a module and generate content. Models are stored in the directory /models of the biniou installation. Unused models could be deleted to save some space.

  • ... consequently, you will need a fast internet access to download models.

  • A backup of every content generated is available inside the /outputs directory of the biniou folder.

  • biniou natively only rely on CPU for all operations. It use a specific CPU-only version of PyTorch. The result is a better compatibility with a wide range of hardware, but degraded performances. Depending on your hardware, expect slowness. See here for Nvidia CUDA support and AMD ROCm experimental support (GNU/Linux only).

  • Defaults settings are selected to permit generation of contents on low-end computers, with the best ratio performance/quality. If you have a configuration above the minimal settings, you could try using other models, increasing media dimensions or duration, modifying inference parameters or other settings (like token merging for images) to obtain better quality contents.

  • biniou is licensed under GNU GPL3, but each model used in biniou has its own license. Please consult each model license to know what you can and cannot do with the models. For each model, you can find a link to the huggingface page of the model in the "About" section of the associated module.

  • Don't have too much expectations : biniou is in an early stage of development, and most open source software used in it are in development (some are still experimental).

  • Every biniou modules offers 2 accordions elements About and Settings :

    • About is a quick help feature that describes the module and gives instructions and tips on how to use it.
    • Settings is a panel setting specific to the module that lets you configure the generation parameters.

Credits

This application uses the following softwares and technologies :

... and all their dependencies


License

GNU General Public License v3.0


GitHub @Woolverine94  · 

相关仓库
sansan0/TrendRadar

⭐AI-driven public opinion & trend monitor with multi-platform aggregation, RSS, and smart alerts.🎯 告别信息过载,你的 AI 舆情监控助手与热点筛选工具!聚合多平台热点 + RSS 订阅,支持关键词精准筛选。AI 智能筛选新闻 + AI 翻译 + AI 分析简报直推手机,也支持接入 MCP 架构,赋能 AI 自然语言对话分析、情感洞察与趋势预测等。支持 Docker ,数据本地/云端自持。集成微信/飞书/钉钉/Telegram/邮件/ntfy/bark/slack 等渠道智能推送。

PythonPyPIGNU General Public License v3.0data-analysispython
trendradar.sandev.cc
60.8k24.8k
pppscn/SmsForwarder

短信转发器——监控Android手机短信、来电、APP通知,并根据指定规则转发到其他手机:钉钉群自定义机器人、钉钉企业内机器人、企业微信群机器人、飞书机器人、企业微信应用消息、邮箱、bark、webhook、Telegram机器人、Server酱、PushPlus、手机短信等。包括主动控制服务端与客户端,让你轻松远程发短信、查短信、查通话、查话簿、查电量等。(V3.0 新增)PS.这个APK主要是学习与自用,如有BUG请提ISSUE,同时欢迎大家提PR指正

KotlinBSD 2-Clause "Simplified" Licensesmsdingding
27.2k3.3k
songquanpeng/message-pusher

搭建专属于你的消息推送服务,支持多种消息推送方式,支持 Markdown,基于 Golang 仅单可执行文件,开箱即用

JavaScriptnpmMIT Licensewechatdingtalk
push.justsong.cn
3.9k526
Johnserf-Seed/f2

High-speed downloader for multiple platforms

PythonPyPIApache License 2.0apibark
f2.wiki
2.6k387
rsxdalv/tts-generation-webui

TTS Generation Web UI (Bark, MusicGen + AudioGen, Tortoise, RVC, Vocos, Demucs, SeamlessM4T, MAGNet, StyleTTS2, MMS, Stable Audio, Mars5, F5-TTS, ParlerTTS)

TypeScriptnpmMIT Licensegradiomachine-learning
rsxdalv.github.io/tts-generation-webui/
2k217
gitmylo/audio-webui

A webui for different audio related Neural Networks

PythonPyPIMIT Licenseaiaudioldm
1.2k113