RGPD et IA : Guide complet de conformité

tl;dr: Le RGPD s'applique à l'IA traitant des données personnelles. Points clés : DPA obligatoire avec fournisseurs, anonymisation des données, droit à l'effacement impossible (problème), hébergement EU recommandé, IA locale pour données sensibles, sanctions jusqu'à 4% CA mondial.

L’Intelligence Artificielle et le RGPD posent des défis juridiques majeurs. Ce guide vous aide à naviguer la conformité pour vos projets IA.

Table des matières

  1. Introduction : RGPD et IA, les tensions
  2. Principes fondamentaux du RGPD
  3. Défis spécifiques de l’IA
  4. IA Act Européen 2024
  5. Conformité : Checklist Pratique
  6. Utiliser des APIs LLM en conformité
  7. IA Locale vs Cloud
  8. Cas d’usage par secteur
  9. Sanctions et Jurisprudence
  10. Ressources et Outils

Schéma de sécurité IA illustrant la conformité RGPD pour les systèmes d’IA et les bonnes pratiques pour protéger les modèles

RGPD et IA, les tensions

Le problème fondamental

Le RGPD (Règlement Général sur la Protection des Données) a été conçu en 2016, avant l’explosion des LLMs.

Contradiction majeure :

  • RGPD : Droit à l’effacement, minimisation des données, transparence
  • IA moderne : Apprentissage sur des milliards de données, boîte noire, impossible de “désapprendre”
⚠️ Warning
Attention : Toute utilisation d’IA impliquant des données personnelles d’Européens est soumise au RGPD, même si votre entreprise est hors UE.

Données personnelles : définition

Donnée personnelle = Toute information permettant d’identifier directement ou indirectement une personne.

Exemples évidents :

  • Nom, prénom
  • Email
  • Numéro de téléphone
  • Adresse IP
  • Photo d’une personne

Exemples moins évidents (mais couverts) :

  • Identifiant unique (user_id_12345)
  • Données comportementales (historique chat)
  • Inférences (scoring de risque)
  • Données biométriques (voix, visage)
  • Données de santé (symptômes mentionnés)

Non-personnel :

  • Statistiques agrégées anonymes
  • Données entreprises (SIRET, CA)
  • Données publiques (météo, taux de change)

Quand le RGPD s’applique-t-il à votre IA ?

RGPD s’applique si :

  • Vous traitez des données de résidents UE
  • Données personnelles impliquées
  • Traitement automatisé

Exemples :

  • ✅ Chatbot support client (historique conversations)
  • ✅ Analyse de CVs (nom, email candidats)
  • ✅ Recommandation personnalisée (profil utilisateur)
  • ✅ OCR de factures (noms, adresses)
  • ❌ Chatbot répondant questions générales (pas de données perso)
  • ❌ Génération d’images abstraites

Principes fondamentaux du RGPD

Les 6 principes clés

Licéité, loyauté, transparence

Obligation : Informer les personnes de l’utilisation de leurs données.

En pratique IA :

Exemple Notice :
"Vos messages sont analysés par un système d'IA (GPT-4 via OpenAI)
pour vous fournir des réponses personnalisées. Vos données sont
conservées 30 jours. Vous pouvez demander leur suppression."

Conforme :

  • Politique de confidentialité claire
  • Mention explicite de l’IA
  • Finalités expliquées

Non-conforme :

  • IA cachée aux utilisateurs
  • “Nous utilisons des technologies avancées” (trop vague)

Limitation des finalités

Obligation : Utiliser les données uniquement pour l’usage annoncé.

Exemple problématique :

Annoncé : "Chatbot support client"
Réalité : Données utilisées pour entraîner modèle commercial

→ VIOLATION RGPD

Conforme :

  • Utilisation strictement limitée au service annoncé
  • Consentement supplémentaire pour autres usages

Minimisation des données

Obligation : Collecter seulement le nécessaire.

Mauvais exemple :

# Envoyer TOUT le profil utilisateur à l'IA
prompt = f"""
Utilisateur : {user.nom} {user.email} {user.adresse}
{user.historique_achats} {user.revenus}
Question : Quel est le statut de ma commande ?
"""

Bon exemple :

# Seulement ce qui est nécessaire
prompt = f"""
Commande #{order.id}
Question : Quel est le statut de ma commande ?
"""

Exactitude

Obligation : Données à jour et correctes.

Défi IA : Hallucinations peuvent créer des données fausses.

Mitigation :

  • RAG pour données factuelles
  • Validation humaine pour décisions importantes
  • Ne pas stocker les hallucinations comme “vérité”

Limitation de la conservation

Obligation : Durée de conservation définie et limitée.

En pratique IA :

# Politique de rétention
RETENTION_POLICY = {
    "chat_history": 30,  # jours
    "embeddings": 90,
    "analytics": 365
}

# Suppression automatique
def cleanup_old_data():
    cutoff = datetime.now() - timedelta(days=30)
    db.delete_where("created_at < ?", cutoff)

Erreur commune : Conserver les logs indéfiniment.


Intégrité et confidentialité

Obligation : Sécuriser les données contre accès non autorisé.

Mesures IA :

  • ✅ Chiffrement en transit (HTTPS)
  • ✅ Chiffrement au repos (DB)
  • ✅ Accès restreint (RBAC)
  • ✅ Anonymisation avant envoi API
  • ✅ Logs d’accès

Défis spécifiques de l’IA

Droit à l’effacement impossible

Article 17 RGPD : “Droit à l’oubli” - Supprimer toutes les données d’une personne.

Problème avec LLMs :

1. User A envoie message avec données perso
2. Message utilisé pour fine-tuner le modèle
3. Données "absorbées" dans les poids du réseau
4. User A demande suppression
5. ❌ IMPOSSIBLE de retirer info du modèle sans réentraîner

Solutions juridiques :

Option A : Ne pas entraîner sur données personnelles ⭐⭐⭐

# JAMAIS utiliser chats pour training
api_call = openai.ChatCompletion.create(
    model="gpt-4",
    messages=user_messages,
    # OpenAI : ne pas utiliser pour entraînement
)

Option B : Anonymisation avant training ⭐⭐

def anonymize(text):
    # Retirer/masquer données perso
    text = re.sub(r'\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Z|a-z]{2,}\b',
                  '[EMAIL]', text)
    text = re.sub(r'\b\d{10}\b', '[PHONE]', text)
    # NER pour noms, lieux, etc.
    return text

Option C : Modèles éphémères

  • Fine-tuning temporaire
  • Réentraînement fréquent sans anciennes données
  • Coûteux

Transparence et explicabilité

Article 13-14 RGPD : Expliquer la logique du traitement automatisé.

Problème : LLMs = boîtes noires avec 175B+ paramètres.

Ce que le RGPD exige :

“Informations utiles concernant la logique sous-jacente, ainsi que l’importance et les conséquences prévues de ce traitement”

En pratique IA :

Insuffisant :

"Nous utilisons une IA avancée pour analyser votre demande."

Mieux :

"Votre message est analysé par un modèle de langage (GPT-4 d'OpenAI)
qui a appris sur des milliards de textes. Le système :
1. Identifie le sujet de votre demande
2. Recherche dans notre base de connaissances
3. Génère une réponse personnalisée
4. Un humain valide les décisions importantes"

Pour les décisions automatisées (scoring, refus crédit) :

  • Expliquer facteurs principaux
  • Fournir exemples de scénarios
  • Droit à intervention humaine

Outils émergents :

  • LIME, SHAP (explainability)
  • Constitutional AI (traces de raisonnement)

Transferts hors UE

Chapitre V RGPD : Transfert de données hors UE strictement encadré.

Problème : APIs OpenAI, Anthropic = serveurs USA.

Mécanismes légaux :

1. Clauses Contractuelles Types (SCC) ⭐⭐⭐

  • Contrat standardisé UE
  • OpenAI, Anthropic proposent SCCs
  • Obligatoire

2. Décision d’Adéquation

  • EU-US Data Privacy Framework (2023)
  • Remplace Privacy Shield invalidé
  • Permet transferts USA

3. Binding Corporate Rules (BCR)

  • Pour multinationales
  • Processus long

Solutions pratiques :

Azure OpenAI Service :

  • Hébergement dans datacenters EU
  • Données ne quittent pas l’UE
  • RGPD-compliant natif
from openai import AzureOpenAI

client = AzureOpenAI(
    azure_endpoint="https://your-resource.openai.azure.com",
    api_version="2024-02-01"
)
# Données restent en EU

Mistral AI :

  • Entreprise française
  • Hébergement EU
  • Souveraineté numérique

IA Locale :

  • Llama 3 sur serveurs EU
  • 0% transfert international

Biais et discrimination

Article 22 RGPD : Droit de ne pas faire l’objet d’une décision automatisée.

Problème IA : Biais dans les modèles.

Exemples de biais :

  • Recrutement : Favoriser certains profils
  • Crédit : Discriminer minorités
  • Modération : Censurer certaines opinions

Obligations :

Tests de biais :

# Tester sur groupes protégés
results_men = evaluate_model(data_men)
results_women = evaluate_model(data_women)

bias = abs(results_men.accuracy - results_women.accuracy)
if bias > 0.05:  # 5% différence
    logger.warning("Potential bias detected")

Audits réguliers :

  • Revue de décisions
  • Analyse démographique
  • Ajustements du modèle

Human in the loop :

  • Décisions importantes validées par humain
  • Droit de contester

Profilage et scoring

Article 22 RGPD : Interdiction du profilage automatisé (avec exceptions).

Profilage = Traitement automatisé pour évaluer aspects personnels.

Exemples IA :

  • Scoring de crédit
  • Risque de churn
  • Prédiction de performance
  • Recommandations personnalisées

Conditions légales :

Autorisé si :

  1. Consentement explicite OU
  2. Nécessaire pour contrat OU
  3. Autorisé par loi

ET :

  • Droit d’intervention humaine
  • Droit de contester la décision
  • Droit d’explication

Exemple conforme :

# Système de recommandation
def recommend_products(user_id):
    # 1. Base de consentement
    if not user.has_consented_to_profiling():
        return generic_recommendations()

    # 2. Profilage
    profile = ai_model.predict(user_id)
    recommendations = get_recommendations(profile)

    # 3. Explicabilité
    explanation = {
        "based_on": ["Achats précédents", "Navigation"],
        "factors": profile.top_factors,
        "opt_out": "/settings/profiling"
    }

    return recommendations, explanation

IA Act Européen 2024

Nouvelle réglementation spécifique IA

L’AI Act (adopté mars 2024, application 2026) complète le RGPD.

Niveaux de risque

Risque Inacceptable ❌ (INTERDIT)

  • Manipulation comportementale
  • Scoring social (à la chinoise)
  • Exploitation de vulnérabilités
  • Identification biométrique en temps réel (sauf exceptions)

Haut Risque ⚠️ (RÉGLEMENTATION STRICTE)

  • Recrutement
  • Évaluation étudiants
  • Gestion RH
  • Crédit scoring
  • Urgences (police, hôpitaux)
  • Infrastructures critiques

Risque Limité 🟡 (TRANSPARENCE)

  • Chatbots (obligation de divulguer qu’c’est une IA)
  • Deepfakes
  • Génération de contenu

Risque Minimal ✅ (PAS DE RÈGLES SPÉCIALES)

  • Jeux vidéo
  • Filtres spam
  • Catalogues de produits

Obligations pour IA à haut risque

Si votre IA est classée haut risque :

1. Gestion des risques

  • Évaluation continue
  • Mesures de mitigation
  • Documentation

2. Gouvernance des données

  • Qualité, représentativité, absence de biais
  • Datasets documentés

3. Documentation technique

  • Architecture du système
  • Données d’entraînement
  • Performances, limites

4. Transparence

  • Notice d’utilisation
  • Explicabilité
  • Supervision humaine possible

5. Précision et robustesse

  • Benchmarks de performance
  • Résistance aux attaques

6. Supervision humaine

  • Human in the loop pour décisions critiques

7. Cybersécurité

  • Protection contre manipulations

Sanctions AI Act

Jusqu’à 35M€ ou 7% du CA mondial pour violations graves.

Plus sévère que RGPD (4% CA).

Ce que ça change pour vous

Chatbot RH (haut risque) :

  • Documentation complète requise
  • Tests de biais obligatoires
  • Supervision humaine
  • Audit externe possible

Chatbot marketing (risque limité) :

  • Divulguer que c’est une IA
  • Pas d’obligations lourdes

Conseil : Classifier vos systèmes IA selon grille de risque.


Conformité : Checklist pratique

Checklist RGPD pour projets IA

Avant le développement

Analyse de nécessité :

  • L’IA traite-t-elle des données personnelles ?
  • Quelle est la base légale (consentement, contrat, intérêt légitime) ?
  • Peut-on minimiser les données collectées ?
  • Peut-on anonymiser avant traitement ?

DPIA (Data Protection Impact Assessment) :

  • IA = profilage ou décisions automatisées → DPIA obligatoire
  • Identifier risques pour les personnes
  • Mesures de mitigation
  • Consultation DPO (si existant)

Architecture Privacy-by-Design :

  • Anonymisation intégrée dès la conception
  • Chiffrement par défaut
  • Minimisation des données
  • Logs d’accès

Développement

Gestion des données :

  • Durée de conservation définie
  • Suppression automatique après expiration
  • Pseudonymisation ou anonymisation

Sécurité :

  • Chiffrement HTTPS (transit)
  • Chiffrement base de données (repos)
  • Accès restreints (RBAC)
  • Audit logs
  • Backups chiffrés

Fournisseurs tiers (APIs LLM) :

  • DPA (Data Processing Agreement) signé
  • SCCs pour transferts hors UE
  • Politique de non-entraînement sur vos données
  • Hébergement EU si données sensibles

Mise en production

Transparence :

  • Politique de confidentialité mise à jour
  • Mention explicite de l’IA
  • Finalités claires
  • Droits des personnes expliqués

Consentement (si nécessaire) :

  • Opt-in clair et granulaire
  • Facile à retirer
  • Pas de case pré-cochée
  • Consentement séparé par finalité

Registre des activités de traitement :

  • Description du traitement IA
  • Finalités
  • Catégories de données
  • Destinataires
  • Transferts internationaux
  • Durées de conservation

Droits des personnes :

  • Procédure pour exercer droits (accès, rectification, effacement)
  • Délai de réponse : 1 mois max
  • Point de contact RGPD visible

Exploitation

Monitoring :

  • Surveillance des incidents
  • Détection de biais
  • Revue régulière des logs

Incident Response :

  • Plan en cas de fuite de données
  • Notification CNIL : 72h max
  • Notification personnes concernées si risque élevé

Formation :

  • Équipe formée au RGPD
  • Sensibilisation aux risques IA

Audits :

  • Audit RGPD annuel
  • Tests de conformité
  • Mise à jour documentation

Template DPA (Data Processing Agreement)

Quand utiliser un DPA : Dès que vous utilisez un fournisseur IA traitant des données perso pour vous (sous-traitant).

Clauses essentielles :

# DATA PROCESSING AGREEMENT

## 1. Objet et Durée {#1-objet-et-durée}
Le Sous-traitant (OpenAI/Anthropic/...) s'engage à traiter
les données personnelles uniquement pour le compte du Responsable.

## 2. Nature et Finalité du Traitement {#2-nature-et-finalité-du-traitement}
- Nature : Analyse de texte, génération de réponses
- Finalité : Support client via chatbot
- Durée : Pendant la durée du contrat

## 3. Type de Données et Catégories de Personnes {#3-type-de-données-et-catégories-de-personnes}
- Données : Messages clients, historique conversations
- Personnes : Clients de [Votre Entreprise]

## 4. Obligations du Sous-traitant {#4-obligations-du-sous-traitant}
- Traiter uniquement sur instruction documentée
- Confidentialité
- Sécurité (chiffrement, accès restreints)
- Assistance pour répondre aux droits des personnes
- Notification d'incidents : 24h max
- Ne PAS utiliser données pour entraîner modèles (sauf accord)

## 5. Sous-traitance Ultérieure {#5-sous-traitance-ultérieure}
- Liste des sous-traitants autorisés
- Obligation d'information en cas de changement

## 6. Transferts Hors UE {#6-transferts-hors-ue}
- Mécanisme : SCCs / EU-US Data Privacy Framework
- Garanties : [détails]

## 7. Assistance aux Droits des Personnes {#7-assistance-aux-droits-des-personnes}
- Délai de réponse : 10 jours ouvrés
- Suppression des données sur demande

## 8. Audit {#8-audit}
- Droit d'audit annuel
- Fourniture de rapports de conformité

## 9. Suppression/Restitution des Données {#9-suppressionrestitution-des-données}
- À la fin du contrat : suppression certifiée sous 30 jours
- Ou restitution si demandé

## 10. Responsabilité {#10-responsabilité}
- Sous-traitant responsable si non-respect
- Indemnisation en cas de dommages

Important : Demander ce DPA à OpenAI, Anthropic, etc. C’est leur obligation.


Utiliser des APIs LLM en conformité

OpenAI : Conformité RGPD

Politique de données (2024) :

API Entreprise :

  • Vos données NE SONT PAS utilisées pour entraîner les modèles
  • Conservées 30 jours pour abuse monitoring (puis suppression)
  • DPA disponible
  • SCCs signées

ChatGPT gratuit :

  • Conversations peuvent servir à l’entraînement (opt-out possible)
  • Ne PAS y mettre de données personnelles sensibles

Best practices OpenAI :

import openai
import re

def anonymize_pii(text):
    """Anonymiser avant envoi"""
    # Emails
    text = re.sub(r'\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Z|a-z]{2,}\b',
                  '[EMAIL]', text)
    # Téléphones français
    text = re.sub(r'\b0[1-9]([ .-]?\d{2}){4}\b', '[PHONE]', text)
    # NER pour noms (utiliser spaCy ou autre)
    # ...
    return text

# Utilisation
user_message = "Mon email est [email protected]"
safe_message = anonymize_pii(user_message)

response = openai.ChatCompletion.create(
    model="gpt-4",
    messages=[{"role": "user", "content": safe_message}]
)

Azure OpenAI (recommandé UE) :

from openai import AzureOpenAI

client = AzureOpenAI(
    api_key=os.getenv("AZURE_OPENAI_KEY"),
    api_version="2024-02-01",
    azure_endpoint="https://your-eu-west.openai.azure.com"
)

# Données restent dans datacenter EU (Dublin, Amsterdam, ...)
response = client.chat.completions.create(
    model="gpt-4",
    messages=[{"role": "user", "content": user_query}]
)

Avantages Azure OpenAI :

  • ✅ Hébergement EU
  • ✅ RGPD natif
  • ✅ Contrats Microsoft établis
  • ✅ Pas de rate limiting agressif
  • ❌ Plus cher (~30% vs API directe)

Anthropic Claude : Conformité

Politique :

  • DPA disponible
  • Données d’API non utilisées pour training
  • SCCs pour transferts EU-US

Utilisation :

import anthropic

client = anthropic.Anthropic(api_key="sk-ant-...")

# Anonymiser d'abord
safe_prompt = anonymize_pii(user_prompt)

response = client.messages.create(
    model="claude-3-opus-20240229",
    max_tokens=1024,
    messages=[{"role": "user", "content": safe_prompt}]
)

Google Gemini : Conformité

Vertex AI (recommandé UE) :

  • Hébergement EU (region europe-west)
  • RGPD-compliant
  • DPA Google Cloud
from vertexai.preview.generative_models import GenerativeModel

model = GenerativeModel("gemini-1.5-pro")

# Spécifier région EU
response = model.generate_content(
    user_prompt,
    generation_config={
        "temperature": 0.7,
        "max_output_tokens": 1024,
    },
    # Région EU définie au niveau projet GCP
)

Mistral AI : Alternative européenne

Avantages RGPD :

  • ✅ Entreprise française
  • ✅ Hébergement EU par défaut
  • ✅ Souveraineté numérique
  • ✅ RGPD natif
from mistralai.client import MistralClient

client = MistralClient(api_key="...")

response = client.chat(
    model="mistral-large-latest",
    messages=[{"role": "user", "content": user_query}]
)

Idéal pour :

  • Secteur public français
  • Entreprises soucieuses de souveraineté
  • Données sensibles mais pas ultra-critiques

IA Locale vs Cloud pour RGPD

Matrice de décision

CritèreCloud API (OpenAI, etc.)IA Locale (Llama, Mistral)
Conformité RGPD⚠️ DPA + SCCs requis✅ 100% conforme natif
Transfert hors UE⚠️ Oui (sauf Azure EU)✅ Non
Droit à l’effacement✅ Possible (API)✅ Facile (DB locale)
Transparence⚠️ Boîte noire⚠️ Boîte noire aussi
Contrôle données❌ Chez fournisseur✅ 100% chez vous
Complexité setup✅ Simple (API)❌ Complexe (infra)
Coût initial✅ $0❌ $5K-50K (serveurs)
Qualité✅ GPT-4 (top)⭐⭐⭐⭐ Llama 70B (très bon)

Quand utiliser l’IA locale

Obligatoire pour :

🏥 Santé :

  • Données de santé = sensibles RGPD
  • Pas de cloud sans garanties extrêmes
  • Solution : Llama 3 70B sur serveur hôpital

🏦 Finance / Banque :

  • Données financières personnelles
  • Exigences réglementaires strictes
  • Solution : Infrastructure on-premise

⚖️ Juridique :

  • Secret professionnel avocat
  • Confidentialité absolue
  • Solution : IA locale uniquement

🛡️ Défense / Gouvernement :

  • Souveraineté numérique
  • Secret-défense
  • Solution : Serveurs souverains

Architecture IA locale RGPD-Compliant

Stack recommandée :

Infrastructure :
  - Serveurs : On-premise ou cloud EU (OVH, Scaleway)
  - GPU : 2-4x A100 ou H100
  - OS : Linux Ubuntu 22.04 LTS
  - Sécurité : Firewall, VPN, chiffrement disques

Modèle :
  - LLM : Llama 3.1 70B (Meta, open source)
  - Format : GGUF Q4 (quantization)
  - Serveur : vLLM ou Ollama

Base vectorielle (pour RAG) :
  - Qdrant ou Weaviate (self-hosted)
  - Hébergement : Même datacenter que LLM

Application :
  - Backend : FastAPI (Python)
  - Frontend : Next.js
  - DB : PostgreSQL (chiffré)

Monitoring :
  - Logs : Loki + Grafana
  - Métriques : Prometheus
  - Alertes : PagerDuty

Conformité :
  - Backups chiffrés : Daily
  - Rétention : 30 jours chat, 1 an analytics
  - Accès : RBAC strict, MFA
  - Audit : Logs immutables, alertes anomalies

Coûts estimés :

  • Hardware : $20K-50K (achat) ou $2K-5K/mois (location)
  • Maintenance : 1 DevOps à temps partiel
  • Électricité : $300-800/mois
  • Licences : $0 (open source)

ROI : 12-24 mois si usage intensif vs API cloud.


IA locale : Exemple déploiement

# 1. Installer Ollama (serveur LLM local)
curl -fsSL https://ollama.com/install.sh | sh

# 2. Télécharger Llama 3.1 70B quantized
ollama pull llama3.1:70b-instruct-q4_K_M

# 3. Lancer serveur (accessible uniquement réseau local)
ollama serve --host 192.168.1.100:11434

# 4. Configurer reverse proxy avec auth
# nginx.conf
server {
    listen 443 ssl;
    server_name ai.votre-entreprise.local;

    ssl_certificate /etc/ssl/certs/your-cert.crt;
    ssl_certificate_key /etc/ssl/private/your-key.key;

    location / {
        proxy_pass http://localhost:11434;
        # Authentification
        auth_basic "IA Interne";
        auth_basic_user_file /etc/nginx/.htpasswd;
    }
}

# 5. Application Python
from ollama import Client

client = Client(host='https://ai.votre-entreprise.local')

def chat_rgpd_compliant(user_id, message):
    # 1. Logger avec consent
    if user_consent_given(user_id):
        log_interaction(user_id, message)

    # 2. Anonymiser si nécessaire
    safe_message = anonymize_if_needed(message)

    # 3. Requête IA (données restent en interne)
    response = client.chat(
        model='llama3.1:70b',
        messages=[{'role': 'user', 'content': safe_message}]
    )

    # 4. Logger réponse
    log_interaction(user_id, response['message']['content'])

    # 5. Auto-suppression après 30 jours (RGPD)
    schedule_deletion(user_id, days=30)

    return response['message']['content']

Avantages RGPD :

  • ✅ Données JAMAIS chez un tiers
  • ✅ Droit à l’effacement : Simple SQL DELETE
  • ✅ Pas de transfert international
  • ✅ Audit complet possible
  • ✅ Souveraineté totale

Voir aussi : Ollama


Cas d’usage par secteur

Santé : Contraintes maximales

Réglementation :

  • RGPD + Données de santé (catégorie spéciale)
  • Hébergement HDS (Hébergeur Données de Santé) en France

Interdictions :

  • ❌ Cloud US sans garanties
  • ❌ ChatGPT web avec diagnostics
  • ❌ Entraînement sur données patients sans consentement explicite

Solutions conformes :

IA Locale HDS :

Hébergement : OVHcloud HDS ou Outscale (français)
Modèle : Llama 3.1 70B fine-tuné médical
Données : Anonymisation systématique (Hashing IDs patients)
Accès : MFA + RBAC strict (médecins uniquement)
Logs : Immutables, conservés 10 ans (réglementation santé)

Use cases autorisés :

  • Aide au diagnostic (avec validation médecin)
  • Résumé de dossiers médicaux
  • Génération de comptes-rendus
  • Recherche d’interactions médicamenteuses

Exemple : Résumé dossier patient

def summarize_medical_record(patient_id, doctor_id):
    # 1. Vérifier autorisations
    if not doctor_has_access(doctor_id, patient_id):
        raise PermissionError("Accès refusé")

    # 2. Récupérer dossier (DB HDS)
    record = db.get_patient_record(patient_id)

    # 3. Anonymiser pour IA
    anon_record = anonymize_medical_data(record)
    # "Patient X, 45 ans, sexe M, antécédents: diabète type 2..."

    # 4. IA locale (Llama medical fine-tuned)
    summary = llm_medical.generate(f"""
    Résume ce dossier médical en 3 points clés :
    {anon_record}
    """)

    # 5. Logger (audit trail)
    audit_log.record(
        action="medical_summary",
        doctor=doctor_id,
        patient=patient_id,  # chiffré
        timestamp=now()
    )

    # 6. Afficher au médecin
    return summary

Finance / banque : Haute sécurité

Réglementation :

  • RGPD
  • ACPR (Autorité de Contrôle Prudentiel)
  • PSD2 pour paiements

Use cases :

Chatbot service client :

  • Questions solde, dernières transactions
  • Contrainte : Pas de révélation de données sensibles
  • Solution : Authentification forte + masquage
def banking_chatbot(user_id, question):
    # 1. Authentification forte (MFA)
    if not mfa_verified(user_id):
        return "Veuillez vous authentifier"

    # 2. Récupérer contexte utilisateur (limité)
    context = {
        "solde": get_balance(user_id),  # OK si authentifié
        "transactions_récentes": get_last_transactions(user_id, limit=5)
    }

    # 3. Masquer numéros de compte
    context_masked = mask_account_numbers(context)

    # 4. Prompt sécurisé
    prompt = f"""
    Tu es un conseiller bancaire.

    Contexte client (CONFIDENTIEL, ne jamais révéler) :
    {context_masked}

    Question client : {question}

    Règles STRICTES :
    - JAMAIS révéler numéros de compte complets
    - JAMAIS divulguer données non demandées
    - Rester factuel, pas de conseil financier
    """

    # 5. IA (Azure OpenAI EU ou local)
    response = llm.generate(prompt)

    # 6. Filtrage sortie (double sécurité)
    safe_response = filter_sensitive_data(response)

    return safe_response

Détection fraude :

  • Scoring de transactions
  • Conformité : Explicabilité requise (RGPD Art. 22)
def fraud_detection(transaction):
    # ML classique + LLM explanation
    risk_score = ml_model.predict(transaction)

    if risk_score > 0.8:  # Suspect
        # LLM explique pourquoi
        explanation = llm.generate(f"""
        Transaction suspecte détectée :
        - Montant : {transaction.amount}        - Localisation : {transaction.country}
        - Heure : {transaction.time}
        - Facteurs de risque : {risk_score.factors}

        Explique en 2 phrases pourquoi c'est suspect.
        """)

        # Envoyer alerte + explication client
        notify_client(
            transaction.user_id,
            f"Transaction bloquée. Raison : {explanation}"
        )

        # Humain valide
        return "pending_human_review"

Recommandation : IA locale ou Azure EU obligatoire.


RH / recrutement : Zone sensible

Réglementation :

  • RGPD + AI Act (haut risque)
  • Interdiction discrimination

Risques majeurs :

  • Biais de recrutement (genre, origine, âge)
  • Décision automatisée interdite sans intervention humaine

Solutions conformes :

Screening CVs (avec précautions) :

def screen_resume(cv_text):
    # 1. Anonymiser AVANT analyse IA
    cv_anon = anonymize_resume(cv_text)
    # Retire : nom, genre, âge, adresse, photo

    # 2. IA analyse compétences
    analysis = llm.generate(f"""
    Analyse ce CV anonymisé et extrait :
    1. Compétences techniques
    2. Années d'expérience
    3. Formation
    4. Langues

    CV : {cv_anon}

    Format JSON.
    """)

    skills = json.loads(analysis)

    # 3. Matching avec offre (pas de scoring global)
    match = compare_skills(skills, job_requirements)

    # 4. Humain décide (IA = aide seulement)
    return {
        "skills_extracted": skills,
        "match_rate": match,
        "decision": "human_review_required"
    }

Tests de biais obligatoires :

def test_hiring_bias():
    # Générer CVs tests
    cv_male = generate_test_cv(gender="male", ...)
    cv_female = generate_test_cv(gender="female", ...)  # Mêmes compétences

    score_male = screen_resume(cv_male)["match_rate"]
    score_female = screen_resume(cv_female)["match_rate"]

    # Vérifier écart
    bias = abs(score_male - score_female)

    if bias > 0.05:  # 5% différence
        alert_compliance_team("Gender bias detected in hiring AI")
        disable_ai_screening()  # Désactiver si biais

    # Tester aussi : origine, âge, handicap

Obligations AI Act :

  • Documentation complète du système
  • Tests de biais réguliers
  • Supervision humaine
  • Droit de contester
  • Audit externe possible

E-commerce / marketing : Modéré

Use cases RGPD :

Recommandations produits :

  • Consentement pour cookies/tracking
  • Profilage autorisé si opt-in
def product_recommendations(user_id):
    # 1. Vérifier consentement
    if not user.has_consented_to_profiling():
        # Recommandations génériques (best-sellers)
        return get_popular_products()

    # 2. Profilage autorisé
    user_profile = {
        "past_purchases": get_purchases(user_id),
        "browsing_history": get_browsing(user_id, days=30),
        "preferences": get_preferences(user_id)
    }

    # 3. IA génère recommandations
    recommendations = llm.generate(f"""
    Profil utilisateur : {user_profile}

    Recommande 5 produits avec justification.
    """)

    # 4. Transparence
    explanation = "Basé sur vos achats et navigation des 30 derniers jours"

    return recommendations, explanation

Chatbot support :

  • Données conservées 30 jours max
  • Anonymisation après support résolu

Moins de contraintes que santé/finance, mais RGPD s’applique.


Sanctions et jurisprudence

Amendes RGPD majeures (2020-2025)

EntrepriseAnnéeAmendeViolation
Amazon2021746M€Cookies, profilage sans consentement
Meta20231.2Md€Transferts USA sans garanties
Google202290M€Cookies sans consentement
Clearview AI202220M€Reconnaissance faciale illégale

Cas IA spécifiques

Clearview AI (2022) :

  • Violation : Scraping photos publiques pour reconnaissance faciale
  • Sanction : 20M€ + interdiction UE
  • Leçon : Données publiques ≠ utilisables pour IA

SyRI (Pays-Bas, 2020) :

  • Violation : Profilage automatisé sans transparence
  • Sanction : Système déclaré illégal
  • Leçon : Scoring de citoyens interdit sans transparence

Sanctions AI Act (à venir 2026+)

Montants prévus :

  • Infractions graves : 35M€ ou 7% CA mondial
  • Autres : 15M€ ou 3% CA mondial

Violations graves :

  • IA interdite déployée (scoring social)
  • Non-respect obligations haut risque
  • Données biaisées non détectées → discrimination

Comment éviter les sanctions

1. Documentation rigoureuse

  • Registre des traitements
  • DPIA pour IA à risque
  • Contrats (DPA) avec fournisseurs

2. DPO (Data Protection Officer)

  • Obligatoire si traitement grande échelle ou données sensibles
  • Peut être externalisé

3. Privacy by Design

  • Intégrer RGPD dès conception
  • Pas de “on verra plus tard”

4. Tests et audits

  • Audit RGPD annuel
  • Tests de biais
  • Pen-testing sécurité

5. Formation équipes

  • Développeurs : Bonnes pratiques
  • Support : Gestion des droits
  • Management : Responsabilités

6. Transparence

  • Politique de confidentialité claire
  • Communication proactive

Ressources et outils

Outils d’anonymisation

1. Presidio (Microsoft) :

from presidio_analyzer import AnalyzerEngine
from presidio_anonymizer import AnonymizerEngine

# Détection
analyzer = AnalyzerEngine()
results = analyzer.analyze(
    text="Je m'appelle Jean Dupont, email: [email protected]",
    language='fr'
)

# Anonymisation
anonymizer = AnonymizerEngine()
anonymized = anonymizer.anonymize(text, results)
print(anonymized.text)
# "Je m'appelle <PERSON>, email: <EMAIL>"

2. spaCy NER (Named Entity Recognition) :

import spacy

nlp = spacy.load("fr_core_news_lg")
doc = nlp("Jean habite à Paris.")

for ent in doc.ents:
    if ent.label_ == "PER":  # Personne
        text = text.replace(ent.text, "[NOM]")
    elif ent.label_ == "LOC":  # Lieu
        text = text.replace(ent.text, "[VILLE]")

Outils de conformité

1. OneTrust (Commercial) :

  • Gestion consentements
  • Cookie banners
  • Registre RGPD
  • DPIA automatisée

2. TrustArc :

  • Privacy management
  • Conformité multi-réglementations (RGPD, CCPA, etc.)

3. Cookiebot :

  • Gestion cookies
  • Scan automatique site web

Templates et checklists

DPIA Template :

Politique de Confidentialité IA :

# Politique de Confidentialité - Utilisation IA

## 1. Utilisation d'Intelligence Artificielle {#1-utilisation-dintelligence-artificielle}
Notre service utilise des modèles d'IA (GPT-4 d'OpenAI / Claude d'Anthropic)
pour [finalité précise : répondre à vos questions, analyser documents, etc.].

## 2. Données Traitées {#2-données-traitées}
Les données suivantes sont traitées par l'IA :
- Messages que vous envoyez au chatbot
- [Autres données si applicable]

Ces données peuvent contenir des informations personnelles que vous fournissez.

## 3. Base Légale {#3-base-légale}
Nous traitons vos données sur la base de :
- [X] Votre consentement
- [X] L'exécution du contrat
- [ ] Notre intérêt légitime

## 4. Destinataires {#4-destinataires}
Vos données sont partagées avec :
- OpenAI Inc. (USA) - Fournisseur IA - [Lien DPA]
- Nos serveurs sécurisés (UE)

## 5. Transferts Internationaux {#5-transferts-internationaux}
Vos données peuvent être transférées vers les États-Unis.
Garanties : Clauses Contractuelles Types (SCCs) et EU-US Data Privacy Framework.

## 6. Durée de Conservation {#6-durée-de-conservation}
- Messages : 30 jours
- Analytics agrégées : 1 an

## 7. Vos Droits {#7-vos-droits}
Vous pouvez :
- Accéder à vos données
- Rectifier vos données
- Demander leur suppression
- Retirer votre consentement
- Vous opposer au traitement

Contact : [email protected]

## 8. Automatisation et Profilage {#8-automatisation-et-profilage}
[Si applicable]
Nous utilisons l'IA pour [scoring, recommandations, etc.].
Vous avez le droit de contester toute décision automatisée.

## 9. Sécurité {#9-sécurité}
Vos données sont protégées par :
- Chiffrement HTTPS/TLS
- Accès restreints
- Audits réguliers

## 10. Contact DPO {#10-contact-dpo}
[Nom], Data Protection Officer
Email : [email protected]

Organismes de référence

France :

Europe :

IA Act :


Formations recommandées

CNIL :

  • MOOC “L’atelier RGPD” (gratuit)
  • Certification DPO

Coursera :

  • “Introduction to GDPR” (Université de Groningen)

Udemy :

  • “RGPD : Devenez expert en protection des données”

Conclusion

Points clés à retenir

RGPD s’applique à toute IA traitant données personnelles UE

Défis majeurs :

  • Droit à l’effacement vs modèles entraînés
  • Transparence vs boîtes noires
  • Transferts hors UE

Solutions :

  • Ne pas entraîner sur données perso (utiliser APIs)
  • Anonymiser systématiquement
  • IA locale pour données sensibles
  • DPA avec tous les fournisseurs
  • Privacy by Design dès la conception

AI Act 2024 :

  • Classification par risque
  • Obligations lourdes pour haut risque (RH, crédit, etc.)
  • Sanctions jusqu’à 7% CA

Secteurs critiques : Santé, finance, RH → IA locale obligatoire


Checklist rapide

Avant de lancer votre IA :

  • DPIA réalisée
  • Base légale identifiée (consentement, contrat, etc.)
  • Données minimisées
  • Anonymisation implémentée
  • DPA signé avec fournisseurs APIs
  • Politique de confidentialité mise à jour
  • Durée de conservation définie
  • Procédure droits des personnes en place
  • Sécurité : chiffrement, accès restreints
  • Formation équipe
  • DPO consulté (si applicable)

Évolutions Attendues

2025-2026 :

  • Application complète AI Act
  • Premières sanctions IA
  • Jurisprudence sur “droit à l’effacement vs LLMs”
  • Standards techniques (ISO pour IA responsable)

Conseils :

  • Rester en veille réglementaire
  • Adopter posture proactive (pas réactive)
  • Privacy = avantage compétitif, pas contrainte

Ressources complémentaires

Articles connexes :

Contact : Pour des questions spécifiques RGPD, consultez un avocat spécialisé ou votre DPO.

Disclaimer : Ce guide est informatif et ne constitue pas un avis juridique. Pour des situations spécifiques, consultez un professionnel du droit.