Simuler le Hasard avec un Modèle de Langage (LLM)

Les modèles de langage (LLM) ne sont pas intrinsèquement aléatoires, mais il est possible d'introduire une variabilité dans leurs réponses pour simuler le hasard. Un LLM génère chaque mot en fonction d'une distribution de probabilités basée sur son entraînement sur de vastes bases de texte. Cela signifie qu'à paramètres égaux et prompt identique, le résultat sera déterministe. Pour introduire une forme d'imprévisibilité, plusieurs stratégies peuvent être mises en place.
Comprendre le Pseudo-Aléatoire d'un LLM
Un LLM prédit le prochain token (mot ou fragment de mot) en fonction des probabilités apprises. Sans modification du processus de décodage, il choisit systématiquement l'option la plus probable, produisant une réponse fixe. Pour obtenir du pseudo-hasard, il est nécessaire de jouer sur la distribution des probabilités.
Cependant, les sorties "aléatoires" d'un LLM ne suivent pas une distribution uniforme parfaite. Par exemple, des expériences ont montré qu'en demandant à un LLM de générer un nombre aléatoire entre 0 et 1, la distribution des résultats s'éloigne significativement de l'uniforme. Cela est dû au fait que les modèles sont entraînés sur des données humaines, lesquelles ne sont pas uniformément aléatoires. Par exemple, les humains choisissent fréquemment le chiffre 7 comme "nombre au hasard".
Paramétrer la Génération Aléatoire
Pour introduire de l'aléatoire dans la sortie d'un LLM, il faut régler les paramètres de décodage tels que :
Température
Température basse (proche de 0) : Le modèle choisit toujours le mot le plus probable, produisant des réponses déterministes.
Température élevée (0.7-1.0) : Les tokens moins probables sont sélectionnés plus fréquemment, ce qui ajoute de la diversité.
Température extrême (>1.2) : Peut mener à des sorties incohérentes.
Top-k et Top-p Sampling
Top-k : Limite le choix aux k tokens les plus probables.
Top-p (nucleus sampling) : Ne retient que les tokens dont la probabilité cumulée atteint un seuil donné (ex. 0.9), adaptant dynamiquement le choix.
Une combinaison efficace peut être top-p=0.9 avec température 0.8 pour un bon équilibre entre hasard et cohérence.
Multi-échantillonnage
Une approche consiste à exécuter plusieurs générations indépendantes (Non-Autoregressive Sampling, NARS) au lieu de demander une liste d'un seul coup (Autoregressive Sampling, ARS). Cette méthode aide à obtenir des résultats plus variés.
Stratégies de Prompt pour une Sortie Imprévisible
1. Demander Explicitement du Hasard
Inclure des termes comme "au hasard", "imprévisible", ou encore "résultat aléatoire" pour encourager la variabilité.
Exemple :
"Choisis un événement aléatoire basé sur X."
2. Formuler un Contexte Créatif
Placer le modèle dans un rôle fictionnel peut favoriser l'aléatoire.
Exemple :
"Tu es un dé à six faces parlant, chaque fois qu'on te lance, raconte un événement différent."
3. Fournir des Exemples Variés (Few-Shot Prompting)
Montrer plusieurs cas où une même entrée donne différents résultats encourage la diversité.
Exemple :
Entrée : 5 → "Un orage éclate en plein désert." Entrée : 5 → "Un trésor enfoui est découvert sous un vieux chêne." Entrée : 5 → "Une pluie de météorites illumine le ciel."
4. Introduire un Processus Aléatoire dans le Prompt
Forcer une sélection parmi plusieurs options.
Exemple :
"Voici trois événements possibles : 1) ..., 2) ..., 3) ... Choisis-en un au hasard et décris-le."
5. Utiliser le Nombre Comme "Graine" Créative
Assurez-vous que le nombre influence la réponse sans la figer.
Exemple :
"Le nombre 7 est un code secret inspirant un événement inattendu. Quel est-il ?"
Gérer les Biais du Modèle
Malgré toutes ces stratégies, un LLM peut conserver certains biais :
Biais sur les nombres "aléatoires" : Certains nombres comme 7, 3 ou 5 sont surreprésentés.
Biais narratif : Même en demandant du hasard, le modèle peut tendre vers des structures narratives classiques.
Tendance à justifier : Un LLM peut ajouter une explication plutôt que de juste fournir un résultat.
Solutions :
Expliciter que tous les résultats doivent être également probables.
Préciser de ne pas donner d'explication.
Multiplier les générations pour lisser les biais.
Conclusion
Simuler le hasard avec un LLM repose sur l'ajustement des paramètres de génération et une formulation de prompt adaptée. Malgré les biais inhérents, en combinant une température élevée, un top-p adaptatif et un prompt structurant l'imprévisibilité, on peut obtenir des résultats surprenants et créatifs. Toutefois, pour des applications critiques, un générateur aléatoire véritable reste préférable.






