Files
1ereNSI/ia/culture_ia.ipynb

305 lines
12 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{
"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![Étude MIT — Cognitive Debt](./cognitive_debt.jpeg)\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 ParisNew 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
}