305 lines
12 KiB
Plaintext
305 lines
12 KiB
Plaintext
{
|
||
"cells": [
|
||
{
|
||
"cell_type": "markdown",
|
||
"id": "cell-0",
|
||
"metadata": {},
|
||
"source": [
|
||
"# L'Intelligence Artificielle — Culture générale et enjeux"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"id": "cell-1",
|
||
"metadata": {},
|
||
"source": [
|
||
"Durée : 1h<br>\n",
|
||
"Objectifs : Comprendre ce qu'est un LLM, ses enjeux éthiques et environnementaux, faire le lien avec les algorithmes vus en cours<br>\n",
|
||
"Niveau : Première NSI<br>\n",
|
||
"Prérequis : Notions de probabilités (maths)"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"id": "cell-2",
|
||
"metadata": {},
|
||
"source": [
|
||
"---\n",
|
||
"\n",
|
||
"## Table des matières\n",
|
||
"\n",
|
||
"1. Qu'est-ce qu'un LLM ?\n",
|
||
"2. Comment ça apprend ?\n",
|
||
"3. Enjeux et questions à se poser\n",
|
||
"4. Et en NSI, ça donne quoi ?"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"id": "cell-3",
|
||
"metadata": {},
|
||
"source": [
|
||
"---\n",
|
||
"\n",
|
||
"## 1. Qu'est-ce qu'un LLM ?"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"id": "cell-4",
|
||
"metadata": {},
|
||
"source": "Vous utilisez peut-être ChatGPT, Gemini ou Copilot. Ces outils reposent tous sur un **LLM** — *Large Language Model*, ou grand modèle de langage.\n\nUn LLM, c'est fondamentalement une machine qui **prédit le prochain mot**.\n\nImaginez la phrase : *\"La nuit, tous les chats sont...\"*\n\nLe modèle attribue une probabilité à chaque mot possible :\n\n| Mot | Probabilité |\n|---|---|\n| gris | 0.59 |\n| endormis | 0.19 |\n| fatigués | 0.19 |\n| verts | 0.001 |\n| cuillère | 0.0001 |\n\nLe mot choisi n'est pas forcément le plus probable — ça dépend d'un paramètre appelé **température**.\n\n> **Température basse (ex. 0.0)** → le modèle choisit presque toujours le mot le plus probable. Réponses prévisibles, factuelles.\n>\n> **Température haute (ex. 1.0)** → le modèle peut choisir des mots moins probables. Réponses plus créatives, parfois surprenantes."
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"id": "cell-5",
|
||
"metadata": {},
|
||
"source": "#### Question 1\nSi vous demandez à un LLM d'écrire un poème, quelle température lui donneriez-vous ? Et si vous lui demandez de corriger un code Python, laquelle ?\n\n*(Répondez en colorant votre texte : `<span style=\"color:blue\">votre réponse</span>`)*"
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"id": "cell-6",
|
||
"metadata": {},
|
||
"source": [
|
||
" "
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"id": "cell-7",
|
||
"metadata": {},
|
||
"source": [
|
||
"### Tokens : ce que le modèle voit vraiment\n",
|
||
"\n",
|
||
"Un LLM ne travaille pas sur des mots entiers mais sur des **tokens** — des fragments de mots.\n",
|
||
"\n",
|
||
"Exemple : le verbe *manger* peut apparaître comme *mange*, *mangeons*, *mangerait*... Plutôt que de traiter chaque forme séparément, le modèle travaille sur le fragment commun `mang`.\n",
|
||
"\n",
|
||
"C'est plus efficace et ça permet de gérer des langues très différentes avec le même mécanisme."
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"id": "cell-8",
|
||
"metadata": {},
|
||
"source": [
|
||
"---\n",
|
||
"\n",
|
||
"## 2. Comment ça apprend ?"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"id": "cell-9",
|
||
"metadata": {},
|
||
"source": [
|
||
"Un LLM a des **milliards de paramètres** — imagine des milliards de boutons à régler. Au départ, tous ces boutons sont positionnés aléatoirement : le modèle ne sait rien.\n",
|
||
"\n",
|
||
"L'apprentissage se fait en deux phases :"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"id": "cell-10",
|
||
"metadata": {},
|
||
"source": [
|
||
"### Phase 1 — Pré-entraînement\n",
|
||
"\n",
|
||
"On nourrit le modèle avec des **milliards de textes** : pages web, livres, forums, articles...\n",
|
||
"\n",
|
||
"Le principe : on cache un mot dans une phrase, le modèle essaie de le deviner. S'il se trompe, on ajuste légèrement ses paramètres. On répète ça des **milliards de milliards de fois**.\n",
|
||
"\n",
|
||
"Cette phase peut durer **plusieurs mois** et coûte **plusieurs dizaines de millions de dollars**.\n",
|
||
"\n",
|
||
"À la fin, le modèle sait prédire des mots — mais il ne sait pas encore \"discuter\"."
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"id": "cell-11",
|
||
"metadata": {},
|
||
"source": [
|
||
"### Phase 2 — Affinage\n",
|
||
"\n",
|
||
"Des humains évaluent les réponses du modèle et choisissent les meilleures. Le modèle ajuste ses paramètres pour privilégier ces réponses à l'avenir.\n",
|
||
"\n",
|
||
"C'est ici que se définit la **ligne éditoriale** du modèle : ce qu'il accepte ou refuse de dire, le ton qu'il adopte, ses \"valeurs\".\n",
|
||
"\n",
|
||
"> Un LLM n'est pas neutre. Ses réponses reflètent les choix faits pendant l'affinage — et donc les choix de l'entreprise qui l'a créé."
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"id": "cell-12",
|
||
"metadata": {},
|
||
"source": "#### Question 2\nDeux entreprises concurrentes entraînent chacune un LLM. L'une est américaine, l'autre chinoise. Pensez-vous que leurs modèles répondront de la même façon à des questions politiques ou historiques sensibles ? Pourquoi ?"
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"id": "cell-13",
|
||
"metadata": {},
|
||
"source": [
|
||
" "
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"id": "cell-14",
|
||
"metadata": {},
|
||
"source": [
|
||
"---\n",
|
||
"\n",
|
||
"## 3. Enjeux et questions à se poser"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"id": "89bfc675",
|
||
"source": "---\n\n## 3b. Les risques cognitifs",
|
||
"metadata": {}
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"id": "fe1be7cd",
|
||
"source": "### \"Your Brain on ChatGPT\" — MIT Media Lab, 2025\n\nDes chercheurs du MIT ont mesuré l'activité cérébrale de participants via **EEG** pendant une tâche d'écriture. Trois groupes : ceux qui utilisaient un LLM, ceux qui utilisaient un moteur de recherche, ceux qui écrivaient seuls.\n\n\n\n**Ce que montre l'étude :**\n<li>Les utilisateurs de LLM présentent une activité cérébrale (bande alpha) significativement plus basse que les autres groupes\n<li>Moins d'engagement cognitif = le cerveau \"décroche\" et délègue la réflexion à la machine\n<li>Les auteurs parlent de <strong>dette cognitive</strong> : à force de ne pas solliciter son cerveau, on perd en capacité de raisonnement autonome\n\n> Ce n'est pas une raison de ne jamais utiliser l'IA. C'est une raison de **choisir quand** on l'utilise.",
|
||
"metadata": {}
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"id": "630245b9",
|
||
"source": "#### Question 3b\nVous utilisez un LLM pour rédiger un texte. Votre cerveau travaille moins. Est-ce grave si vous comprenez quand même le résultat ? Et si vous ne le relisez pas ?",
|
||
"metadata": {}
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"id": "9845f141",
|
||
"source": " ",
|
||
"metadata": {}
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"id": "cell-15",
|
||
"metadata": {},
|
||
"source": [
|
||
"### Le coût environnemental\n",
|
||
"\n",
|
||
"Entraîner un LLM nécessite des fermes de serveurs qui tournent en permanence :\n",
|
||
"<li>Consommation électrique massive\n",
|
||
"<li>Refroidissement des serveurs → consommation d'eau importante\n",
|
||
"<li>Fabrication du matériel → ressources rares (lithium, cobalt...)\n",
|
||
"\n",
|
||
"Une seule requête à ChatGPT consomme environ **10 fois plus d'énergie** qu'une recherche Google.\n",
|
||
"\n",
|
||
"Et l'entraînement d'un modèle comme GPT-4 aurait émis autant de CO₂ que **plusieurs centaines de vols Paris–New York**."
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"id": "cell-16",
|
||
"metadata": {},
|
||
"source": "#### Question 3\nEst-ce que ça change votre façon d'utiliser ces outils au quotidien ? Pour quelles tâches pensez-vous que l'usage d'un LLM est justifié, et pour lesquelles ça vous semble excessif ?"
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"id": "cell-17",
|
||
"metadata": {},
|
||
"source": [
|
||
" "
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"id": "cell-18",
|
||
"metadata": {},
|
||
"source": [
|
||
"### Les biais\n",
|
||
"\n",
|
||
"Un LLM apprend sur des textes produits par des humains — avec tous leurs biais. Si les données d'entraînement surreprésentent certaines cultures, langues ou points de vue, le modèle les surreprésente aussi.\n",
|
||
"\n",
|
||
"Exemples documentés :\n",
|
||
"<li>Associations stéréotypées entre certains prénoms et des qualités/défauts\n",
|
||
"<li>Moins bonnes performances dans des langues peu représentées sur le web\n",
|
||
"<li>Tendance à reproduire des stéréotypes de genre dans certaines professions\n",
|
||
"\n",
|
||
"Ces biais ne sont pas intentionnels — mais ils ont des conséquences réelles quand ces outils sont utilisés pour recruter, noter, ou décider."
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"id": "cell-19",
|
||
"metadata": {},
|
||
"source": "#### Question 4\nUn employeur utilise un LLM pour trier des CV. Quels risques cela comporte-t-il selon vous ? Comment pourrait-on les limiter ?"
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"id": "cell-20",
|
||
"metadata": {},
|
||
"source": [
|
||
" "
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"id": "cell-21",
|
||
"metadata": {},
|
||
"source": [
|
||
"---\n",
|
||
"\n",
|
||
"## 4. Et en NSI, ça donne quoi ?"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"id": "cell-22",
|
||
"metadata": {},
|
||
"source": "Les LLMs sont impressionnants — mais ils reposent sur des mécanismes que vous pouvez comprendre.\n\nAprès les vacances, nous allons étudier l'algorithme **K-NN** (*K Nearest Neighbors* — K plus proches voisins). C'est l'un des algorithmes de base du **machine learning** — l'apprentissage automatique.\n\nLe principe : pour classer un objet inconnu, on regarde les *k* objets les plus proches qu'on connaît déjà, et on attribue à l'inconnu la classe majoritaire parmi eux.\n\n**Exemple :** on veut déterminer si une tumeur est bénigne ou maligne à partir de mesures (taille, forme...). On regarde les *k* tumeurs les plus similaires dans notre base de données, et on prédit la classe la plus fréquente.\n\nC'est exactement ce que font, à une tout autre échelle, les algorithmes de recommandation de YouTube ou Spotify : *\"les utilisateurs les plus proches de vous ont aussi aimé...\"*\n\nLes LLMs vont beaucoup plus loin — mais ils partagent avec K-NN l'idée fondamentale : **apprendre à partir d'exemples**."
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"id": "cell-23",
|
||
"metadata": {},
|
||
"source": "#### Question 5\nÀ votre avis, quelle est la différence entre un programme \"classique\" (comme ceux que vous avez écrits en Python cette année) et un programme qui *apprend* ? Essayez d'expliquer avec vos mots."
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"id": "cell-24",
|
||
"metadata": {},
|
||
"source": [
|
||
" "
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"id": "cell-25",
|
||
"metadata": {},
|
||
"source": "---\n\n### Pour aller plus loin (optionnel)\n\nDeux vidéos excellentes de David Louapre (Science Étonnante) si le sujet vous intéresse :\n<li><a href=\"https://www.youtube.com/watch?v=7ell8KEbhJo\">Ce qui se cache derrière le fonctionnement de ChatGPT</a>\n<li><a href=\"https://www.youtube.com/watch?v=YcIbZGTRMjI\">Les 4 étapes pour entraîner un LLM</a>"
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"id": "cell-26",
|
||
"metadata": {},
|
||
"source": [
|
||
"---\n",
|
||
"\n",
|
||
"Licence :\n",
|
||
"\n",
|
||
"Auteur : Florian Mathieu — contenu adapté du cours de D. Roche (pixees.fr/informatiquelycee)\n",
|
||
"\n",
|
||
"<a rel=\"license\" href=\"http://creativecommons.org/licenses/by-nc-sa/4.0/\"><img alt=\"Licence Creative Commons\" style=\"border-width:0\" src=\"https://i.creativecommons.org/l/by-nc-sa/4.0/88x31.png\" /></a> <br />Ce cours est mis à disposition selon les termes de la <a rel=\"license\" href=\"http://creativecommons.org/licenses/by-nc-sa/4.0/\">Licence Creative Commons Attribution - Pas d'Utilisation Commerciale - Partage dans les Mêmes Conditions 4.0 International</a>."
|
||
]
|
||
}
|
||
],
|
||
"metadata": {
|
||
"kernelspec": {
|
||
"display_name": "Python 3",
|
||
"language": "python",
|
||
"name": "python3"
|
||
},
|
||
"language_info": {
|
||
"name": "python",
|
||
"version": "3.10.0"
|
||
}
|
||
},
|
||
"nbformat": 4,
|
||
"nbformat_minor": 5
|
||
} |