Chapitre 2 : Limites de tokens et fenêtres de contexte
Évolution de la longueur du contexte
| Modèle | Année | Contexte |
|---|---|---|
| GPT-3 | 2020 | 2K |
| GPT-3.5 | 2022 | 4K/16K |
| Claude 2 | 2023 | 100K |
| GPT-4 Turbo | 2023 | 128K |
| Claude 3 | 2024 | 200K |
| Gemini 1.5 | 2024 | 1M+ |
Gestion des documents longs
Stratégies de découpage
def chunk_text(text, max_tokens=4000, overlap=200):
tokens = tokenizer.encode(text)
chunks = []
for i in range(0, len(tokens), max_tokens - overlap):
chunk = tokens[i:i + max_tokens]
chunks.append(tokenizer.decode(chunk))
return chunks
RoPE pour un long contexte
L'encodage de position rotatif permet l'extrapolation de longueur :
- LLaMA utilise RoPE
- Info de position en rotation, pas en addition
Points clés
astuce
- Les fenêtres de contexte ont considérablement augmenté (2K → 1M+)
- Le découpage avec chevauchement préserve le contexte
- RoPE permet une meilleure gestion des longues séquences