--- title: HealthCare API emoji: "➕" colorFrom: green colorTo: yellow sdk: docker sdk_version: "3.12" python_version: "3.12" app_file: api/main.py app_port: 5050 pinned: false --- # Backend — Zephyr API Ce backend fournit une API FastAPI pour le chatbot médical Zephyr, les services d'extraction de texte OCR / PDF et la transcription audio via l'API Hugging Face. ## Objectif - Héberger une API REST pour le chat médical, l'analyse de symptômes et le résumé de documents médicaux. - Supporter l'intégration avec un frontend Vue et un déploiement conteneurisé. - Préparer le backend pour un déploiement sur Hugging Face en utilisant Docker. ## Prérequis - Python 3.11+ ou 3.12 - Docker - Token Hugging Face enregistré dans la variable d'environnement `HF_TOKEN` ## Installation locale 1. Créez un environnement virtuel : ```bash python -m venv .venv ``` 2. Activez l'environnement : Windows PowerShell: ```powershell .\.venv\Scripts\Activate.ps1 ``` Linux/macOS: ```bash source .venv/bin/activate ``` 3. Installez les dépendances : ```bash pip install -r requirements.txt ``` 4. Définissez la variable d'environnement Hugging Face : Windows PowerShell: ```powershell $env:HF_TOKEN = "votre_token_huggingface" ``` Linux/macOS: ```bash export HF_TOKEN="votre_token_huggingface" ``` 5. Lancez le serveur : ```bash uvicorn api.main:app --host 0.0.0.0 --port 82 ``` ## Points d'accès principaux - `GET /` : vérifie que le backend est opérationnel - `POST /api/chat` : endpoint principal du chat médical - `POST /api/upload/image` : upload d'image pour OCR - `POST /api/upload/document` : upload de document PDF - `POST /api/upload/voice` : upload audio pour transcription ## Déploiement Docker (Hugging Face ou autre) 1. Construisez l'image Docker : ```bash docker build -t zephyr-backend . ``` 2. Lancez le conteneur en fournissant le token Hugging Face : ```bash docker run -e HF_TOKEN="$HF_TOKEN" -p 80:80 zephyr-backend ``` 3. Le serveur sera disponible sur `http://localhost:80`. ## Remarques de déploiement - Assurez-vous de stocker `HF_TOKEN` comme secret dans Hugging Face ou dans l'environnement de déploiement. - Le backend autorise les requêtes CORS depuis tous les origines pour faciliter l'intégration avec différents frontends. - Les endpoints d'authentification sont actuellement des mocks et ne sont pas encore implémentés en production.