Spaces:
Sleeping
Sleeping
| # =========================================== | |
| # Script de nettoyage et restructuration pour Hugging Face | |
| # HOLOKIA-AVATAR - Avatar 3D Interactif | |
| # =========================================== | |
| set -e | |
| # Couleurs pour les logs | |
| RED='\033[0;31m' | |
| GREEN='\033[0;32m' | |
| YELLOW='\033[1;33m' | |
| BLUE='\033[0;34m' | |
| NC='\033[0m' # No Color | |
| # Fonctions utilitaires | |
| log_info() { | |
| echo -e "${BLUE}[INFO]${NC} $1" | |
| } | |
| log_success() { | |
| echo -e "${GREEN}[SUCCESS]${NC} $1" | |
| } | |
| log_warning() { | |
| echo -e "${YELLOW}[WARNING]${NC} $1" | |
| } | |
| log_error() { | |
| echo -e "${RED}[ERROR]${NC} $1" | |
| } | |
| # Vérifications préliminaires | |
| check_requirements() { | |
| log_info "Vérification des prérequis..." | |
| # Vérifier Git | |
| if ! command -v git &> /dev/null; then | |
| log_error "Git n'est pas installé" | |
| exit 1 | |
| fi | |
| # Vérifier Git LFS | |
| if ! command -v git-lfs &> /dev/null; then | |
| log_warning "Git LFS n'est pas installé" | |
| log_info "Installation de Git LFS..." | |
| if command -v apt-get &> /dev/null; then | |
| sudo apt-get install git-lfs | |
| elif command -v brew &> /dev/null; then | |
| brew install git-lfs | |
| else | |
| log_error "Impossible d'installer Git LFS automatiquement" | |
| log_info "Installez Git LFS manuellement: https://git-lfs.github.io/" | |
| exit 1 | |
| fi | |
| fi | |
| log_success "Tous les prérequis sont satisfaits" | |
| } | |
| # Sauvegarde des fichiers importants | |
| backup_important_files() { | |
| log_info "Sauvegarde des fichiers importants..." | |
| # Créer un dossier de sauvegarde | |
| mkdir -p ../backup_holokia_avatar | |
| # Sauvegarder les fichiers de configuration | |
| cp -r . ../backup_holokia_avatar/ 2>/dev/null || true | |
| log_success "Sauvegarde terminée dans ../backup_holokia_avatar/" | |
| } | |
| # Nettoyage de l'historique Git | |
| clean_git_history() { | |
| log_info "Nettoyage de l'historique Git..." | |
| # Supprimer le dossier .git existant | |
| if [ -d ".git" ]; then | |
| log_info "Suppression de l'historique Git existant..." | |
| rm -rf .git | |
| fi | |
| # Initialiser un nouveau dépôt Git | |
| log_info "Initialisation d'un nouveau dépôt Git..." | |
| git init | |
| # Configurer Git LFS | |
| log_info "Configuration de Git LFS..." | |
| git lfs install | |
| # Ajouter les fichiers LFS | |
| git lfs track "*.glb" | |
| git lfs track "*.fbx" | |
| git lfs track "*.obj" | |
| git lfs track "*.png" | |
| git lfs track "*.jpg" | |
| git lfs track "*.jpeg" | |
| git lfs track "*.wav" | |
| git lfs track "*.mp3" | |
| log_success "Historique Git nettoyé et LFS configuré" | |
| } | |
| # Restructuration des fichiers | |
| restructure_files() { | |
| log_info "Restructuration des fichiers pour Hugging Face..." | |
| # Supprimer les fichiers de développement | |
| rm -f build-frontend.sh | |
| rm -f deploy_to_hf.sh | |
| rm -f test_deployment.py | |
| rm -f README_HF_DEPLOYMENT.md | |
| rm -f huggingface_hub_config.yaml | |
| rm -rf docker/ | |
| rm -f docker-compose*.yml | |
| # Supprimer les fichiers de cache et temporaires | |
| rm -rf Back-end/tts_cache/ | |
| rm -rf Back-end/logs/ | |
| rm -rf frontend/node_modules/ | |
| rm -rf frontend/dist/ | |
| rm -rf __pycache__/ | |
| rm -rf .pytest_cache/ | |
| # Supprimer les fichiers .env s'ils existent | |
| find . -name ".env*" -not -name ".env.example" -delete 2>/dev/null || true | |
| log_success "Restructuration terminée" | |
| } | |
| # Création des fichiers nécessaires pour HF | |
| create_hf_files() { | |
| log_info "Création des fichiers nécessaires pour Hugging Face..." | |
| # Créer un README.md simple pour HF | |
| cat > README.md << 'EOF' | |
| --- | |
| title: HOLOKIA-AVATAR | |
| emoji: 🤖 | |
| colorFrom: blue | |
| colorTo: purple | |
| sdk: docker | |
| pinned: false | |
| license: mit | |
| short_description: Avatar 3D intelligent avec IA conversationnelle en temps réel | |
| --- | |
| # 🤖 HOLOKIA-AVATAR - Avatar 3D Interactif | |
| Un avatar 3D intelligent avec capacités de conversation en temps réel, utilisant l'IA pour des interactions naturelles. | |
| ## ✨ Fonctionnalités | |
| - 🎭 **Avatar 3D interactif** avec synchronisation labiale | |
| - 🗣️ **Reconnaissance vocale** (Speech-to-Text) | |
| - 🔊 **Synthèse vocale** (Text-to-Speech) | |
| - 🧠 **IA conversationnelle** (Groq LLM) | |
| - 📡 **Streaming temps réel** via WebSocket | |
| - 🌐 **Interface web moderne** avec React et Three.js | |
| ## 🚀 Utilisation | |
| 1. **Parlez** à l'avatar via le microphone | |
| 2. **L'avatar écoute** et comprend votre message | |
| 3. **L'IA génère** une réponse intelligente | |
| 4. **L'avatar parle** avec synchronisation labiale | |
| 5. **Interaction continue** en temps réel | |
| ## 🔧 Configuration | |
| Ajoutez votre clé API Groq dans les **Secrets** du Space : | |
| - Nom : `GROQ_API_KEY` | |
| - Valeur : `gsk_...` (votre clé API) | |
| ## 📄 Licence | |
| MIT License | |
| --- | |
| **Développé avec ❤️ par l'équipe HOLOKIA** | |
| EOF | |
| log_success "Fichiers HF créés" | |
| } | |
| # Configuration Git | |
| setup_git() { | |
| log_info "Configuration Git..." | |
| # Ajouter tous les fichiers | |
| git add . | |
| # Commit initial | |
| git commit -m "Initial commit: HOLOKIA-AVATAR for Hugging Face Spaces" | |
| log_success "Configuration Git terminée" | |
| } | |
| # Fonction principale | |
| main() { | |
| echo "🧹 HOLOKIA-AVATAR - Nettoyage et restructuration pour Hugging Face" | |
| echo "==================================================================" | |
| echo "" | |
| # Vérifications | |
| check_requirements | |
| # Sauvegarde | |
| backup_important_files | |
| # Nettoyage | |
| clean_git_history | |
| # Restructuration | |
| restructure_files | |
| # Création des fichiers HF | |
| create_hf_files | |
| # Configuration Git | |
| setup_git | |
| echo "" | |
| log_success "🎉 Nettoyage et restructuration terminés!" | |
| echo "" | |
| log_info "Prochaines étapes:" | |
| echo "1. Ajoutez le remote Hugging Face:" | |
| echo " git remote add origin https://huggingface.co/spaces/DataSage12/avatar-v2" | |
| echo "" | |
| echo "2. Poussez le code:" | |
| echo " git push -u origin main" | |
| echo "" | |
| echo "3. Ajoutez votre clé API Groq dans les secrets du Space" | |
| echo "" | |
| log_warning "Sauvegarde disponible dans: ../backup_holokia_avatar/" | |
| } | |
| # Gestion des arguments | |
| case "${1:-}" in | |
| --help|-h) | |
| echo "Usage: $0 [OPTIONS]" | |
| echo "" | |
| echo "Ce script nettoie l'historique Git et restructure le projet pour Hugging Face Spaces." | |
| echo "" | |
| echo "Options:" | |
| echo " --help Afficher cette aide" | |
| echo "" | |
| echo "ATTENTION: Ce script va supprimer l'historique Git existant!" | |
| echo "Une sauvegarde sera créée dans ../backup_holokia_avatar/" | |
| echo "" | |
| exit 0 | |
| ;; | |
| *) | |
| main "$@" | |
| ;; | |
| esac | |