Spaces:
Runtime error
Runtime error
A newer version of the Gradio SDK is available:
5.44.1
🚀 Guide de Déploiement sur Hugging Face Spaces
Ce guide vous accompagne pour déployer votre projet d'analyse de sentiment audio sur Hugging Face Spaces.
📋 Prérequis
- Compte Hugging Face : Créez un compte sur huggingface.co
- Git : Assurez-vous d'avoir Git installé
- Projet prêt : Votre projet doit être fonctionnel localement
🎯 Étapes de déploiement
1. Préparation du repository
# Cloner votre projet (si pas déjà fait)
git clone <votre-repo-url>
cd sentiment_hf_
# Vérifier que tous les fichiers sont présents
ls -la
2. Fichiers nécessaires pour HF Spaces
Assurez-vous d'avoir ces fichiers à la racine :
- ✅
app.py
- Application Gradio principale - ✅
requirements_hf.txt
- Dépendances Python - ✅
config.yaml
- Configuration du Space - ✅
README_HF.md
- Documentation - ✅
.gitattributes
- Gestion des fichiers binaires - ✅
src/
- Votre code source
3. Création du Space sur Hugging Face
- Allez sur huggingface.co/spaces
- Cliquez sur "Create new Space"
- Remplissez les informations :
- Owner : Votre nom d'utilisateur
- Space name :
sentiment-audio-analyzer
(ou autre nom) - License : MIT
- SDK : Gradio
- Python version : 3.10
- Hardware : CPU (gratuit) ou GPU (payant)
4. Upload des fichiers
Option A : Via l'interface web
- Dans votre Space, allez dans l'onglet "Files"
- Uploadez tous les fichiers un par un
Option B : Via Git (recommandé)
# Ajouter le remote HF
git remote add hf https://huggingface.co/spaces/<votre-username>/<nom-du-space>
# Pousser le code
git add .
git commit -m "Initial commit for HF Space"
git push hf main
5. Configuration des variables d'environnement
Dans les paramètres de votre Space :
- HF_SPACE :
true
- GRADIO_SERVER_NAME :
0.0.0.0
- GRADIO_SERVER_PORT :
7860
🔧 Optimisations recommandées
1. Gestion de la mémoire
# Dans app.py, ajoutez :
import gc
import torch
# Après chaque prédiction
gc.collect()
torch.cuda.empty_cache() if torch.cuda.is_available() else None
2. Cache des modèles
# Utilisez le cache HF par défaut
processor_ctc = Wav2Vec2Processor.from_pretrained(
"jonatasgrosman/wav2vec2-large-xlsr-53-french"
)
3. Gestion des erreurs
# Ajoutez des try/catch robustes
try:
# Votre code
except Exception as e:
return f"Erreur : {str(e)}", "", pd.DataFrame(), {}
🚨 Dépannage courant
Problème : "Out of memory"
Solution :
- Utilisez un hardware plus puissant (GPU)
- Optimisez le chargement des modèles
- Ajoutez la gestion de mémoire
Problème : "Model not found"
Solution :
- Vérifiez les noms des modèles
- Assurez-vous qu'ils sont publics sur HF
- Ajoutez des fallbacks
Problème : "Port already in use"
Solution :
- Vérifiez la configuration dans
app.py
- Utilisez le port 7860 par défaut
📊 Monitoring
Logs
- Consultez les logs dans l'onglet "Logs" de votre Space
- Surveillez les erreurs et performances
Métriques
- Temps de réponse
- Utilisation mémoire
- Nombre de requêtes
🔄 Mise à jour
Pour mettre à jour votre Space :
# Modifiez votre code local
git add .
git commit -m "Update: nouvelle fonctionnalité"
git push hf main
🌟 Fonctionnalités avancées
1. API REST
Ajoutez un endpoint API dans votre Space :
# Dans app.py
@app.get("/api/health")
def health_check():
return {"status": "healthy"}
2. Webhooks
Configurez des webhooks pour les notifications :
# Dans config.yaml
webhook: true
3. Custom CSS
Personnalisez l'interface :
# Dans app.py
demo = gr.Blocks(
css="custom.css",
theme=gr.themes.Monochrome(primary_hue="purple")
)
📞 Support
- Documentation HF : huggingface.co/docs/hub/spaces
- Community : huggingface.co/forums
- Discord : huggingface.co/join/discord
🎉 Félicitations ! Votre Space est maintenant déployé et accessible au monde entier !