Tous les guides
IntermédiaireÀ votre rythmeGuide gratuitSection 89/95

Déploiement et mise en production

Pratiquez les fondations du développement : programmation, web, API, données et usages de l’IA. Des sections et exercices pour construire vos premiers projets.

💡

Contenu gratuit, accessible sans compte. Les outils et modèles évoluent : consultez le dossier actuel pour vérifier leurs versions. Modèles et sources

Section 11.5.11 : Déploiement et mise en production

🎯 Objectif pédagogique

Déployer votre application IA sur le cloud pour qu'elle soit accessible publiquement. Vous serez capable de mettre en production un chatbot Streamlit avec toutes ses dépendances.


Du localhost au monde réel

Marc a un chatbot qui fonctionne parfaitement en local. Mais tant qu'il tourne sur son ordinateur, personne ne peut le tester. Le déploiement rend l'application accessible à tous — c'est la ligne d'arrivée du développement.

Préparer le déploiement

# 1. requirements.txt — Toutes les dépendances
pip freeze > requirements.txt

# Nettoyez le fichier — gardez SEULEMENT ce qui est nécessaire :
# requirements.txt
streamlit==1.40.0
openai==1.55.0
anthropic==0.39.0
chromadb==0.5.23
python-dotenv==1.0.1
requests==2.32.3
# .streamlit/config.toml — Configuration Streamlit

[theme]
primaryColor = "#0891B2"
backgroundColor = "#FFFFFF"
secondaryBackgroundColor = "#F0F9FF"
textColor = "#1F2937"
font = "sans serif"

[server]
maxUploadSize = 5
headless = true

Structure de fichiers pour le déploiement

careerbot-pro/
├── app.py                   # Point d'entrée
├── config.py                # Configuration
├── agent.py                 # Agent RAG
├── knowledge.py             # Base de connaissances
├── tools.py                 # Définition des outils
├── guardrails.py            # Filtres de sécurité
├── analytics.py             # Tracking
├── webhook_client.py        # Automatisations
├── pages/
│   ├── 1_Chat.py            # Page chatbot
│   └── 2_Dashboard.py       # Page analytics
├── data/
│   ├── knowledge/           # Fichiers à indexer
│   └── analytics.json       # Données de tracking
├── .streamlit/
│   └── config.toml          # Configuration Streamlit
├── requirements.txt         # Dépendances
├── .gitignore               # Fichiers à ignorer
└── README.md                # Documentation

Déployer sur Streamlit Community Cloud

## Étapes de déploiement

### 1. Pousser sur GitHub
git init
git add .
git commit -m "feat: CareerBot Pro MVP ready for deployment"
git remote add origin https://github.com/votre-user/careerbot-pro.git
git push -u origin main

### 2. Streamlit Community Cloud
- Aller sur share.streamlit.io
- Connecter votre compte GitHub
- Sélectionner le repository "careerbot-pro"
- Fichier principal : app.py
- Cliquer "Deploy"

### 3. Secrets
Dans les Settings de l'app Streamlit :
- Ajouter OPENAI_API_KEY = "sk-..."
- Ajouter ANTHROPIC_API_KEY = "sk-ant-..."
- Format TOML (pas .env)

Protocole de mise en production

Loading diagram…
CHECKLIST AVANT DÉPLOIEMENT :

□ requirements.txt à jour (pip freeze)
□ Aucun secret dans le code (API keys dans .env / Secrets)
□ .gitignore inclut : .env, __pycache__/, data/chroma_db/
□ README.md avec instructions d'installation
□ Tests passent (pytest tests/ -v)
□ Application testée localement (streamlit run app.py)
□ Données de démonstration disponibles
□ Config Streamlit (.streamlit/config.toml)
□ GitHub repository propre (pas de gros fichiers)
□ URL personnalisée choisie

JAMAIS de secrets dans le code

OPENAI_API_KEY = "sk-proj-abc123..." dans votre code = clé exposée sur GitHub = facture surprise de 500€+. Utilisez TOUJOURS des variables d'environnement ou les Secrets Streamlit. Même dans des repos privés — les accidents d'exposition sont fréquents (push sur le mauvais repo, changement de visibilité...).

🏋️ Exercice pratique (30 minutes)

  1. →Créez le requirements.txt et le config.toml
  2. →Créez un repository GitHub avec la structure complète
  3. →Déployez sur Streamlit Community Cloud
  4. →Testez l'application en production : est-ce que tout marche ?
  5. →Partagez l'URL avec un ami pour un test réel
Vérification rapide

Quel est le risque principal d'un déploiement précipité sans checklist ?

Vérification rapide

Pourquoi Streamlit Community Cloud est-il recommandé pour un MVP plutôt que Docker + AWS ?

Votre progression

Cette progression est déclarative et conservée dans votre navigateur. L’attestation finale ne constitue pas un diplôme ni une évaluation indépendante.

Voir ma progression et mon attestation

Apprendre l’IA, du premier prompt aux agents

15 guides gratuitsQuiz, schémas et ateliersSans compte

Un cas pratique IA dans votre boîte mail

Méthodes, ressources et nouveaux exercices. Gratuit, avec désinscription à tout moment.