Représenter le texte : tokens et embeddings
⏱ 50 minUne machine ne lit pas des mots : il faut les transformer en nombres.
Tokenisation : découper le texte en unités (tokens). Les LLM modernes utilisent des sous-mots (BPE) : "incroyable" → ["in", "croy", "able"]. Vocabulaire typique : 30k–100k tokens.
Embeddings : chaque token devient un vecteur dense (ex. 768 dimensions) appris pendant l'entraînement. Propriété magique : la géométrie capture le sens.
roi - homme + femme ≈ reine
Les mots de sens proches ont des vecteurs proches (similarité cosinus). C'est le fondement de la recherche sémantique : on compare les embeddings de la requête et des documents.
from sentence_transformers import SentenceTransformer
model = SentenceTransformer("all-MiniLM-L6-v2")
emb = model.encode(["le chat dort", "un félin se repose"])
# similarité cosinus élevée malgré zéro mot en commun
✍️ Exercices de la leçon
2 exercicesFais-les dans l'ordre, dans un vrai fichier .py — pas dans ta tête. Ne déplie la correction qu'après avoir écrit quelque chose, même faux.
Exercice A — Des phrases sans mot commun, mais proches
Application directe · Tu appliques ce que tu viens de lire.
from sentence_transformers import SentenceTransformer
model = SentenceTransformer("all-MiniLM-L6-v2")
1. encode ces cinq phrases et affiche la forme du tableau obtenu :
- « le chat dort sur le canapé »
- « un félin se repose sur le sofa »
- « la bourse a chuté de 3 % »
- « les marchés financiers sont en baisse »
- « je mange une pomme »
2. calcule la matrice de similarité cosinus entre toutes les paires
3. affiche-la en heatmap avec les phrases en étiquettes
4. vérifie que les paires 1-2 et 3-4 ressortent, malgré zéro mot en commun
5. compare avec une similarité par mots communs (Jaccard) : que donne-t-elle ?
Exercice B — Moteur sémantique contre moteur par mots-clés
Page blanche · Aucun squelette : à toi de choisir la méthode.
Page blanche. Comparaison à construire.
Tu dois convaincre une équipe de passer d'une recherche par mots-clés à une recherche sémantique. Une affirmation ne suffira pas : construis la démonstration.
- 1.constitue un petit corpus de 15 à 20 documents sur un thème que tu connais
- 2.implémente deux moteurs de recherche : un par mots-clés (TF-IDF), un sémantique (embeddings)
- 3.conçois 5 requêtes qui discriminent les deux approches
- 4.compare les résultats et mesure l'écart
- 5.trouve et présente un cas où le moteur par mots-clés est meilleur — il existe
Le point 5 est le plus important. Une démonstration qui ne montre que les avantages n'est pas une démonstration, c'est un argumentaire.