# ============================================================================= # Multi-Class Segmentation API - Requirements # ============================================================================= # ===== CORE WEB FRAMEWORK ===== fastapi==0.115.14 uvicorn==0.35.0 starlette==0.46.2 pydantic==2.11.7 pydantic_core==2.33.2 # ===== STREAMLIT ===== streamlit==1.46.1 altair==5.5.0 # Utilisé par Streamlit pour les graphiques blinker==1.9.0 # Streamlit dependency # ===== HTTP REQUESTS ===== requests==2.32.4 httpx==0.28.1 # Modern HTTP client (utilisé par FastAPI) httpcore==1.0.9 h11==0.16.0 # ===== MACHINE LEARNING CORE ===== tensorflow==2.19.0 keras==3.10.0 numpy>=1.24.0,<2.0.0 # Note: tensorflow-addons n'est plus nécessaire avec TensorFlow 2.19+ # Les fonctionnalités sont maintenant intégrées dans TensorFlow core # ===== COMPUTER VISION ===== pillow==11.3.0 opencv-python-headless==4.9.0.80 # Pas dans votre freeze, mais nécessaire pour Docker scikit-image==0.25.2 imageio==2.37.0 # ===== DATA SCIENCE ===== pandas==2.3.0 matplotlib==3.10.3 scipy==1.16.0 scikit-learn==1.7.0 # ===== MLFLOW & MODEL REGISTRY ===== mlflow==3.2.0 mlflow-skinny==3.2.0 mlflow-tracing==3.2.0 # ===== AWS/S3 SUPPORT ===== boto3==1.39.2 botocore==1.39.2 s3transfer==0.13.0 # ===== SEGMENTATION MODELS ===== # Option 1: Version figée par commit (RECOMMANDÉE pour production) segmentation_models @ git+https://github.com/qubvel/segmentation_models.git@5d24bbfb28af6134e25e2c0b79e7727f6c0491d0 # Option 2: Si vous préférez une version PyPI (décommentez et commentez la ligne du dessus) # segmentation-models==1.0.1 # ===== SUPPORTING LIBRARIES ===== # TensorFlow ecosystem tensorboard==2.19.0 tensorboard-data-server==0.7.2 protobuf==3.20.3 flatbuffers==25.2.10 h5py==3.14.0 astunparse==1.6.3 gast==0.6.0 google-pasta==0.2.0 keras-applications==1.0.8 opt_einsum==3.4.0 termcolor==2.5.0 wrapt==1.17.2 # Data processing networkx==3.5 tifffile==2025.6.11 lazy_loader==0.4 # Utilities click==8.2.1 tqdm==4.67.1 joblib==1.5.1 python-dateutil packaging typing_extensions==4.14.0 # File handling python-multipart==0.0.20 # Pour FastAPI file uploads # ===== AJOUTS SPÉCIFIQUES POUR UTILS/UTILS.PY ===== # Pour la gestion des couleurs et légendes matplotlib cycler==0.12.1 # Pour matplotlib customization # Font handling pour matplotlib (nécessaire dans Docker) fonttools==4.58.5 # ===== REMOVED FROM ORIGINAL ===== # Les packages suivants ont été supprimés car non utilisés dans votre app: # - awsebcli (AWS CLI - pas nécessaire dans le container) # - blessed, fabric, invoke (outils dev) # - jupyter, ipython, spyder (dev environment) # - nltk (pas d'NLP dans votre app) # - pytest (tests - à garder seulement pour dev) # - flask, gunicorn (vous utilisez FastAPI+uvicorn) # - docker (pas besoin dans le container) # - git* packages (dev tools) # ============================================================================= # VERSION ALTERNATIVE - PLUS MINIMALISTE # ============================================================================= # Si vous voulez une version encore plus légère, voici les STRICTEMENT nécessaires: # fastapi==0.115.14 # uvicorn==0.35.0 # streamlit==1.46.1 # tensorflow==2.19.0 # numpy==2.1.3 # pillow==11.3.0 # matplotlib==3.10.3 # pandas==2.3.0 # requests==2.32.4 # mlflow==3.2.0 # boto3==1.39.2 # segmentation_models @ git+https://github.com/qubvel/segmentation_models.git@5d24bbfb28af6134e25e2c0b79e7727f6c0491d0 # ============================================================================= # NOTES SUR SEGMENTATION_MODELS # ============================================================================= # OPTION A: Git avec commit hash (ACTUEL - RECOMMANDÉ) # Avantages: Version exacte, pas de surprises # Inconvénients: Nécessite git dans le container de build # OPTION B: Version PyPI officielle # segmentation-models==1.0.1 # Avantages: Plus simple, pas besoin de git # Inconvénients: Peut être différent de votre version dev # OPTION C: Version locale (si vous avez des modifications) # Copier le package dans le container et faire pip install -e .