# 🚀 NTIA Assistant Enhanced ## Descripción NTIA Assistant Enhanced es una versión mejorada del asistente de IA que integra **espacios de Hugging Face duplicados** para generar videos con múltiples modelos y técnicas. Esta versión combina modelos locales con espacios remotos para ofrecer más opciones de generación de contenido. ## 🌟 Nuevas Características ### 🎬 Generación de Video Mejorada - **Modelos locales**: Zeroscope, AnimateDiff, CogVideo, etc. - **Espacios de HF**: VEO3-Free, Animated, Stable Video Diffusion - **Múltiples formatos**: Text-to-video, animación, retratos animados - **Configuración flexible**: Frames, pasos de inferencia, parámetros personalizados ### 🌐 Integración con Espacios de Hugging Face - **NTIA-VEO3-Free**: Generación de video con VEO3-Free - **NTIA-animated**: Animación con wan2-1-fast - **NTIA-stable-video-diffusion**: Video diffusion estable - **NTIA-LivePortrait**: Retratos animados (deshabilitado por error de runtime) ### 🎨 Generación de Imágenes - Modelos Turbo optimizados para H200 - Modelos premium de alta calidad - Estilos específicos (Midjourney, Waifu, etc.) ### 📝 Generación de Texto y Chat - Modelos conversacionales avanzados - Soporte multilingüe - Chat interactivo ## 📋 Requisitos ### Dependencias ```bash pip install -r requirements.txt ``` ### Variables de Entorno ```bash # Token de Hugging Face (opcional, para modelos gated) export HF_TOKEN="tu_token_aqui" export HUGGING_FACE_HUB_TOKEN="tu_token_aqui" ``` ## 🚀 Instalación y Uso ### 1. Instalación ```bash cd ntia-working pip install -r requirements.txt ``` ### 2. Probar la Integración ```bash python test_hf_spaces.py ``` ### 3. Ejecutar la Aplicación ```bash python app_enhanced.py ``` ## 📁 Estructura de Archivos ``` ntia-working/ ├── app_enhanced.py # Aplicación principal mejorada ├── hf_spaces_config.py # Configuración de espacios de HF ├── test_hf_spaces.py # Script de pruebas ├── app.py # Aplicación original ├── requirements.txt # Dependencias └── README_ENHANCED.md # Este archivo ``` ## 🎯 Uso de Espacios de Hugging Face ### Configuración de Espacios Los espacios están configurados en `hf_spaces_config.py`: ```python HF_SPACES = { "NTIA-VEO3-Free": { "url": "https://huggingface.co/spaces/Ntdeseb/NTIA-VEO3-Free", "api_url": "https://ntdeseb-ntia-veo3-free.hf.space", "type": "text-to-video", "enabled": True }, # ... más espacios } ``` ### Generación de Video con Espacios 1. **Selecciona un modelo de espacio de HF**: - `hf-space:NTIA-VEO3-Free` - `hf-space:NTIA-animated` - `hf-space:NTIA-stable-video-diffusion` 2. **Escribe tu prompt**: ``` Un gato espacial explorando la galaxia con estrellas brillantes ``` 3. **Configura parámetros**: - Número de frames: 8-32 - Pasos de inferencia: 10-50 4. **Genera el video**: - El sistema llamará automáticamente al espacio de HF - Manejará reintentos y timeouts - Procesará la respuesta y la mostrará ### Tipos de Espacios | Espacio | Tipo | Descripción | Estado | |---------|------|-------------|--------| | NTIA-VEO3-Free | text-to-video | Generación de video con VEO3-Free | ✅ Habilitado | | NTIA-animated | animation | Animación con wan2-1-fast | ✅ Habilitado | | NTIA-stable-video-diffusion | stable-video-diffusion | Video diffusion estable | ✅ Habilitado | | NTIA-LivePortrait | live-portrait | Retratos animados | ❌ Deshabilitado | ## 🔧 Configuración Avanzada ### Habilitar/Deshabilitar Espacios ```python from hf_spaces_config import get_hf_spaces_manager manager = get_hf_spaces_manager() # Habilitar un espacio manager.enable_space("NTIA-LivePortrait") # Deshabilitar un espacio manager.disable_space("NTIA-VEO3-Free") ``` ### Verificar Estado de Espacios ```python from hf_spaces_config import list_available_spaces status = list_available_spaces() for space_name, space_status in status.items(): print(f"{space_name}: {space_status['status']}") ``` ### Llamar Espacios Directamente ```python from hf_spaces_config import generate_video_with_space result = generate_video_with_space( "NTIA-VEO3-Free", "Un gato bailando en la luna", num_frames=16, num_inference_steps=20 ) ``` ## 🎨 Interfaz de Usuario ### Pestaña de Video - **Prompt de video**: Describe el video que quieres crear - **Selección de modelo**: Modelos locales y espacios de HF - **Parámetros**: Frames, pasos de inferencia - **Estado de espacios**: Indicadores visuales de disponibilidad ### Pestaña de Imagen - **Prompt de imagen**: Describe la imagen - **Modelos optimizados**: Turbo, premium, estilos específicos - **Parámetros avanzados**: Dimensiones, guidance scale, seed ### Pestaña de Texto - **Generación de texto**: Historias, artículos, etc. - **Modelos conversacionales**: Chat, traducción, etc. ### Pestaña de Chat - **Chat interactivo**: Conversación con modelos de IA - **Historial**: Mantiene el contexto de la conversación ## 🚨 Solución de Problemas ### Espacios No Disponibles - Verifica la conectividad de internet - Revisa si el espacio está en mantenimiento - Usa `test_hf_spaces.py` para diagnosticar ### Errores de Timeout - Reduce el número de frames - Reduce los pasos de inferencia - Verifica la velocidad de internet ### Modelos No Cargados - Verifica el token de HF para modelos gated - Revisa el espacio en disco - Usa modelos locales como fallback ## 📊 Monitoreo y Logs ### Logs de Espacios ``` 🌐 Llamando a NTIA-VEO3-Free (intento 1/3) 📤 Payload: {'prompt': '...', 'num_frames': 16, ...} ✅ Respuesta exitosa de NTIA-VEO3-Free ``` ### Estado de Espacios ``` 🟢 NTIA-VEO3-Free: online - Espacio está en línea 🟢 NTIA-animated: online - Espacio está en línea 🔴 NTIA-LivePortrait: disabled - Espacio está deshabilitado ``` ## 🔄 Actualizaciones ### Agregar Nuevos Espacios 1. Edita `hf_spaces_config.py` 2. Agrega la configuración del nuevo espacio 3. Actualiza `MODELS["video"]` en `app_enhanced.py` 4. Prueba con `test_hf_spaces.py` ### Modificar Configuración - Timeouts: Ajusta `timeout` en la configuración - Reintentos: Modifica `retries` - Payloads: Personaliza `_prepare_payload` ## 🤝 Contribución 1. Fork el proyecto 2. Crea una rama para tu feature 3. Implementa los cambios 4. Prueba con `test_hf_spaces.py` 5. Envía un pull request ## 📄 Licencia Este proyecto está bajo la licencia MIT. Ver `LICENSE` para más detalles. ## 🙏 Agradecimientos - **Hugging Face** por los espacios y modelos - **Comunidad de IA** por los modelos open source - **Contribuidores** que han ayudado con el desarrollo ## 📞 Soporte - **Issues**: Reporta problemas en GitHub - **Discusiones**: Preguntas y sugerencias - **Documentación**: Consulta este README --- **¡Disfruta generando contenido increíble con NTIA Assistant Enhanced! 🎉**