|
|
--- |
|
|
title: NTIA Space - Optimizado para H200 |
|
|
emoji: 🚀 |
|
|
colorFrom: indigo |
|
|
colorTo: red |
|
|
sdk: gradio |
|
|
sdk_version: 5.38.2 |
|
|
app_file: app.py |
|
|
pinned: false |
|
|
license: mit |
|
|
short_description: Modelos libres de IA optimizados para ZeroGPU H200 |
|
|
--- |
|
|
|
|
|
# 🚀 NTIA Space - Optimizado para ZeroGPU H200 |
|
|
|
|
|
Este es el repositorio del Space de Hugging Face para NTIA, que proporciona acceso a modelos libres de IA para generación de texto, imágenes y videos **optimizado para ZeroGPU H200** del plan Pro. |
|
|
|
|
|
## ⚡ Optimizaciones para H200 |
|
|
|
|
|
### **🚀 Rendimiento Optimizado:** |
|
|
- ✅ **Mixed Precision (FP16)** para máxima velocidad |
|
|
- ✅ **XFormers Memory Efficient Attention** habilitado |
|
|
- ✅ **Attention Slicing** para mejor gestión de memoria |
|
|
- ✅ **VAE Slicing** para modelos grandes |
|
|
- ✅ **CUDA Optimizations** (cudnn.benchmark, tf32) |
|
|
|
|
|
### **🎯 Velocidad H200:** |
|
|
- ⚡ **Hasta 10x más rápido** que CPU |
|
|
- ⚡ **Generación en segundos** en lugar de minutos |
|
|
- ⚡ **Optimizado para modelos grandes** (FLUX, SDXL) |
|
|
- ⚡ **Batch processing** para múltiples imágenes |
|
|
|
|
|
## 🚀 Despliegue Rápido |
|
|
|
|
|
### Script de Push Automático |
|
|
|
|
|
Para hacer commits y push rápidos, usa el script `push.ps1`: |
|
|
|
|
|
```powershell |
|
|
# Commit con mensaje personalizado |
|
|
.\push.ps1 "tu mensaje de commit" |
|
|
|
|
|
# Commit con mensaje por defecto "update" |
|
|
.\push.ps1 |
|
|
``` |
|
|
|
|
|
### Comandos Manuales |
|
|
|
|
|
```powershell |
|
|
# Agregar todos los cambios |
|
|
git add . |
|
|
|
|
|
# Commit con mensaje |
|
|
git commit -m "tu mensaje" |
|
|
|
|
|
# Push a Hugging Face |
|
|
git push |
|
|
``` |
|
|
|
|
|
## 🔧 Configuración |
|
|
|
|
|
### Variables de Entorno |
|
|
|
|
|
Para usar modelos gated como **FLUX.1-dev** y **FLUX.1-schnell**, necesitas configurar: |
|
|
|
|
|
#### 1. Obtener Token de Hugging Face |
|
|
1. Ve a [Hugging Face Settings](https://huggingface.co/settings/tokens) |
|
|
2. Crea un nuevo token con permisos de **read** |
|
|
3. Copia el token generado |
|
|
|
|
|
#### 2. Configurar Token en el Space |
|
|
1. Ve a tu Space: https://huggingface.co/spaces/Ntdeseb/ntia |
|
|
2. Haz clic en **Settings** (⚙️) |
|
|
3. En la sección **Variables and secrets** |
|
|
4. Agrega una nueva variable: |
|
|
- **Name**: `HF_TOKEN` |
|
|
- **Value**: `hf_tu_token_aqui` |
|
|
- **Type**: `Secret` ✅ |
|
|
5. Guarda los cambios |
|
|
6. Reinicia el Space |
|
|
|
|
|
#### 3. Verificar Acceso a Modelos FLUX |
|
|
1. Ve a [FLUX.1-dev](https://huggingface.co/black-forest-labs/FLUX.1-dev) |
|
|
2. Haz clic en **Access** para solicitar acceso |
|
|
3. Acepta los términos de licencia |
|
|
4. Repite para [FLUX.1-schnell](https://huggingface.co/black-forest-labs/FLUX.1-schnell) |
|
|
|
|
|
### Dependencias |
|
|
|
|
|
Ver `requirements.txt` para la lista completa de dependencias. |
|
|
|
|
|
## 📋 Modelos Disponibles |
|
|
|
|
|
### Texto |
|
|
- DialoGPT (Medium, Large, Small) |
|
|
- GPT-2 (Base, Medium, Large) |
|
|
- GPT-Neo (125M, 1.3B) |
|
|
- OPT (125M, 350M) |
|
|
- BLOOM (560M, 1B1) |
|
|
- Traductores (ES-EN, EN-ES) |
|
|
|
|
|
### Imágenes |
|
|
- Stable Diffusion (v1.4, v1.5, v2.1, SDXL) |
|
|
- SDXL Turbo (ultra rápido) |
|
|
- SD Turbo (ultra rápido) |
|
|
- FLUX.1-dev y FLUX.1-schnell (alta calidad) |
|
|
- Modelos especializados (Waifu, Realistic Vision, etc.) |
|
|
|
|
|
### 🎨 Gráficos Vectoriales (NUEVO) |
|
|
- **SVGDreamer**: Generación de SVG con múltiples estilos |
|
|
- **Modelos Microsoft**: Especializados para diferentes tipos de gráficos |
|
|
- IconGenerator: Iconos vectoriales |
|
|
- LogoMaker: Logos corporativos |
|
|
- VectorArt: Arte vectorial general |
|
|
- IllustrationGen: Ilustraciones editoriales |
|
|
- PatternMaker: Patrones vectoriales |
|
|
- DiagramGen: Diagramas técnicos |
|
|
- ChartMaker: Gráficos de datos |
|
|
- FlowchartGen: Diagramas de flujo |
|
|
- MindMapGen: Mapas mentales |
|
|
- InfographicGen: Infografías |
|
|
- PosterMaker: Pósters vectoriales |
|
|
- BannerGen: Banners web |
|
|
- CardMaker: Tarjetas de presentación |
|
|
- BadgeGen: Insignias y premios |
|
|
- StickerMaker: Stickers vectoriales |
|
|
- EmojiGen: Emojis personalizados |
|
|
- IconSetGen: Conjuntos de iconos |
|
|
- UIElementGen: Elementos de interfaz |
|
|
|
|
|
### Videos |
|
|
- AnimateDiff Lightning (ultra rápido) |
|
|
- Zeroscope (v2 576w, v2 XL) |
|
|
- Text-to-Video MS 1.7B (rápido) |
|
|
- Wan2.1 T2V 14B (alta calidad) |
|
|
- ModelScope (experimental) |
|
|
|
|
|
## 🎨 Uso |
|
|
|
|
|
1. Accede al Space en: https://huggingface.co/spaces/Ntdeseb/ntia |
|
|
2. Selecciona el tipo de generación (texto, imagen, video, vector) |
|
|
3. Elige el modelo deseado |
|
|
4. Ingresa tu prompt |
|
|
5. ¡Genera contenido! |
|
|
|
|
|
## 🎨 Uso de Gráficos Vectoriales |
|
|
|
|
|
### Características Principales |
|
|
- **Formato SVG**: Gráficos escalables sin pérdida de calidad |
|
|
- **Múltiples estilos**: iconography, pixel_art, sketch, painting |
|
|
- **Generación multi-partícula**: Hasta 8 variantes simultáneas |
|
|
- **Optimizado para ZeroGPU**: Uso eficiente de cuota H200 |
|
|
|
|
|
### Cómo Usar SVGDreamer |
|
|
1. Ve a la pestaña **"🎨 Gráficos Vectoriales"** |
|
|
2. Selecciona **"jree423/svgdreamer"** como modelo |
|
|
3. Escribe tu prompt (ej: "a majestic eagle soaring through clouds") |
|
|
4. Elige el estilo deseado: |
|
|
- **iconography**: Iconos limpios y minimalistas |
|
|
- **pixel_art**: Estilo retro con píxeles visibles |
|
|
- **sketch**: Dibujo a mano alzada |
|
|
- **painting**: Estilo pictórico con pinceladas |
|
|
5. Ajusta los parámetros: |
|
|
- **Partículas**: 1-8 (más = más variantes) |
|
|
- **Iteraciones**: 100-1000 (más = mejor calidad) |
|
|
- **Guidance scale**: 1.0-15.0 (controla adherencia) |
|
|
- **Dimensiones**: 64x64 a 512x512 píxeles |
|
|
6. Haz clic en **"🎨 Generar Vector"** |
|
|
|
|
|
### Ejemplos de Prompts |
|
|
- **Naturaleza**: "ocean waves crashing on rocks" |
|
|
- **Personajes**: "a friendly robot character" |
|
|
- **Arte abstracto**: "geometric patterns in bright colors" |
|
|
- **Elementos corporativos**: "modern company logo with geometric shapes" |
|
|
|
|
|
### Modelos Especializados |
|
|
- **IconGenerator**: Para iconos de apps y símbolos |
|
|
- **LogoMaker**: Para logos corporativos y de marca |
|
|
- **VectorArt**: Para arte vectorial general |
|
|
- **IllustrationGen**: Para ilustraciones editoriales |
|
|
- **PatternMaker**: Para patrones decorativos |
|
|
- **DiagramGen**: Para diagramas técnicos |
|
|
- **ChartMaker**: Para gráficos de datos |
|
|
- **FlowchartGen**: Para diagramas de flujo |
|
|
- **MindMapGen**: Para mapas mentales |
|
|
- **InfographicGen**: Para infografías |
|
|
- **PosterMaker**: Para pósters vectoriales |
|
|
- **BannerGen**: Para banners web |
|
|
- **CardMaker**: Para tarjetas de presentación |
|
|
- **BadgeGen**: Para insignias y premios |
|
|
- **StickerMaker**: Para stickers vectoriales |
|
|
- **EmojiGen**: Para emojis personalizados |
|
|
- **IconSetGen**: Para conjuntos de iconos |
|
|
- **UIElementGen**: Para elementos de interfaz |
|
|
|
|
|
### Optimización de Cuota |
|
|
- **Rápido**: 1 partícula, 100 iteraciones |
|
|
- **Balanceado**: 4 partículas, 500 iteraciones |
|
|
- **Alta calidad**: 8 partículas, 1000 iteraciones |
|
|
|
|
|
## 🔄 Actualizaciones |
|
|
|
|
|
Para actualizar el Space: |
|
|
|
|
|
1. Haz tus cambios en el código |
|
|
2. Usa el script de push: `.\push.ps1 "descripción de cambios"` |
|
|
3. El Space se actualizará automáticamente en Hugging Face |
|
|
|
|
|
## 🐛 Solución de Problemas |
|
|
|
|
|
### FLUX Models |
|
|
- Los modelos FLUX requieren `sentencepiece` (ya incluido en requirements.txt) |
|
|
- Configuración optimizada con parámetros recomendados |
|
|
- Seed aleatorio para generar imágenes diferentes |
|
|
|
|
|
### Errores Comunes |
|
|
- **"Cannot instantiate tokenizer"**: Verifica que `sentencepiece` esté instalado |
|
|
- **"enable_model_cpu_offload requires accelerator"**: Normal en entornos sin GPU |
|
|
- **"Value not in list of choices"**: Verifica que el modelo esté en la lista de MODELS |
|
|
|
|
|
## 📝 Logs |
|
|
|
|
|
El Space incluye logs detallados para debugging: |
|
|
- Carga de modelos |
|
|
- Parámetros de generación |
|
|
- Errores y fallbacks |
|
|
- Estado de conexión |
|
|
|
|
|
## 🤝 Contribuciones |
|
|
|
|
|
1. Fork el repositorio |
|
|
2. Crea una rama para tu feature |
|
|
3. Haz tus cambios |
|
|
4. Usa `.\push.ps1 "descripción"` para commit |
|
|
5. Crea un Pull Request |
|
|
|
|
|
## 📄 Licencia |
|
|
|
|
|
Este proyecto está bajo la licencia MIT. |