Lar
biniou é um webui auto-hospedado para vários tipos de GenAI (inteligência artificial generativa). Você pode gerar conteúdos multimídia com IA e usar um chatbot no seu próprio computador, mesmo sem GPU dedicada e a partir de 8 GB de RAM. Pode funcionar off-line (uma vez implantado e baixado os modelos necessários).
GNU/Linux [base OpenSUSE | Base RHEL | Base Debian] • Windows • macOS Intel (experimental) • Docker
Documentação ❓ | Showroom ?️
Atualizações
? 23/11/2024 : Atualizações desta semana >
- Adicione suporte para o modelo Chatbot prithivMLmods/Llama-Doctor-3.2-3B-Instruct-GGUF.
- Adicionado suporte para modelos Flux LoRA Strangezonehf/Flux-Super-Realism-LoRA, Strangezonehf/Flux-Midjourney-Mix-LoRA, Norod78/Flux_1_Dev_LoRA_Paper-Cutout-Style, prithivMLmods/Knitted-Character-Flux-LoRA, Shakker-Labs/FLUX.1-dev-LoRA-Children-Simple-Sketch, renderartist/retrocomicflux, prithivMLmods/Seamless-Pattern-Design-Flux-LoRA, alvdansen/haunted_linework_flux, prithivMLmods/Flux.1-Dev-Poster-HQ- LoRA, Grohv/randart2_lora, renderartist/retroadflux, prithivMLmods/Flux.1-Dev-Realtime-Toon-Mix e prithivMLmods/Flux-Product-Ad-Backdrop.
? 16/11/2024 : Atualizações desta semana >
- Adicionado suporte para modelos de Chatbot bartowski/SuperNova-Medius-GGUF e bartowski/OpenCoder-8B-Instruct-GGUF.
- Adicionado suporte para modelos Flux LoRA Shakker-Labs/FLUX.1-dev-LoRA-Text-Poster, dataautogpt3/FLUX-SyntheticAnime, prithivMLmods/Canopus-Pixar-3D-Flux-LoRA, prithivMLmods/Flux-Dev-Real-Anime- LoRA, glif-loradex-trainer/shipley_flux_dev_AlicesAdventuresInWonderland_v2, prithivMLmods/Ton618-Only-Stickers-Flux-LoRA, markury/surrealidescent, FounderFeed/gta-style-lora, Keltezaa/movie-poster-ce-sdxl-flux, FounderFeed/MidjourneyMeetFlux e dooart/flux-lora-vintage-tarot.
- Adicionado suporte para modelos SD 3.5 Large LoRA nerijs/pixel-art-3.5L.
- Adicione suporte preliminar para o módulo Flux to IP-Adapter.
- Adicionado suporte preliminar para Flux ao módulo ControlNet (somente astuto e profundidade estão funcionando atualmente).
- Otimizações e correções de bugs.
? 09/11/2024 : Atualizações desta semana >
- Adicionado suporte para modelos de Chatbot bartowski/SmolLM2-1.7B-Instruct-GGUF, bartowski/cybertron-v4-qw7B-MGS-GGUF e bartowski/OpenChat-3.5-0106_32K-PoSE-GGUF.
- Atualização do modelo Chatbot Llama-3.2-3B-Instruct-GGUF para bartowski/Llama-3.2-3B-Instruct-uncensored-GGUF.
- Adicione suporte para vários modelos Flux LoRA. O mais notável é o rápido modelo LoRA Lingyuzhou/Hyper_Flux.1_Dev_4_step_Lora, que permite inferências em 4 etapas. Definitivamente vale a pena tentar se você estiver usando o Flux.
- Adicione suporte para modelos Flux e Flux LoRA para o módulo img2img.
- Adicionado suporte para modelos SD 3.5 Medium LoRA para difusão estável e módulo img2img.
- Adicione categorias aos modelos Flux LoRA.
- Correções de bugs para docker quando usado com vários discos rígidos e correção de problemas nas configurações do módulo img2img.
? 02/11/2024 : Atualizações desta semana >
- Adicione suporte para modelos SD 3.5 ariG23498/sd-3.5-merged e adamo1139/stable-diffusion-3.5-medium-ungated aos módulos Stable Diffusion e img2img.
- Adicionado suporte para modelo Chatbot bartowski/granite-3.0-8b-instruct-GGUF.
- Adicione suporte para modelos Flux LoRA dvyio/flux-lora-seventies-photograph, Bootoshi/retroanime, XLabs-AI/flux-RealismLora e prithivMLmods/Ton618-Tarot-Cards-Flux-LoRA (este último dá resultados impressionantes!).
- Adicionado suporte para modelos SD 3.5 LoRA alvarobartt/ghibli-characters-sd3.5-lora, reverentelusarca/ancient-style-sd35 e Wadaka/NewYorkerComic_Style.
- Adicione suporte para modelos SD 3.5 ao módulo img2img.
? 26/10/2024 : Atualizações desta semana >
- Conforme anunciado anteriormente, o modelo Flux Freepik/flux.1-lite-8B-alpha e o modelo SD 3.5 adamo1139/stable-diffusion-3.5-large-turbo-ungated agora são suportados pelo módulo Stable Diffusion. O suporte será estendido a todos os módulos elegíveis. Adicione também suporte para LoRAs nesses modelos.
- Adicione suporte para o modelo SDXL dataautogpt3/Proteus-v0.6 a todos os módulos baseados em difusão estável.
- Adicione suporte para modelos Chatbot anthracite-org/magnum-v4-9b-gguf e bartowski/Ministral-8B-Instruct-2410-GGUF.
- Adicione suporte para SDXL LoRA modelo KappaNeuro/moebius-jean-giraud-style.
Lista de atualizações arquivadas
Menu
• Características
• Pré-requisitos
• Instalação
GNU/Linux
OpenSUSE Leap 15.5 / OpenSUSE Tumbleweed
Rocky 9.3/Alma 9.3/CentOS Stream 9/Fedora 39
Debian 12/Ubuntu 22.04.3/Ubuntu 24.04/Linux Mint 21.2
janelas 10/janelas 11
Instalação do macOS Intel Homebrew
Dockerfile
• Suporte CUDA
• Como usar
• Bom saber
• Créditos
• Licença
Características
Geração de texto usando:
- ✍️ módulo chatbot baseado em llama-cpp (usa modelos .gguf)
- ?️ Módulo chatbot multimodal Llava (usa modelos .gguf)
- ?️ Módulo de legendagem de imagens Microsoft GIT
- ? Módulo de voz para texto sussurrado
- módulo de tradução nllb (200 idiomas)
- Gerador de prompt (requer mais de 16 GB de RAM para o tipo de saída ChatGPT)
Geração e modificação de imagens usando:
- ?️ Módulo de difusão estável
- ?️ Módulo Kandinsky (requer 16 GB + RAM)
- ?️ Módulo de modelos de consistência latente
- ?️ Mini módulo Midjourney
- ?️Módulo PixArt-Alpha
- ?️ Módulo Img2img de difusão estável
- ?️ Módulo adaptador IP
- ?️ Módulo de variação de imagem de difusão estável (requer 16 GB + RAM)
- ?️ Instruir módulo Pix2Pix
- ?️ Módulo MagicMix
- ?️ Módulo de difusão estável Inpaint
- ?️ Módulo Fantasy Studio Paint por exemplo (requer 16 GB + RAM)
- ?️ Módulo Diffusion Outpaint estável (requer 16 GB + RAM)
- ?️ Módulo ControlNet de difusão estável
- ?️ Módulo de cabine fotográfica
- ? Módulo de troca de rosto do Insight Face
- ? Módulo upscaler ESRGAN real
- ?Módulo de restauração facial GFPGAN
Geração de áudio usando:
- ? Módulo MusicGen
- ? Módulo MusicGen Melody (requer 16 GB + RAM)
- ? Módulo MusicLDM
- ? Módulo Audiogen (requer 16 GB + RAM)
- ? Módulo Harmonai
- Módulo de casca
Geração e modificação de vídeo usando:
- ? Módulo Modelscope (requer 16 GB + RAM)
- ? Módulo Text2Video-Zero
- ? Módulo AnimateDiff (requer 16 GB + RAM)
- ? Módulo de difusão de vídeo estável (requer 16 GB + RAM)
- ?️ Módulo Video Instruct-Pix2Pix (requer 16 GB + RAM)
Geração de objetos 3D usando:
- ? Módulo Shap-E txt2shape
- ? Módulo Shap-E img2shape (requer 16 GB + RAM)
Outros recursos
- Instalação do Zeroconf por meio de instaladores com um clique ou exe do Windows.
- Fácil de usar: tudo o que é necessário para executar o biniou é instalado automaticamente, no momento da instalação ou no primeiro uso.
- WebUI em inglês, francês, chinês (tradicional).
- Fácil gerenciamento através de um painel de controle diretamente dentro do webui: atualize, reinicie, desligue, ative a autenticação, controle o acesso à rede ou compartilhe sua instância online com um único clique.
- Fácil gerenciamento de modelos através de uma interface simples.
- Comunicação entre módulos: envia uma saída como entrada para outro módulo
- Distribuído por ? Abraçando cara e gradio
- Plataforma cruzada: GNU/Linux, Windows 10/11 e macOS (experimental, via homebrew)
- Dockerfile conveniente para instâncias em nuvem
- Configurações de geração salvas como metadados em cada conteúdo.
- Suporte para CUDA (consulte suporte CUDA)
- Suporte experimental para ROCm (veja aqui)
- Suporte para difusão estável SD-1.5, SD-2.1, SD-Turbo, SDXL, SDXL-Turbo, SDXL-Lightning, Hyper-SD, difusão estável 3, LCM, VegaRT, Segmind, Playground-v2, Koala, Pixart-Alpha, Pixart-Sigma, Kandinsky e modelos compatíveis, por meio de lista de modelos integrada ou arquivos .safetensors independentes
- Suporte para modelos LoRA (SD 1.5, SDXL e SD3)
- Suporte para inversão textual
- Suporta otimizações llama-cpp-python CUDA, OpenBLAS, OpenCL BLAS, ROCm e Vulkan por meio de uma configuração simples
- Suporte para modelos quantizados Llama/2/3, Mistral, Mixtral e GGUF compatíveis, por meio de lista de modelos integrada ou arquivos .gguf independentes.
- Fácil integração de copiar/colar para modelos quantizados TheBloke GGUF.
Pré-requisitos
Hardware mínimo:
- CPU de 64 bits (SOMENTE arquitetura AMD64)
- 8 GB de RAM
- Requisitos de armazenamento:
- para GNU/Linux: pelo menos 20GB para instalação sem modelos.
- para Windows: pelo menos 30 GB para instalação sem modelos.
- para macOS: pelo menos GB para instalação sem modelos.
- Tipo de armazenamento: HDD
- Acesso à Internet (necessário apenas para instalação e download de modelos): acesso à Internet de fibra óptica com largura de banda ilimitada
Hardware recomendado:
- CPU massivamente multicore de 64 bits (SOMENTE arquitetura AMD64) e uma GPU compatível com CUDA ou ROCm
- 16 GB + RAM
- Requisitos de armazenamento:
- para GNU/Linux: cerca de 200GB para instalação incluindo todos os modelos padrão.
- para Windows: cerca de 200 GB para instalação incluindo todos os modelos padrão.
- para macOS: cerca de GB para instalação, incluindo todos os modelos padrão.
- Tipo de armazenamento: SSD Nvme
- Acesso à Internet (necessário apenas para instalação e download de modelos): acesso à Internet de fibra óptica com largura de banda ilimitada
Sistema operacional :
- um sistema operacional de 64 bits:
- Debian 12
- Ubuntu 22.04.3/24.04
- Linux Mint 21.2+/22
- Rochoso 9.3
- Alma 9.3
- Fluxo CentOS 9
- Fedora 39
- OpenSUSE Salto 15.5
- OpenSUSE Tumbleweed
- Janelas 10 22H2
- Janelas 11 22H2
- MacOS ???
Nota: biniou suporta Cuda ou ROCm, mas não requer uma GPU dedicada para funcionar. Você pode instalá-lo em uma máquina virtual.
Instalação
GNU/Linux
OpenSUSE Leap 15.5 / OpenSUSE Tumbleweed
Instalador com um clique:
- Copie/cole e execute o seguinte comando em um 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
Instalador com um clique:
- Copie/cole e execute o seguinte comando em um 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 )
Debian 12/Ubuntu 22.04.3/Ubuntu 24.04/Linux Mint 21.2+
Instalador com um clique:
- Copie/cole e execute o seguinte comando em um 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 )
Instalação manual:
- Instale os pré-requisitos como root:
apt install git pip python3 python3-venv gcc perl make ffmpeg openssl
- Clone este repositório como usuário:
git clone https://github.com/Woolverine94/biniou.git
- Inicie o instalador:
- (opcional, mas altamente recomendado) Instale TCMalloc como root para otimizar o gerenciamento de memória:
apt install google-perftools
janelas 10/janelas 11
A instalação do Windows tem mais pré-requisitos que a do GNU/Linux e requer os seguintes softwares (que serão instalados automaticamente):
- Git
- Python 3.11 (e especificamente versão 3.11)
- OpenSSL
- Ferramentas de compilação do Visual Studio
- SDK do Windows 10/11
- Vcredista
- ffmpeg
- ... e todas as suas dependências.
São muitas mudanças no seu sistema operacional e isso pode trazer comportamentos indesejados ao seu sistema, dependendo de quais softwares já estão instalados nele.
️ Você realmente deve fazer um backup do seu sistema e dos dados antes de iniciar o processo de instalação. ️
- Baixe e execute : biniou_netinstall.exe
OU
- Baixe e execute : install_win.cmd (clique com o botão direito no link e selecione "Salvar destino/link como ..." para baixar)
Toda a instalação é automatizada, mas o Windows UAC solicitará a confirmação de cada software instalado durante a fase de “pré-requisitos”. Você pode evitar isso executando o instalador escolhido como administrador.
️ Desde o commit 8d2537b, os usuários do Windows agora podem definir um caminho personalizado para o diretório biniou, ao instalar com install_win.cmd
️
Proceda da seguinte forma:
- Baixe e edite install_win.cmd
- Modifique
set DEFAULT_BINIOU_DIR="%userprofile%"
para set DEFAULT_BINIOU_DIR="E:datassomedir"
(por exemplo) - Use apenas caminho absoluto (por exemplo:
E:datassomedir
e não .datassomedir
) - Não adicione uma barra final (por exemplo:
E:datassomedir
e não E:datassomedir
) - Não adicione um sufixo "biniou" ao seu caminho (por exemplo:
E:datassomedirbiniou
), pois o diretório biniou será criado pelo comando git clone - Salve e inicie install_win.cmd
Instalação do macOS Intel Homebrew
️ A instalação do Homebrew é teoricamente compatível com o macOS Intel, mas não foi testada. Use por sua conta e risco. Observe também que o biniou é atualmente incompatível com o silício da Apple. Qualquer feedback sobre este procedimento por meio de discussões ou de um ticket de problema será muito apreciado. ️
️ Atualização 09/01/2024: Graças a @lepicodon, há uma solução alternativa para os usuários do Apple Silicon: você pode instalar o biniou em uma máquina virtual usando OrbStack. Veja este comentário para explicações. ️
Instale o Homebrew para o seu sistema operacional
Instale as "garrafas" de homebrew necessárias:
brew install git python3 gcc gcc@11 perl make ffmpeg openssl
- Instale o python virtualenv:
python3 -m pip install virtualenv
- Clone este repositório como usuário:
git clone https://github.com/Woolverine94/biniou.git
- Inicie o instalador:
Dockerfile
Estas instruções pressupõem que você já tenha um ambiente docker configurado e funcionando.
- Crie a imagem do docker:
docker build -t biniou https://github.com/Woolverine94/biniou.git
ou, para suporte CUDA:
docker build -t biniou https://raw.githubusercontent.com/Woolverine94/biniou/main/CUDA/Dockerfile
- Inicie o contêiner:
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
ou, para suporte CUDA:
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
- Acesse o webui pela url:
https://127.0.0.1:7860 ou https://127.0.0.1:7860/?__theme=dark para tema escuro (recomendado)
...ou substitua 127.0.0.1 pelo ip do seu container
Nota: para economizar espaço de armazenamento, o comando de inicialização do contêiner anterior define volumes compartilhados comuns para todos os contêineres biniou e garante que o contêiner seja reiniciado automaticamente em caso de falha do OOM. Remova os argumentos --restart
e -v
se você não quiser esses comportamentos.
Suporte CUDA
biniou é nativamente somente CPU, para garantir compatibilidade com uma ampla variedade de hardware, mas você pode ativar facilmente o suporte CUDA através do Nvidia CUDA (se você tiver um ambiente CUDA 12.1 funcional) ou AMD ROCm (se você tiver um ambiente ROCm 5.6 funcional) selecionando o tipo de otimização a ativar (CPU, CUDA ou ROCm para Linux), no módulo de controle WebUI.
Atualmente, todos os módulos, exceto os módulos Chatbot, Llava e faceswap, podem se beneficiar da otimização CUDA.
Como usar
- Inicie executando a partir do diretório biniou:
cd /home/ $USER /biniou
./webui.sh
Clique duas vezes em webui.cmd no diretório biniou (C:Users%username%biniou). Quando solicitado pelo UAC, configure o firewall de acordo com o seu tipo de rede para autorizar o acesso ao webui
Nota: A primeira inicialização pode ser muito lenta no Windows 11 (em comparação com outros sistemas operacionais).
Acesse o webui pela url:
https://127.0.0.1:7860 ou https://127.0.0.1:7860/?__theme=dark para tema escuro (recomendado)
Você também pode acessar o biniou de qualquer dispositivo (incluindo smartphones) na mesma rede LAN/Wifi, substituindo 127.0.0.1 na url pelo endereço IP do host biniou.
Saia usando o atalho de teclado CTRL+C no Terminal
Atualize este aplicativo (ambiente virtual biniou + python) usando as opções de atualizações de controle WebUI.
Bom saber
A causa mais frequente de travamento é a falta de memória no host. O sintoma é o programa biniou fechando e retornando/fechando o terminal sem mensagem de erro específica. Você pode usar biniou com 8 GB de RAM, mas pelo menos 16 GB é recomendado para evitar erros de OOM (falta de memória).
biniou usa vários modelos de IA diferentes, o que requer muito espaço: se você quiser usar todos os módulos do biniou, precisará de cerca de 200 GB de espaço em disco apenas para o modelo padrão de cada módulo. Os modelos são baixados na primeira execução de cada módulo ou quando você seleciona um novo modelo em um módulo e gera conteúdo. Os modelos são armazenados no diretório /models da instalação do biniou. Os modelos não utilizados podem ser excluídos para economizar espaço.
... conseqüentemente, você precisará de um acesso rápido à Internet para baixar os modelos.
Um backup de todo conteúdo gerado está disponível no diretório /outputs da pasta biniou.
biniou depende nativamente apenas da CPU para todas as operações. Ele usa uma versão específica do PyTorch somente para CPU. O resultado é uma melhor compatibilidade com uma ampla gama de hardware, mas com desempenho degradado. Dependendo do seu hardware, espere lentidão. Veja aqui o suporte Nvidia CUDA e suporte experimental AMD ROCm (somente GNU/Linux).
As configurações padrão são selecionadas para permitir a geração de conteúdos em computadores de baixo custo, com a melhor relação desempenho/qualidade. Se você tiver uma configuração acima das configurações mínimas, você pode tentar usar outros modelos, aumentando as dimensões ou duração da mídia, modificando parâmetros de inferência ou outras configurações (como mesclagem de tokens para imagens) para obter conteúdos de melhor qualidade.
biniou é licenciado sob GNU GPL3, mas cada modelo usado no biniou possui sua própria licença. Consulte a licença de cada modelo para saber o que você pode ou não fazer com os modelos. Para cada modelo, você pode encontrar um link para a página huggingface do modelo na seção "Sobre" do módulo associado.
Não tenha muitas expectativas: o biniou está em um estágio inicial de desenvolvimento e a maioria dos softwares de código aberto usados nele estão em desenvolvimento (alguns ainda são experimentais).
Cada módulo biniou oferece 2 elementos de acordeão Sobre e Configurações :
- Sobre é um recurso de ajuda rápida que descreve o módulo e fornece instruções e dicas sobre como usá-lo.
- Configurações é uma configuração do painel específica do módulo que permite configurar os parâmetros de geração.
Créditos
Este aplicativo utiliza os seguintes softwares e tecnologias:
- ? Huggingface: Bibliotecas de Difusores e Transformadores e quase todos os modelos generativos.
- Grau: webUI
- llama-cpp-python: ligações python para llama-cpp
- Llava
- BakLLava
- Microsoft GIT: Imagem2texto
- Sussurro: discurso2texto
- Tradução nllb: tradução de idioma
- Difusão estável: txt2img, img2img, variação de imagem, inpaint, ControlNet, Text2Video-Zero, img2vid
- Kandinsky: txt2img
- Modelos de consistência latente: txt2img
- PixArt-Alfa: PixArt-Alfa
- Adaptador IP: Adaptador IP img2img
- Instruir pix2pix: pix2pix
- MagicMix: MagicMix
- Fantasy Studio Pinte por exemplo: paintbyex
- Modelos Auxiliares Controlnet: modelos de visualização do módulo ControlNet
- Adaptador IP FaceID: Modelo de adaptador para módulo Photobooth
- Modelo de adaptador Photomaker para módulo Photobooth
- Insight Face: troca de rosto
- ESRGAN real: upscaler
- GFPGAN: restauração facial
- Audiocraft: musicgen, melodia musicgen, audiogen
- MúsicaLDM : MúsicaLDM
- Harmonai: harmonizai
- Latido: text2speech
- Síntese de texto para vídeo do Modelscope: txt2vid
- AnimarLCM: txt2vid
- Abra AI Shap-E: txt2shape, img2shape
- compel : Aprimoramento imediato para vários módulos baseados em
StableDiffusionPipeline
- tomesd: fusão de token para vários módulos baseados em
StableDiffusionPipeline
- Pitão
- PyTorch
- Git
- ffmpeg
... e todas as suas dependências
Licença
Licença Pública Geral GNU v3.0
GitHub @Woolverine94 ·