conecta-primo-gpu / requirements.txt
ConectaPrimoAI's picture
Upload folder using huggingface_hub
dce30ce verified
Raw History Blame Contribute Delete
2.95 kB
# O Space ZeroGPU. `gradio` vem do SDK do Space (o front-matter do README o
# declara); `spaces` é injetado pelo próprio Hugging Face em hardware ZeroGPU.
# O torch NÃO se fixa aqui: no ZeroGPU a versão de torch/CUDA compatível é a
# do ambiente deles, e fixar a nossa por cima é como se quebra a alocação.
#
# O resto é a MESMA camada de inferência do worker CUDA
# (services/gpu-worker/requirements.txt) — mesmos modelos, mesmas versões,
# de propósito: dois pares de versões seriam dois comportamentos.
# `>=0.38` é MEDIDO: é a versão em que o AceStepPipeline entrou no diffusers
# — a música daqui carrega o checkpoint oficial em formato diffusers
# (acestep-v15-xl-turbo-diffusers), sem o pacote do projeto. Fixe a versão
# exata que o primeiro build verde escolher.
diffusers>=0.38
# `>=4.51` é MEDIDO, não gosto: o Z-Image usa encoder Qwen3, e a classe
# Qwen3Model só existe do 4.51 em diante — com 4.50 a primeira geração real
# caiu com "module transformers has no attribute Qwen3Model".
transformers>=4.51
accelerate>=1.2
safetensors>=0.5
# A voz vem pelo pacote OFICIAL do projeto (Qwen3TTSModel + os checkpoints
# 12Hz) — a primeira validação real provou que AutoModel não serve: o id
# antigo nem existia no Hub. Ele pina transformers==4.57.3, que satisfaz o
# >=4.51 do Z-Image — os dois convivem.
qwen-tts>=0.1.1
# A IMAGEM QUANTIZADA PRECISA DOS DOIS MOTORES, e cada um abre uma porta.
# Nenhuma variante do Qwen-Image cabe nos 50 GB de disco de um Space sem
# quantização (o modelo cheio pesa 57,7 GB, medido no Hub), então o padrão é
# quantizado — e sem o motor dele instalado o `from_pretrained` levanta na
# hora de montar os pesos e a imagem degrada para o gerador gratuito, EM
# SILÊNCIO, que é o pior desfecho possível aqui.
#
# torchao -> o padrão de hoje: Ilus-AI/Qwen-Image-2512-FP8 (30,1 GB),
# `Float8WeightOnlyConfig` no transformer e no text_encoder.
# bitsandbytes -> as voltas de 4 bits: diffusers/qwen-image-nf4 (27,8 GB) e
# unsloth/Qwen-Image-2512-unsloth-bnb-4bit (18,7 GB).
#
# Os dois ficam porque a volta é uma VARIÁVEL sem deploy (`IMAGE_MODEL`):
# instalar só o motor do padrão faria a volta falhar justamente no dia em que
# ela fosse necessária — e esse é o dia em que ninguém tem tempo de publicar.
torchao>=0.9
bitsandbytes>=0.45
Pillow==11.1.0
imageio==2.36.1
imageio-ffmpeg==0.6.0
# O PACOTE `acestep` NÃO ENTRA AQUI, E NÃO FOI ESQUECIMENTO. Ele crava
# transformers==4.50.0, e o Z-Image/Qwen3-TTS exigem >=4.51: no MESMO
# processo os dois não se resolvem (pip cai em ResolutionImpossible). A
# música usa o checkpoint OFICIAL em formato diffusers, pelo AceStepPipeline
# do próprio diffusers >=0.38 — mesmo stack dos outros modelos, zero
# dependência extra.
boto3==1.35.90
requests>=2.32
# A voz do Live (Rápido TTS): números, datas e dinheiro por extenso em pt-BR.
num2words
pydantic