# AS300 — AI Platform Engineer

> Cursus intensif de 3 mois pour maîtriser Red Hat OpenShift AI (RHOAI), le déploiement de modèles LLM/ML, les pipelines MLOps/LLMOps et les applications GenAI en production.

- **Formation** : AS300
- **Format** : 399 heures / 57 jours ouvrés en classe virtuelle synchrone (100% téléprésentiel direct)
- **Répartition** : 75% cours officiels Red Hat (ILT/VT + labs RHLS) + 25% projet industriel fil rouge (84h)
- **Certification(s)** : Red Hat Certified Specialist in OpenShift AI (EX267)
- **Financement** : Éligible OPCO, subrogation de paiement, abondements régionaux et aides entreprise

---

## Présentation du cursus

Le cursus **AS300 — AI Platform Engineer** est une formation intensive de 399 heures pour maîtriser le déploiement, l'industrialisation et l'exploitation de plateformes d'IA sur Kubernetes et Red Hat OpenShift AI.

> **Méthode :** De l'orchestration de conteneurs jusqu'au serving LLM distribué (vLLM, KServe) et à l'alignement de modèles avec InstructLab.

Ce cursus couvre 8 cours officiels Red Hat (dont AI267 et AI296 spécifiques IA), une phase de préparation à la certification, un projet final de 105 heures sur un cas d'usage GenAI complet, et une soutenance devant jury.

**Première promotion (Hiver 2027) :** **Ada Lovelace** (11 janvier 2027 → 02 avril 2027).

---

## Objectifs de la formation

<div class="my-6 flex flex-col sm:flex-row items-center gap-6 rounded-2xl bg-slate-50 border border-black/5 p-6 not-prose">
  <img src="/images/mascot/chouette-professeur-transparent.png" alt="Pédagogie et objectifs AS300" class="w-24 h-24 object-contain shrink-0 drop-shadow-sm" />
  <div>
    <h4 class="text-lg font-bold text-dark mb-1">Compétences Opérationnelles Visées</h4>
    <p class="text-sm text-black/70 leading-relaxed">Maîtriser la chaîne complète de l'IA d'entreprise sur Kubernetes : déploiement de modèles, pipelines MLOps, LLMOps et sécurité des infrastructures IA.</p>
  </div>
</div>

À l'issue du cursus AS300, vous serez capable de :

- **Maîtriser Red Hat OpenShift AI (RHOAI)** pour le déploiement de modèles IA/ML en production
- **Déployer et servir** des modèles génératifs (LLM via vLLM) et prédictifs (OpenVINO) sur OpenShift
- **Construire des pipelines de données et de modèles** (MLOps/LLMOps) avec Kubeflow Pipelines
- **Concevoir et déployer des applications GenAI** (RAG, agents, guardrails) avec Llama Stack
- **Monitorer des modèles IA** avec TrustyAI (équité, fiabilité, dérive)
- **Entraîner et fine-tuner des LLMs** avec Red Hat Enterprise Linux AI (RHEL AI) et InstructLab
- **Obtenir la certification** Red Hat EX267 (Red Hat Certified Specialist in AI/ML)

---

## Public visé

Ce cursus s'adresse aux profils souhaitant se positionner sur les infrastructures de l'intelligence artificielle :

- **Profils en reconversion technique ou scientifique** (mathématiques, data, physique, ingénierie) voulant maîtriser les plateformes d'IA
- **Étudiants post-graduate et jeunes diplômés** désireux d'acquérir une double compétence recherchée en infrastructure cloud et LLMOps
- **Professionnels de l'IT et développeurs** souhaitant opérer des clusters GPU et industrialiser des modèles d'entreprise
- **Data Engineers et MLOps** voulant déployer, superviser et sécuriser des modèles en production

---

## Prérequis

Pour intégrer l'AS300, vous devez :

1. **Aisance opérationnelle en ligne de commande Linux** : navigation, fichiers et permissions, utilisateurs, processus, édition avec vim/nano et utilisation de `sudo`
2. **Notions élémentaires sur les conteneurs :** l'apprentissage complet d'OpenShift est intégré au cursus
3. **Avoir des notions de base en réseau :** TCP/IP, DNS, HTTP

---

## Programme détaillé

<div class="my-6 flex flex-col sm:flex-row items-center gap-6 rounded-2xl bg-slate-50 border border-black/5 p-6 not-prose">
  <img src="/images/mascot/chouette-musculation-transparent.png" alt="Entraînement intensif 399h" class="w-24 h-24 object-contain shrink-0 drop-shadow-sm" />
  <div>
    <h4 class="text-lg font-bold text-dark mb-1">Programme Intensif — 399 Heures / 57 Jours</h4>
    <p class="text-sm text-black/70 leading-relaxed">Une formation d'élite combinant socle OpenShift d'entreprise, modules avancés RHOAI & GenAI, et un projet fil rouge d'ingénierie de 105 heures.</p>
  </div>
</div>

### Structure globale — 399 heures / 57 jours

<div class="overflow-x-auto rounded-2xl bg-white border border-black/10 shadow-xs my-6 not-prose">
<table class="w-full text-left border-collapse">
  <thead class="bg-gradient-to-r from-primary/10 via-primary/5 to-slate-50 border-b border-black/10">
    <tr>
      <th class="py-3.5 px-4 text-xs font-mono font-bold uppercase tracking-wider text-black/60 text-center w-12">#</th>
      <th class="py-3.5 px-4 text-xs font-mono font-bold uppercase tracking-wider text-black/60 w-24">Cours</th>
      <th class="py-3.5 px-4 text-xs font-mono font-bold uppercase tracking-wider text-black/60">Intitulé du module</th>
      <th class="py-3.5 px-4 text-xs font-mono font-bold uppercase tracking-wider text-black/60 text-right w-24">Jours</th>
      <th class="py-3.5 px-4 text-xs font-mono font-bold uppercase tracking-wider text-black/60 text-right w-24">Heures</th>
    </tr>
  </thead>
  <tbody>
<tr class="border-b border-black/5 hover:bg-primary/[0.02] transition-colors">
  <td class="py-3 px-4 text-xs font-mono font-semibold text-black/50 text-center">00</td>
  <td class="py-3 px-4"><span class="px-2 py-0.5 rounded font-mono font-bold text-xs bg-slate-200 text-slate-800 border border-slate-300">BOOTCAMP</span></td>
  <td class="py-3 px-4 text-sm font-medium text-dark">Bootcamp RHLS + Linux fondamentaux</td>
  <td class="py-3 px-4 text-xs font-mono font-semibold text-black/70 text-right whitespace-nowrap">2 j</td>
  <td class="py-3 px-4 text-xs font-mono font-bold text-primary text-right whitespace-nowrap">14 h</td>
</tr>
<tr class="border-b border-black/5 hover:bg-primary/[0.02] transition-colors">
  <td class="py-3 px-4 text-xs font-mono font-semibold text-black/50 text-center">01</td>
  <td class="py-3 px-4"><span class="px-2 py-0.5 rounded font-mono font-bold text-xs bg-primary/10 text-primary border border-primary/20 shadow-2xs">DO188</span></td>
  <td class="py-3 px-4 text-sm font-medium text-dark">Podman & Containers</td>
  <td class="py-3 px-4 text-xs font-mono font-semibold text-black/70 text-right whitespace-nowrap">3 j</td>
  <td class="py-3 px-4 text-xs font-mono font-bold text-primary text-right whitespace-nowrap">21 h</td>
</tr>
<tr class="border-b border-black/5 hover:bg-primary/[0.02] transition-colors">
  <td class="py-3 px-4 text-xs font-mono font-semibold text-black/50 text-center">02</td>
  <td class="py-3 px-4"><span class="px-2 py-0.5 rounded font-mono font-bold text-xs bg-primary/10 text-primary border border-primary/20 shadow-2xs">DO180</span></td>
  <td class="py-3 px-4 text-sm font-medium text-dark">Kubernetes & OpenShift Basics</td>
  <td class="py-3 px-4 text-xs font-mono font-semibold text-black/70 text-right whitespace-nowrap">5 j</td>
  <td class="py-3 px-4 text-xs font-mono font-bold text-primary text-right whitespace-nowrap">35 h</td>
</tr>
<tr class="border-b border-black/5 hover:bg-primary/[0.02] transition-colors">
  <td class="py-3 px-4 text-xs font-mono font-semibold text-black/50 text-center">03</td>
  <td class="py-3 px-4"><span class="px-2 py-0.5 rounded font-mono font-bold text-xs bg-primary/10 text-primary border border-primary/20 shadow-2xs">DO280</span></td>
  <td class="py-3 px-4 text-sm font-medium text-dark">OpenShift Administration I</td>
  <td class="py-3 px-4 text-xs font-mono font-semibold text-black/70 text-right whitespace-nowrap">5 j</td>
  <td class="py-3 px-4 text-xs font-mono font-bold text-primary text-right whitespace-nowrap">35 h</td>
</tr>
<tr class="border-b border-black/5 hover:bg-primary/[0.02] transition-colors">
  <td class="py-3 px-4 text-xs font-mono font-semibold text-black/50 text-center">04</td>
  <td class="py-3 px-4"><span class="px-2 py-0.5 rounded font-mono font-bold text-xs bg-primary/10 text-primary border border-primary/20 shadow-2xs">DO380</span></td>
  <td class="py-3 px-4 text-sm font-medium text-dark">OpenShift Administration II</td>
  <td class="py-3 px-4 text-xs font-mono font-semibold text-black/70 text-right whitespace-nowrap">5 j</td>
  <td class="py-3 px-4 text-xs font-mono font-bold text-primary text-right whitespace-nowrap">35 h</td>
</tr>
<tr class="border-b border-black/5 hover:bg-primary/[0.02] transition-colors">
  <td class="py-3 px-4 text-xs font-mono font-semibold text-black/50 text-center">05</td>
  <td class="py-3 px-4"><span class="px-2 py-0.5 rounded font-mono font-bold text-xs bg-primary/10 text-primary border border-primary/20 shadow-2xs">DO288</span></td>
  <td class="py-3 px-4 text-sm font-medium text-dark">OpenShift Development</td>
  <td class="py-3 px-4 text-xs font-mono font-semibold text-black/70 text-right whitespace-nowrap">5 j</td>
  <td class="py-3 px-4 text-xs font-mono font-bold text-primary text-right whitespace-nowrap">35 h</td>
</tr>
<tr class="border-b border-black/5 hover:bg-primary/[0.02] transition-colors">
  <td class="py-3 px-4 text-xs font-mono font-semibold text-black/50 text-center">06</td>
  <td class="py-3 px-4"><span class="px-2 py-0.5 rounded font-mono font-bold text-xs bg-primary/10 text-primary border border-primary/20 shadow-2xs">DO322</span></td>
  <td class="py-3 px-4 text-sm font-medium text-dark">OpenShift Installation Lab</td>
  <td class="py-3 px-4 text-xs font-mono font-semibold text-black/70 text-right whitespace-nowrap">2 j</td>
  <td class="py-3 px-4 text-xs font-mono font-bold text-primary text-right whitespace-nowrap">14 h</td>
</tr>
<tr class="border-b border-black/5 hover:bg-primary/[0.02] transition-colors">
  <td class="py-3 px-4 text-xs font-mono font-semibold text-black/50 text-center">07</td>
  <td class="py-3 px-4"><span class="px-2 py-0.5 rounded font-mono font-bold text-xs bg-primary/10 text-primary border border-primary/20 shadow-2xs">AI267</span></td>
  <td class="py-3 px-4 text-sm font-medium text-dark">Red Hat OpenShift AI (RHOAI)</td>
  <td class="py-3 px-4 text-xs font-mono font-semibold text-black/70 text-right whitespace-nowrap">5 j</td>
  <td class="py-3 px-4 text-xs font-mono font-bold text-primary text-right whitespace-nowrap">35 h</td>
</tr>
<tr class="border-b border-black/5 hover:bg-primary/[0.02] transition-colors">
  <td class="py-3 px-4 text-xs font-mono font-semibold text-black/50 text-center">08</td>
  <td class="py-3 px-4"><span class="px-2 py-0.5 rounded font-mono font-bold text-xs bg-primary/10 text-primary border border-primary/20 shadow-2xs">AI296</span></td>
  <td class="py-3 px-4 text-sm font-medium text-dark">GenAI Fundamentals + Granite + RHEL AI</td>
  <td class="py-3 px-4 text-xs font-mono font-semibold text-black/70 text-right whitespace-nowrap">3 j</td>
  <td class="py-3 px-4 text-xs font-mono font-bold text-primary text-right whitespace-nowrap">21 h</td>
</tr>
<tr class="border-b border-black/5 hover:bg-primary/[0.02] transition-colors">
  <td class="py-3 px-4 text-xs font-mono font-semibold text-black/50 text-center">09</td>
  <td class="py-3 px-4"><span class="px-2 py-0.5 rounded font-mono font-bold text-xs bg-amber-500/10 text-amber-800 border border-amber-500/20">PREP</span></td>
  <td class="py-3 px-4 text-sm font-medium text-dark">Préparation intensive à la certification EX267</td>
  <td class="py-3 px-4 text-xs font-mono font-semibold text-black/70 text-right whitespace-nowrap">5 j</td>
  <td class="py-3 px-4 text-xs font-mono font-bold text-primary text-right whitespace-nowrap">35 h</td>
</tr>
<tr class="border-b border-black/5 hover:bg-primary/[0.02] transition-colors">
  <td class="py-3 px-4 text-xs font-mono font-semibold text-black/50 text-center">10</td>
  <td class="py-3 px-4"><span class="px-2 py-0.5 rounded font-mono font-bold text-xs bg-indigo-500/10 text-indigo-700 border border-indigo-500/20">EXAM</span></td>
  <td class="py-3 px-4 text-sm font-medium text-dark">Passage certification officielle Red Hat EX267</td>
  <td class="py-3 px-4 text-xs font-mono font-semibold text-black/70 text-right whitespace-nowrap">1 j</td>
  <td class="py-3 px-4 text-xs font-mono font-bold text-primary text-right whitespace-nowrap">7 h</td>
</tr>
<tr class="border-b border-black/5 hover:bg-primary/[0.02] transition-colors">
  <td class="py-3 px-4 text-xs font-mono font-semibold text-black/50 text-center">11</td>
  <td class="py-3 px-4"><span class="px-2 py-0.5 rounded font-mono font-bold text-xs bg-emerald-500/10 text-emerald-700 border border-emerald-500/20">PROJET</span></td>
  <td class="py-3 px-4 text-sm font-medium text-dark">Projet pratique d'ingénierie IA & MLOps en équipe</td>
  <td class="py-3 px-4 text-xs font-mono font-semibold text-black/70 text-right whitespace-nowrap">15 j</td>
  <td class="py-3 px-4 text-xs font-mono font-bold text-primary text-right whitespace-nowrap">105 h</td>
</tr>
<tr class="border-b border-black/5 hover:bg-primary/[0.02] transition-colors">
  <td class="py-3 px-4 text-xs font-mono font-semibold text-black/50 text-center">12</td>
  <td class="py-3 px-4"><span class="px-2 py-0.5 rounded font-mono font-bold text-xs bg-purple-500/10 text-purple-700 border border-purple-500/20">JURY</span></td>
  <td class="py-3 px-4 text-sm font-medium text-dark">Soutenance devant jury de professionnels</td>
  <td class="py-3 px-4 text-xs font-mono font-semibold text-black/70 text-right whitespace-nowrap">1 j</td>
  <td class="py-3 px-4 text-xs font-mono font-bold text-primary text-right whitespace-nowrap">7 h</td>
</tr>
  </tbody>
  <tfoot class="bg-primary/[0.04] border-t-2 border-primary/20 font-semibold">
    <tr>
      <td colspan="3" class="py-3.5 px-4 text-sm font-bold text-primary">Total cursus</td>
      <td class="py-3.5 px-4 text-xs font-mono font-bold text-primary text-right whitespace-nowrap">57 jours</td>
      <td class="py-3.5 px-4 text-xs font-mono font-bold text-primary text-right whitespace-nowrap">399 heures</td>
    </tr>
  </tfoot>
</table>
</div>

<div class="grid grid-cols-2 sm:grid-cols-4 gap-3 my-6 not-prose">
  <div class="bg-slate-50 border border-black/5 rounded-xl p-3.5 text-center">
    <p class="text-xs font-bold uppercase tracking-wider text-black/50 mb-1">Phase Red Hat (8 cours)</p>
    <p class="text-sm sm:text-base font-bold font-mono text-dark m-0">231h (58%)</p>
  </div>
  <div class="bg-slate-50 border border-black/5 rounded-xl p-3.5 text-center">
    <p class="text-xs font-bold uppercase tracking-wider text-black/50 mb-1">Bootcamp, prépa & jury</p>
    <p class="text-sm sm:text-base font-bold font-mono text-dark m-0">63h (16%)</p>
  </div>
  <div class="bg-slate-50 border border-black/5 rounded-xl p-3.5 text-center">
    <p class="text-xs font-bold uppercase tracking-wider text-black/50 mb-1">Projet d'ingénierie</p>
    <p class="text-sm sm:text-base font-bold font-mono text-emerald-700 m-0">105h (26%)</p>
  </div>
  <div class="bg-primary/5 border border-primary/20 rounded-xl p-3.5 text-center">
    <p class="text-xs font-bold uppercase tracking-wider text-primary mb-1">Ratio Cours / Projet</p>
    <p class="text-sm sm:text-base font-bold font-mono text-primary m-0">74 / 26</p>
  </div>
</div>

---
### Module 0 — Bootcamp RHLS & Fondamentaux Linux (14h / 2 jours)

<div class="module-card my-8 rounded-2xl bg-white border border-black/10 shadow-xs hover:border-primary/40 hover:shadow-sm transition-all overflow-hidden not-prose">
<div class="bg-gradient-to-r from-primary/10 via-primary/5 to-slate-50 px-5 py-4 border-b border-black/10 flex flex-wrap items-center justify-between gap-3">
<div class="flex flex-wrap items-center gap-2.5">
<span class="px-2.5 py-1 rounded-md text-xs font-bold font-mono bg-primary text-white tracking-wide">
MODULE 00
</span>
<span class="px-2.5 py-1 rounded-md text-xs font-bold font-mono bg-white text-primary border border-primary/20 shadow-2xs">Bootcamp</span>
<h4 class="text-base sm:text-lg font-bold text-dark m-0">RHLS & Fondamentaux Linux</h4>
</div>
<span class="inline-flex items-center gap-1.5 text-xs font-bold font-mono text-primary bg-primary/10 px-3 py-1 rounded-full border border-primary/20 shrink-0">⏱️ 14h / 2 jours</span>
</div>
<div class="p-5 sm:p-6 space-y-4">
<div class="bg-primary/[0.03] rounded-xl p-4 border border-primary/10">
<p class="text-xs font-bold uppercase tracking-wider text-primary mb-1 flex items-center gap-1.5">
<span>🎯</span> Objectif pédagogique
</p>
<p class="text-sm text-black/80 m-0 leading-relaxed font-medium">
Naviguer dans le système de fichiers Linux, éditer des fichiers et prendre en main l'environnement de formation Red Hat (RHLS).
</p>
</div>
<div>
<p class="text-xs font-bold uppercase tracking-wider text-black/50 mb-2.5 flex items-center gap-1.5">
<span>📚</span> Programme détaillé par chapitre
</p>
<ul class="grid grid-cols-1 sm:grid-cols-2 gap-2 text-sm">
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Pt.1</span>
<span class="text-xs text-black/80 leading-snug">Prise en main de la plateforme RHLS</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Pt.2</span>
<span class="text-xs text-black/80 leading-snug">Ligne de commande Linux (navigation, manipulation)</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Pt.3</span>
<span class="text-xs text-black/80 leading-snug">Édition de texte (vim/nano)</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Pt.4</span>
<span class="text-xs text-black/80 leading-snug">Gestion des utilisateurs, privilèges (`sudo`) et permissions</span>
</li>
</ul>
</div>
</div>
</div>
</div>

---

### Module 1 — DO188 : Podman & Containers (21h / 3 jours)

<div class="module-card my-8 rounded-2xl bg-white border border-black/10 shadow-xs hover:border-primary/40 hover:shadow-sm transition-all overflow-hidden not-prose">
<div class="bg-gradient-to-r from-primary/10 via-primary/5 to-slate-50 px-5 py-4 border-b border-black/10 flex flex-wrap items-center justify-between gap-3">
<div class="flex flex-wrap items-center gap-2.5">
<span class="px-2.5 py-1 rounded-md text-xs font-bold font-mono bg-primary text-white tracking-wide">
MODULE 01
</span>
<span class="px-2.5 py-1 rounded-md text-xs font-bold font-mono bg-white text-primary border border-primary/20 shadow-2xs">DO188</span>
<h4 class="text-base sm:text-lg font-bold text-dark m-0">Podman & Containers</h4>
</div>
<span class="inline-flex items-center gap-1.5 text-xs font-bold font-mono text-primary bg-primary/10 px-3 py-1 rounded-full border border-primary/20 shrink-0">⏱️ 21h / 3 jours</span>
</div>
<div class="p-5 sm:p-6 space-y-4">
<div class="bg-primary/[0.03] rounded-xl p-4 border border-primary/10">
<p class="text-xs font-bold uppercase tracking-wider text-primary mb-1 flex items-center gap-1.5">
<span>🎯</span> Objectif pédagogique
</p>
<p class="text-sm text-black/80 m-0 leading-relaxed font-medium">
Construire, exécuter et gérer des conteneurs isolés avec Podman, et assurer la persistance des données.
</p>
</div>
<div>
<p class="text-xs font-bold uppercase tracking-wider text-black/50 mb-2.5 flex items-center gap-1.5">
<span>📚</span> Programme détaillé par chapitre
</p>
<ul class="grid grid-cols-1 sm:grid-cols-2 gap-2 text-sm">
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Ch.1</span>
<span class="text-xs text-black/80 leading-snug">Introduction et vue d'ensemble des conteneurs</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Ch.2</span>
<span class="text-xs text-black/80 leading-snug">Bases de Podman : gérer et exécuter des conteneurs</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Ch.3</span>
<span class="text-xs text-black/80 leading-snug">Images de conteneurs : naviguer dans les registres</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Ch.4</span>
<span class="text-xs text-black/80 leading-snug">Images personnalisées : construire avec Containerfile</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Ch.5</span>
<span class="text-xs text-black/80 leading-snug">Persistance des données : conteneurs de bases de données</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Ch.6</span>
<span class="text-xs text-black/80 leading-snug">Dépannage des conteneurs : journaux et débogueur distant</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Ch.7</span>
<span class="text-xs text-black/80 leading-snug">Applications multi-conteneurs avec Podman Compose</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Ch.8</span>
<span class="text-xs text-black/80 leading-snug">Orchestration K8s/OpenShift</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Ch.9</span>
<span class="text-xs text-black/80 leading-snug">Révision complète (Compreview)</span>
</li>
</ul>
</div>
</div>
</div>
</div>

---

### Module 2 — DO180 : Kubernetes & OpenShift Basics (35h / 5 jours)

<div class="module-card my-8 rounded-2xl bg-white border border-black/10 shadow-xs hover:border-primary/40 hover:shadow-sm transition-all overflow-hidden not-prose">
<div class="bg-gradient-to-r from-primary/10 via-primary/5 to-slate-50 px-5 py-4 border-b border-black/10 flex flex-wrap items-center justify-between gap-3">
<div class="flex flex-wrap items-center gap-2.5">
<span class="px-2.5 py-1 rounded-md text-xs font-bold font-mono bg-primary text-white tracking-wide">
MODULE 02
</span>
<span class="px-2.5 py-1 rounded-md text-xs font-bold font-mono bg-white text-primary border border-primary/20 shadow-2xs">DO180</span>
<h4 class="text-base sm:text-lg font-bold text-dark m-0">Kubernetes & OpenShift Basics</h4>
</div>
<span class="inline-flex items-center gap-1.5 text-xs font-bold font-mono text-primary bg-primary/10 px-3 py-1 rounded-full border border-primary/20 shrink-0">⏱️ 35h / 5 jours</span>
</div>
<div class="p-5 sm:p-6 space-y-4">
<div class="bg-primary/[0.03] rounded-xl p-4 border border-primary/10">
<p class="text-xs font-bold uppercase tracking-wider text-primary mb-1 flex items-center gap-1.5">
<span>🎯</span> Objectif pédagogique
</p>
<p class="text-sm text-black/80 m-0 leading-relaxed font-medium">
Déployer, gérer et dépanner des applications conteneurisées sur un cluster OpenShift.
</p>
</div>
<div>
<p class="text-xs font-bold uppercase tracking-wider text-black/50 mb-2.5 flex items-center gap-1.5">
<span>📚</span> Programme détaillé par chapitre
</p>
<ul class="grid grid-cols-1 sm:grid-cols-2 gap-2 text-sm">
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Ch.1</span>
<span class="text-xs text-black/80 leading-snug">Introduction à Kubernetes et OpenShift : identifier les services principaux et surveiller</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Ch.2</span>
<span class="text-xs text-black/80 leading-snug">CLI et APIs : accéder à OpenShift et interroger les ressources API</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Ch.3</span>
<span class="text-xs text-black/80 leading-snug">Conteneurs et pods : exécuter et dépanner des apps en tant que pods</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Ch.4</span>
<span class="text-xs text-black/80 leading-snug">Applications managées et en réseau : déployer et exposer au réseau</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Ch.5</span>
<span class="text-xs text-black/80 leading-snug">Stockage et configuration : volumes persistants et gestion des secrets</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Ch.6</span>
<span class="text-xs text-black/80 leading-snug">Fiabilité : haute disponibilité avec liveness/readiness probes</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Ch.7</span>
<span class="text-xs text-black/80 leading-snug">Mises à jour applicatives : updates reproductibles et rollbacks</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Ch.8</span>
<span class="text-xs text-black/80 leading-snug">Révision complète (Compreview)</span>
</li>
</ul>
</div>
</div>
</div>
</div>

---

### Module 3 — DO280 : OpenShift Administration I (35h / 5 jours)

<div class="module-card my-8 rounded-2xl bg-white border border-black/10 shadow-xs hover:border-primary/40 hover:shadow-sm transition-all overflow-hidden not-prose">
<div class="bg-gradient-to-r from-primary/10 via-primary/5 to-slate-50 px-5 py-4 border-b border-black/10 flex flex-wrap items-center justify-between gap-3">
<div class="flex flex-wrap items-center gap-2.5">
<span class="px-2.5 py-1 rounded-md text-xs font-bold font-mono bg-primary text-white tracking-wide">
MODULE 03
</span>
<span class="px-2.5 py-1 rounded-md text-xs font-bold font-mono bg-white text-primary border border-primary/20 shadow-2xs">DO280</span>
<h4 class="text-base sm:text-lg font-bold text-dark m-0">OpenShift Administration I</h4>
</div>
<span class="inline-flex items-center gap-1.5 text-xs font-bold font-mono text-primary bg-primary/10 px-3 py-1 rounded-full border border-primary/20 shrink-0">⏱️ 35h / 5 jours</span>
</div>
<div class="p-5 sm:p-6 space-y-4">
<div class="bg-primary/[0.03] rounded-xl p-4 border border-primary/10">
<p class="text-xs font-bold uppercase tracking-wider text-primary mb-1 flex items-center gap-1.5">
<span>🎯</span> Objectif pédagogique
</p>
<p class="text-sm text-black/80 m-0 leading-relaxed font-medium">
Configurer et administrer les composants vitaux d'un cluster OpenShift.
</p>
</div>
<div>
<p class="text-xs font-bold uppercase tracking-wider text-black/50 mb-2.5 flex items-center gap-1.5">
<span>📚</span> Programme détaillé par chapitre
</p>
<ul class="grid grid-cols-1 sm:grid-cols-2 gap-2 text-sm">
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Ch.1</span>
<span class="text-xs text-black/80 leading-snug">Gestion déclarative des ressources (YAML/Kustomize)</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Ch.2</span>
<span class="text-xs text-black/80 leading-snug">Applications packagées (Helm)</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Ch.3</span>
<span class="text-xs text-black/80 leading-snug">Authentification et autorisation (RBAC/HTPasswd)</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Ch.4</span>
<span class="text-xs text-black/80 leading-snug">Sécurité réseau (NetworkPolicies)</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Ch.5</span>
<span class="text-xs text-black/80 leading-snug">Exposition d'applications non-HTTP/SNI</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Ch.6</span>
<span class="text-xs text-black/80 leading-snug">Self-service développeur par équipe</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Ch.7</span>
<span class="text-xs text-black/80 leading-snug">Gestion des opérateurs (OLM)</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Ch.8</span>
<span class="text-xs text-black/80 leading-snug">Sécurité applicative (SCC)</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Ch.9</span>
<span class="text-xs text-black/80 leading-snug">Mises à jour du cluster</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Ch.10</span>
<span class="text-xs text-black/80 leading-snug">Révision complète (Compreview)</span>
</li>
</ul>
</div>
</div>
</div>
</div>

---

### Module 4 — DO380 : OpenShift Administration II (35h / 5 jours)

<div class="module-card my-8 rounded-2xl bg-white border border-black/10 shadow-xs hover:border-primary/40 hover:shadow-sm transition-all overflow-hidden not-prose">
<div class="bg-gradient-to-r from-primary/10 via-primary/5 to-slate-50 px-5 py-4 border-b border-black/10 flex flex-wrap items-center justify-between gap-3">
<div class="flex flex-wrap items-center gap-2.5">
<span class="px-2.5 py-1 rounded-md text-xs font-bold font-mono bg-primary text-white tracking-wide">
MODULE 04
</span>
<span class="px-2.5 py-1 rounded-md text-xs font-bold font-mono bg-white text-primary border border-primary/20 shadow-2xs">DO380</span>
<h4 class="text-base sm:text-lg font-bold text-dark m-0">OpenShift Administration II</h4>
</div>
<span class="inline-flex items-center gap-1.5 text-xs font-bold font-mono text-primary bg-primary/10 px-3 py-1 rounded-full border border-primary/20 shrink-0">⏱️ 35h / 5 jours</span>
</div>
<div class="p-5 sm:p-6 space-y-4">
<div class="bg-primary/[0.03] rounded-xl p-4 border border-primary/10">
<p class="text-xs font-bold uppercase tracking-wider text-primary mb-1 flex items-center gap-1.5">
<span>🎯</span> Objectif pédagogique
</p>
<p class="text-sm text-black/80 m-0 leading-relaxed font-medium">
Automatiser les opérations "Jour 2" et configurer le monitoring.
</p>
</div>
<div>
<p class="text-xs font-bold uppercase tracking-wider text-black/50 mb-2.5 flex items-center gap-1.5">
<span>📚</span> Programme détaillé par chapitre
</p>
<ul class="grid grid-cols-1 sm:grid-cols-2 gap-2 text-sm">
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Ch.1</span>
<span class="text-xs text-black/80 leading-snug">Identity Management (LDAP/OIDC)</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Ch.2</span>
<span class="text-xs text-black/80 leading-snug">Sauvegarde et restauration (OADP)</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Ch.3</span>
<span class="text-xs text-black/80 leading-snug">Pod Scheduling</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Ch.4</span>
<span class="text-xs text-black/80 leading-snug">OpenShift GitOps (ArgoCD)</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Ch.5</span>
<span class="text-xs text-black/80 leading-snug">Supervision OpenShift (Prometheus/Grafana)</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Ch.6</span>
<span class="text-xs text-black/80 leading-snug">Journalisation (Logging stack)</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Ch.7</span>
<span class="text-xs text-black/80 leading-snug">Partitionnement du cluster</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Ch.8</span>
<span class="text-xs text-black/80 leading-snug">Révision complète (Compreview)</span>
</li>
</ul>
</div>
</div>
</div>
</div>

---

### Module 5 — DO288 : OpenShift Development (35h / 5 jours)

<div class="module-card my-8 rounded-2xl bg-white border border-black/10 shadow-xs hover:border-primary/40 hover:shadow-sm transition-all overflow-hidden not-prose">
<div class="bg-gradient-to-r from-primary/10 via-primary/5 to-slate-50 px-5 py-4 border-b border-black/10 flex flex-wrap items-center justify-between gap-3">
<div class="flex flex-wrap items-center gap-2.5">
<span class="px-2.5 py-1 rounded-md text-xs font-bold font-mono bg-primary text-white tracking-wide">
MODULE 05
</span>
<span class="px-2.5 py-1 rounded-md text-xs font-bold font-mono bg-white text-primary border border-primary/20 shadow-2xs">DO288</span>
<h4 class="text-base sm:text-lg font-bold text-dark m-0">OpenShift Development</h4>
</div>
<span class="inline-flex items-center gap-1.5 text-xs font-bold font-mono text-primary bg-primary/10 px-3 py-1 rounded-full border border-primary/20 shrink-0">⏱️ 35h / 5 jours</span>
</div>
<div class="p-5 sm:p-6 space-y-4">
<div class="bg-primary/[0.03] rounded-xl p-4 border border-primary/10">
<p class="text-xs font-bold uppercase tracking-wider text-primary mb-1 flex items-center gap-1.5">
<span>🎯</span> Objectif pédagogique
</p>
<p class="text-sm text-black/80 m-0 leading-relaxed font-medium">
Concevoir, construire et déployer des applications cloud-natives sur OpenShift.
</p>
</div>
<div>
<p class="text-xs font-bold uppercase tracking-wider text-black/50 mb-2.5 flex items-center gap-1.5">
<span>📚</span> Programme détaillé par chapitre
</p>
<ul class="grid grid-cols-1 sm:grid-cols-2 gap-2 text-sm">
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Ch.1</span>
<span class="text-xs text-black/80 leading-snug">OpenShift pour les développeurs : architecture et environnement</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Ch.2</span>
<span class="text-xs text-black/80 leading-snug">Déploiement d'applications simples</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Ch.3</span>
<span class="text-xs text-black/80 leading-snug">Construction et publication d'images de conteneurs</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Ch.4</span>
<span class="text-xs text-black/80 leading-snug">Gestion des builds OpenShift</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Ch.5</span>
<span class="text-xs text-black/80 leading-snug">Stratégies de déploiement et monitoring de la santé</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Ch.6</span>
<span class="text-xs text-black/80 leading-snug">Applications multi-conteneurs (Templates, Helm, Kustomize)</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Ch.7</span>
<span class="text-xs text-black/80 leading-snug">Déploiement continu avec OpenShift Pipelines (Tekton)</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Ch.8</span>
<span class="text-xs text-black/80 leading-snug">Comprehensive Review</span>
</li>
</ul>
</div>
</div>
</div>
</div>

---

### Module 6 — DO322 : OpenShift Installation Lab (14h / 2 jours)

<div class="module-card my-8 rounded-2xl bg-white border border-black/10 shadow-xs hover:border-primary/40 hover:shadow-sm transition-all overflow-hidden not-prose">
<div class="bg-gradient-to-r from-primary/10 via-primary/5 to-slate-50 px-5 py-4 border-b border-black/10 flex flex-wrap items-center justify-between gap-3">
<div class="flex flex-wrap items-center gap-2.5">
<span class="px-2.5 py-1 rounded-md text-xs font-bold font-mono bg-primary text-white tracking-wide">
MODULE 06
</span>
<span class="px-2.5 py-1 rounded-md text-xs font-bold font-mono bg-white text-primary border border-primary/20 shadow-2xs">DO322</span>
<h4 class="text-base sm:text-lg font-bold text-dark m-0">OpenShift Installation Lab</h4>
</div>
<span class="inline-flex items-center gap-1.5 text-xs font-bold font-mono text-primary bg-primary/10 px-3 py-1 rounded-full border border-primary/20 shrink-0">⏱️ 14h / 2 jours</span>
</div>
<div class="p-5 sm:p-6 space-y-4">
<div class="bg-primary/[0.03] rounded-xl p-4 border border-primary/10">
<p class="text-xs font-bold uppercase tracking-wider text-primary mb-1 flex items-center gap-1.5">
<span>🎯</span> Objectif pédagogique
</p>
<p class="text-sm text-black/80 m-0 leading-relaxed font-medium">
Planifier et exécuter l'installation automatisée d'un cluster OpenShift complet.
</p>
</div>
<div>
<p class="text-xs font-bold uppercase tracking-wider text-black/50 mb-2.5 flex items-center gap-1.5">
<span>📚</span> Programme détaillé par chapitre
</p>
<ul class="grid grid-cols-1 sm:grid-cols-2 gap-2 text-sm">
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Pt.1</span>
<span class="text-xs text-black/80 leading-snug">Installation IPI et UPI, sur cloud provider et environnement virtualisé, validation post-installation</span>
</li>
</ul>
</div>
</div>
</div>
</div>

---

### Module 7 — AI267 : Red Hat OpenShift AI — RHOAI (35h / 5 jours)

<div class="module-card my-8 rounded-2xl bg-white border border-black/10 shadow-xs hover:border-primary/40 hover:shadow-sm transition-all overflow-hidden not-prose">
<div class="bg-gradient-to-r from-primary/10 via-primary/5 to-slate-50 px-5 py-4 border-b border-black/10 flex flex-wrap items-center justify-between gap-3">
<div class="flex flex-wrap items-center gap-2.5">
<span class="px-2.5 py-1 rounded-md text-xs font-bold font-mono bg-primary text-white tracking-wide">
MODULE 07
</span>
<span class="px-2.5 py-1 rounded-md text-xs font-bold font-mono bg-white text-primary border border-primary/20 shadow-2xs">AI267</span>
<h4 class="text-base sm:text-lg font-bold text-dark m-0">Red Hat OpenShift AI — RHOAI</h4>
</div>
<span class="inline-flex items-center gap-1.5 text-xs font-bold font-mono text-primary bg-primary/10 px-3 py-1 rounded-full border border-primary/20 shrink-0">⏱️ 35h / 5 jours</span>
</div>
<div class="p-5 sm:p-6 space-y-4">
<div class="bg-primary/[0.03] rounded-xl p-4 border border-primary/10">
<p class="text-xs font-bold uppercase tracking-wider text-primary mb-1 flex items-center gap-1.5">
<span>🎯</span> Objectif pédagogique
</p>
<p class="text-sm text-black/80 m-0 leading-relaxed font-medium">
Déployer des environnements IA, construire des pipelines de données et servir des modèles MLOps/LLMOps.
</p>
</div>
<div>
<p class="text-xs font-bold uppercase tracking-wider text-black/50 mb-2.5 flex items-center gap-1.5">
<span>📚</span> Programme détaillé par chapitre
</p>
<ul class="grid grid-cols-1 sm:grid-cols-2 gap-2 text-sm">
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Ch.1</span>
<span class="text-xs text-black/80 leading-snug">Introduction à RHOAI : plateforme de construction, déploiement et surveillance de modèles IA</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Ch.2</span>
<span class="text-xs text-black/80 leading-snug">Workbenches Jupyter : créer et gérer des environnements de développement IA/ML</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Ch.3</span>
<span class="text-xs text-black/80 leading-snug">Fondamentaux du service de modèles (KServe) : modes de déploiement, routes, ressources</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Ch.4</span>
<span class="text-xs text-black/80 leading-snug">Service de modèles génératifs (LLM via vLLM) et prédictifs (OpenVINO)</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Ch.5</span>
<span class="text-xs text-black/80 leading-snug">Supervision des modèles avec TrustyAI : fiabilité, équité, métriques de dérive</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Ch.6</span>
<span class="text-xs text-black/80 leading-snug">Introduction aux pipelines de Data Science (Kubeflow) : automatiser les workflows IA/ML</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Ch.7</span>
<span class="text-xs text-black/80 leading-snug">Développement avancé de pipelines Kubeflow : composants conteneurisés, artefacts, expérimentations</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Ch.8</span>
<span class="text-xs text-black/80 leading-snug">Sélection, optimisation et évaluation de LLMs : catalogue RHOAI, Red Hat AI repository</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Ch.9</span>
<span class="text-xs text-black/80 leading-snug">Construction d'applications GenAI : RAG, agents, Llama Stack</span>
</li>
</ul>
</div>
</div>
</div>
</div>

---

### Module 8 — AI296 : GenAI Fundamentals + Granite + RHEL AI (21h / 3 jours)

<div class="flex flex-col sm:flex-row items-center gap-6 my-6 p-6 bg-theme-light rounded-2xl border border-black/5 not-prose">
<img src="/images/mascot/chouette-ampoule-transparent.png" alt="GenAI & Alignement InstructLab" class="w-24 h-24 object-contain shrink-0 drop-shadow-sm" />
<div>
<h4 class="text-base font-bold text-dark mb-1">L'IA Générative et l'Alignement Open Source</h4>
<p class="text-sm text-black/70 leading-relaxed">
</div>
</div>
<div class="module-card my-8 rounded-2xl bg-white border border-black/10 shadow-xs hover:border-primary/40 hover:shadow-sm transition-all overflow-hidden not-prose">
<div class="bg-gradient-to-r from-primary/10 via-primary/5 to-slate-50 px-5 py-4 border-b border-black/10 flex flex-wrap items-center justify-between gap-3">
<div class="flex flex-wrap items-center gap-2.5">
<span class="px-2.5 py-1 rounded-md text-xs font-bold font-mono bg-primary text-white tracking-wide">
MODULE 08
</span>
<span class="px-2.5 py-1 rounded-md text-xs font-bold font-mono bg-white text-primary border border-primary/20 shadow-2xs">AI296</span>
<h4 class="text-base sm:text-lg font-bold text-dark m-0">GenAI Fundamentals + Granite + RHEL AI</h4>
</div>
<span class="inline-flex items-center gap-1.5 text-xs font-bold font-mono text-primary bg-primary/10 px-3 py-1 rounded-full border border-primary/20 shrink-0">⏱️ 21h / 3 jours</span>
</div>
<div class="p-5 sm:p-6 space-y-4">
<div class="bg-primary/[0.03] rounded-xl p-4 border border-primary/10">
<p class="text-xs font-bold uppercase tracking-wider text-primary mb-1 flex items-center gap-1.5">
<span>🎯</span> Objectif pédagogique
</p>
<p class="text-sm text-black/80 m-0 leading-relaxed font-medium">
Entraîner, optimiser et évaluer des modèles de langage (LLMs) à l'aide des outils Red Hat.
</p>
</div>
<div>
<p class="text-xs font-bold uppercase tracking-wider text-black/50 mb-2.5 flex items-center gap-1.5">
<span>📚</span> Programme détaillé par chapitre
</p>
<ul class="grid grid-cols-1 sm:grid-cols-2 gap-2 text-sm">
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Ch.1</span>
<span class="text-xs text-black/80 leading-snug">Fondamentaux de l'IA Générative : cas d'usage, limites, modèles de fondation, stratégies d'adaptation</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Ch.2</span>
<span class="text-xs text-black/80 leading-snug">Modèles Granite pour l'entreprise : positionnement, évaluation de l'adéquation aux cas d'usage</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Ch.3</span>
<span class="text-xs text-black/80 leading-snug">Entraînement de LLMs avec Red Hat Enterprise Linux AI (RHEL AI) : InstructLab, fine-tuning, génération de données synthétiques</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Ch.4</span>
<span class="text-xs text-black/80 leading-snug">Déploiement de modèles avec RHEL AI : vLLM comme runtime d'inférence, release de modèles</span>
</li>
</ul>
</div>
</div>
</div>
</div>

---

### Module 9 — Préparation à la certification (35h / 5 jours)

<div class="module-card my-8 rounded-2xl bg-white border border-black/10 shadow-xs hover:border-primary/40 hover:shadow-sm transition-all overflow-hidden not-prose">
<div class="bg-gradient-to-r from-primary/10 via-primary/5 to-slate-50 px-5 py-4 border-b border-black/10 flex flex-wrap items-center justify-between gap-3">
<div class="flex flex-wrap items-center gap-2.5">
<span class="px-2.5 py-1 rounded-md text-xs font-bold font-mono bg-primary text-white tracking-wide">
MODULE 09
</span>
<span class="px-2.5 py-1 rounded-md text-xs font-bold font-mono bg-white text-primary border border-primary/20 shadow-2xs">EX267 PREP</span>
<h4 class="text-base sm:text-lg font-bold text-dark m-0">Préparation à la certification Red Hat EX267</h4>
</div>
<span class="inline-flex items-center gap-1.5 text-xs font-bold font-mono text-primary bg-primary/10 px-3 py-1 rounded-full border border-primary/20 shrink-0">⏱️ 35h / 5 jours</span>
</div>
<div class="p-5 sm:p-6 space-y-4">
<div class="bg-primary/[0.03] rounded-xl p-4 border border-primary/10">
<p class="text-xs font-bold uppercase tracking-wider text-primary mb-1 flex items-center gap-1.5">
<span>🎯</span> Objectif pédagogique
</p>
<p class="text-sm text-black/80 m-0 leading-relaxed font-medium">
Consolider les acquis techniques et se préparer aux conditions réelles de passage de l'examen officiel Red Hat EX267 (Red Hat Certified Specialist in AI/ML).
</p>
</div>
<div>
<p class="text-xs font-bold uppercase tracking-wider text-black/50 mb-2.5 flex items-center gap-1.5">
<span>📚</span> Programme détaillé par chapitre
</p>
<ul class="grid grid-cols-1 sm:grid-cols-2 gap-2 text-sm">
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Pt.1</span>
<span class="text-xs text-black/80 leading-snug">Révisions intensives ciblées sur les objectifs de l'examen EX267 (RHOAI, Model Serving, Pipelines)</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Pt.2</span>
<span class="text-xs text-black/80 leading-snug">Ateliers pratiques de troubleshooting et remédiation d'incidents IA sous pression</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Pt.3</span>
<span class="text-xs text-black/80 leading-snug">Examens blancs en temps limité avec contraintes réelles (sans accès internet externe)</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Pt.4</span>
<span class="text-xs text-black/80 leading-snug">Débriefing individuel et renforcement personnalisé sur les points de fragilité</span>
</li>
</ul>
</div>
</div>
</div>
</div>

---

### Module 10 — Passage certifications (7h / 1 jour)

<div class="module-card my-8 rounded-2xl bg-white border border-black/10 shadow-xs hover:border-primary/40 hover:shadow-sm transition-all overflow-hidden not-prose">
<div class="bg-gradient-to-r from-primary/10 via-primary/5 to-slate-50 px-5 py-4 border-b border-black/10 flex flex-wrap items-center justify-between gap-3">
<div class="flex flex-wrap items-center gap-2.5">
<span class="px-2.5 py-1 rounded-md text-xs font-bold font-mono bg-primary text-white tracking-wide">
MODULE 10
</span>
<span class="px-2.5 py-1 rounded-md text-xs font-bold font-mono bg-white text-primary border border-primary/20 shadow-2xs">EX267</span>
<h4 class="text-base sm:text-lg font-bold text-dark m-0">Passage de l'examen officiel Red Hat EX267</h4>
</div>
<span class="inline-flex items-center gap-1.5 text-xs font-bold font-mono text-primary bg-primary/10 px-3 py-1 rounded-full border border-primary/20 shrink-0">⏱️ 7h / 1 jour</span>
</div>
<div class="p-5 sm:p-6 space-y-4">
<div class="bg-primary/[0.03] rounded-xl p-4 border border-primary/10">
<p class="text-xs font-bold uppercase tracking-wider text-primary mb-1 flex items-center gap-1.5">
<span>🎯</span> Objectif pédagogique
</p>
<p class="text-sm text-black/80 m-0 leading-relaxed font-medium">
Valider officiellement les compétences acquises en obtenant la certification Red Hat Certified Specialist in AI/ML (EX267).
</p>
</div>
</div>
</div>
</div>

---

### Module 11 — Projet final (105h / 15 jours)

<div class="my-6 flex flex-col sm:flex-row items-center gap-6 rounded-2xl bg-slate-50 border border-black/5 p-6 not-prose">
  <img src="/images/mascot/chouette-mecanicien-transparent.png" alt="Projet d'ingénierie pratique IA & MLOps" class="w-24 h-24 object-contain shrink-0 drop-shadow-sm" />
  <div>
    <h4 class="text-lg font-bold text-dark mb-1">Projet Pratique d'Ingénierie IA & Rituels Agiles</h4>
    <p class="text-sm text-black/70 leading-relaxed">Mise en pratique en conditions réelles : cadrage d'architecture IA, déploiement OpenShift AI, pipelines MLOps/LLMOps et soutenance devant jury.</p>
  </div>
</div>

<div class="module-card my-8 rounded-2xl bg-white border border-black/10 shadow-xs hover:border-primary/40 hover:shadow-sm transition-all overflow-hidden not-prose">
<div class="bg-gradient-to-r from-primary/10 via-primary/5 to-slate-50 px-5 py-4 border-b border-black/10 flex flex-wrap items-center justify-between gap-3">
<div class="flex flex-wrap items-center gap-2.5">
<span class="px-2.5 py-1 rounded-md text-xs font-bold font-mono bg-primary text-white tracking-wide">
MODULE 11
</span>
<span class="px-2.5 py-1 rounded-md text-xs font-bold font-mono bg-white text-primary border border-primary/20 shadow-2xs">PROJET</span>
<h4 class="text-base sm:text-lg font-bold text-dark m-0">Projet pratique d'ingénierie IA & MLOps en équipe</h4>
</div>
<span class="inline-flex items-center gap-1.5 text-xs font-bold font-mono text-primary bg-primary/10 px-3 py-1 rounded-full border border-primary/20 shrink-0">⏱️ 105h / 15 jours</span>
</div>
<div class="p-5 sm:p-6 space-y-4">
<div class="bg-primary/[0.03] rounded-xl p-4 border border-primary/10">
<p class="text-xs font-bold uppercase tracking-wider text-primary mb-1 flex items-center gap-1.5">
<span>🎯</span> Objectif pédagogique
</p>
<p class="text-sm text-black/80 m-0 leading-relaxed font-medium">
Concevoir, déployer, sécuriser et exploiter une plateforme IA/ML complète sur OpenShift AI (RHOAI) hébergeant des pipelines MLOps, du serving de LLM (vLLM) et des applications RAG intelligentes.
</p>
</div>
<div>
<p class="text-xs font-bold uppercase tracking-wider text-black/50 mb-2.5 flex items-center gap-1.5">
<span>📚</span> Déroulement par phase & sprints
</p>
<ul class="grid grid-cols-1 sm:grid-cols-2 gap-2 text-sm">
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">J1–J3</span>
<span class="text-xs text-black/80 leading-snug"><strong>Setup & Cadrage :</strong> Constitution des équipes, initialisation GitOps, provisioning OpenShift, déploiement RHOAI & outillage</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">J4–J6</span>
<span class="text-xs text-black/80 leading-snug"><strong>Sprint 1 :</strong> Ingestion/préparation des données, entraînement/fine-tuning (Workbenches) et pipelines Kubeflow</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">J7–J9</span>
<span class="text-xs text-black/80 leading-snug"><strong>Sprint 2 :</strong> Model Serving (vLLM, OpenVINO, KServe), intégration applicative (RAG, Agents) et chaîne d'inférence</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">J10–J11</span>
<span class="text-xs text-black/80 leading-snug"><strong>Sprint 3 :</strong> Monitoring IA (TrustyAI), garde-fous éthiques, observabilité et sécurisation des endpoints</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">J12–J14</span>
<span class="text-xs text-black/80 leading-snug"><strong>Finalisation :</strong> Livrables documentaires, Code Freeze et dry-run des soutenances orales</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">J15</span>
<span class="text-xs text-black/80 leading-snug"><strong>Préparation finale :</strong> Répétitions et alignement final avant passage devant le jury</span>
</li>
</ul>
</div>
</div>
</div>
</div>

---

### Module 12 — Jury & Validation (7h / 1 jour par groupe)

<div class="module-card my-8 rounded-2xl bg-white border border-black/10 shadow-xs hover:border-primary/40 hover:shadow-sm transition-all overflow-hidden not-prose">
<div class="bg-gradient-to-r from-primary/10 via-primary/5 to-slate-50 px-5 py-4 border-b border-black/10 flex flex-wrap items-center justify-between gap-3">
<div class="flex flex-wrap items-center gap-2.5">
<span class="px-2.5 py-1 rounded-md text-xs font-bold font-mono bg-primary text-white tracking-wide">
MODULE 12
</span>
<span class="px-2.5 py-1 rounded-md text-xs font-bold font-mono bg-white text-primary border border-primary/20 shadow-2xs">JURY</span>
<h4 class="text-base sm:text-lg font-bold text-dark m-0">Soutenance devant jury de professionnels</h4>
</div>
<span class="inline-flex items-center gap-1.5 text-xs font-bold font-mono text-primary bg-primary/10 px-3 py-1 rounded-full border border-primary/20 shrink-0">⏱️ 7h / 1 jour par groupe</span>
</div>
<div class="p-5 sm:p-6 space-y-4">
<div class="bg-primary/[0.03] rounded-xl p-4 border border-primary/10">
<p class="text-xs font-bold uppercase tracking-wider text-primary mb-1 flex items-center gap-1.5">
<span>🎯</span> Objectif pédagogique
</p>
<p class="text-sm text-black/80 m-0 leading-relaxed font-medium">
Démontrer l'acquisition globale des compétences d'ingénierie de plateforme IA lors d'une soutenance professionnelle en conditions réelles.
</p>
</div>
<div>
<p class="text-xs font-bold uppercase tracking-wider text-black/50 mb-2.5 flex items-center gap-1.5">
<span>📚</span> Déroulement de la soutenance
</p>
<ul class="grid grid-cols-1 sm:grid-cols-2 gap-2 text-sm">
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Phase 1</span>
<span class="text-xs text-black/80 leading-snug">Présentation de l'architecture IA, des choix techniques et des pipelines MLOps</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Phase 2</span>
<span class="text-xs text-black/80 leading-snug">Démonstration live fonctionnelle : inférence temps réel, modèle fine-tuné et garde-fous TrustyAI</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Phase 3</span>
<span class="text-xs text-black/80 leading-snug">Session approfondie de Questions / Réponses avec le jury d'experts</span>
</li>
<li class="flex items-start gap-2 bg-slate-50/80 p-2.5 rounded-lg border border-black/5">
<span class="text-primary font-bold font-mono text-xs shrink-0 mt-0.5 bg-primary/10 px-1.5 py-0.5 rounded">Phase 4</span>
<span class="text-xs text-black/80 leading-snug">Délibération du jury, débriefing collectif et communication des résultats</span>
</li>
</ul>
</div>
</div>
</div>
</div>

---

## Indicateurs de résultats & Engagements de performance

> **Organisme en lancement :** Conformément à la réglementation de la formation professionnelle, Aperta Scientia est un organisme nouvellement déclaré (NDA `11 78 89002 78`). Les données statistiques consolidées seront publiées dès la fin de la première promotion.

| Indicateur de Performance | Objectif cible 2027 | Modalité de recueil |
| :--- | :---: | :--- |
| **Taux d'assiduité / complétion** | **≥ 90 %** | Émargement dématérialisé Edusign (399h) |
| **Satisfaction globale des apprenants** | **≥ 85 %** | Enquête à chaud de fin de cursus |
| **Satisfaction des entreprises** | **≥ 85 %** | Enquête tuteurs & commanditaires |
| **Réussite aux certifications Red Hat** | **≥ 75 %** | Examens officiels Red Hat |
| **Insertion professionnelle à 6 mois** | **≥ 80 %** | Enquête de suivi d'insertion à froid |
| **Taux d'abandon** | **≤ 5 %** | Suivi et prévention des décrochages |

---

*Source officielle : https://aperta.io/fr/curriculums/as300/ — Aperta Scientia*
