#!/bin/bash
#
# Script d'installation de Pix2Struct
# Installe les dépendances nécessaires pour le modèle Pix2Struct
#

set -e

echo "============================================================"
echo "INSTALLATION PIX2STRUCT"
echo "============================================================"
echo ""

# Couleurs
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
NC='\033[0m'

print_status() {
    echo -e "${GREEN}[✓]${NC} $1"
}

print_info() {
    echo -e "${YELLOW}[i]${NC} $1"
}

# Vérifier l'environnement virtuel
if [ ! -d "geniusia2/venv" ]; then
    echo "Erreur: Environnement virtuel non trouvé"
    echo "Exécute d'abord: python3 -m venv geniusia2/venv"
    exit 1
fi

print_status "Environnement virtuel trouvé"

# Activer le venv
source geniusia2/venv/bin/activate

# Installer les dépendances
print_info "Installation de transformers>=4.35.0..."
pip install 'transformers>=4.35.0' --quiet

print_info "Installation de sentencepiece..."
pip install sentencepiece --quiet

print_status "Dépendances Pix2Struct installées"

# Vérifier l'installation
echo ""
print_info "Vérification de l'installation..."

if python -c "from transformers import Pix2StructProcessor, Pix2StructForConditionalGeneration" 2>/dev/null; then
    print_status "Pix2Struct est prêt à l'emploi"
else
    echo "Erreur: Impossible d'importer Pix2Struct"
    exit 1
fi

echo ""
echo "============================================================"
print_status "Installation terminée avec succès!"
echo "============================================================"
echo ""
print_info "Pour utiliser Pix2Struct, configure:"
echo "  embedding_model='pix2struct'"
echo ""
