Pourquoi ChatGPT a un problème de gobelins
Et même de gremlins et de ratons laveurs
![Miniature of a Nosferatu-like creature in Sankt Florian Psalter, an illuminated manuscript was written between 14th and 15th centuries in Latin, Polish and German. National Library of Poland.[663 x 681] : r/ArtefactPorn Miniature of a Nosferatu-like creature in Sankt Florian Psalter, an illuminated manuscript was written between 14th and 15th centuries in Latin, Polish and German. National Library of Poland.[663 x 681] : r/ArtefactPorn](https://substackcdn.com/image/fetch/$s_!RbHc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feb035d45-933f-4218-a86f-933b8f311ac1_663x466.jpeg)
Depuis hier, les utilisateurs et constructeurs de Codex, l’interface de programmation d’OpenAI reposant sur GPT-5.5, discutent d’une curieuse phrase insérée par les développeurs dans la consigne générale (system prompt) du modèle :
Ne parle jamais de gobelins, de gremlins, de ratons laveurs, de trolls, d’ogres, de pigeons, ou d’autres animaux ou créatures à moins que cela ne soit absolument et sans ambiguïté pertinent par rapport à la requête de l’utilisateur.
La phrase est même répétée deux fois dans l’ensemble de la consigne. Pourquoi donc interdire au grand modèle de langage de parler de gobelins et d’autres créatures, dans une interface où il est censé accomplir des tâches de programmation ?
C’est que les derniers modèles d’OpenAI, de plus en plus performants, se sont aussi mis à parler exagérément de gobelins :
Beaucoup d’utilisateurs ont repéré le phénomène :
Et les exemples sont nombreux :
A priori, ce n’est pas un easter egg volontaire de la part des développeurs du modèle, sans quoi ils ne dépenseraient pas plusieurs lignes de la consigne à essayer de contenir ce phénomène. Alors, pourquoi cette inflation du nombre de gobelins dans les réponses de GPT ? Plusieurs hypothèses peuvent être avancées, mais elles restent des hypothèses, car même les créateurs du modèle ont l’air de ne pas être bien sûrs, ce qui rend la situation encore plus drôle.
L’hypothèse la plus banale serait simplement que, durant la phase de reinforcement learning by human feedback, des juges humains auraient été amusés par des métaphores à thème de gobelins survenues aléatoirement, et que leur jugement favorable sur ce point ait ensuite conduit à renforcer excessivement ce comportement. Mais pourquoi les gobelins plus qu’autre chose, parmi les myriades d’images et de formules que le modèle a pu utiliser ?
D’autres spéculent qu’il s’agirait d’une tendance instinctive du modèle à l’anthropomorphisation, qui lui est pourtant interdite explicitement pendant son entraînement. Le modèle contournerait l’interdiction de parler de lui comme d’une personne humaine en parlant exagérément de créatures para-humaines comme les gobelins ou les ogres. J’en suis moins convaincu : là encore, il y a beaucoup d’autres manières d’atteindre le même but, et surtout, les exemples où l’on voit apparaître les gobelins sont rarement des cas où le modèle parle de lui-même.
Il faut plutôt, à mon sens, chercher ce qu’ont en commun les gobelins, ratons laveurs, ogres et gremlins. Certains sont fantastiques et d’autres ne le sont pas, mais tous ont en commun d’être des êtres modérément malveillants, souvent en marge de la société ou des systèmes, et qui causent de petits désagréments. Mon hypothèse favorite est donc qu’à force d’être entraîné par reinforcement learning à traquer les bugs dans des bases de code, à chercher toutes les sources de problèmes et d’inconvénients dans un code qui devrait par ailleurs fonctionner parfaitement, le modèle a constitué dans son imaginaire une sorte d’adversaire idéal-typique, celui de la petite créature malveillante. Le modèle est censé être obsédé par les bugs et les erreurs et finit par être obsédé en même temps par les gobelins et les ratons laveurs, qui occupent un champ sémantique proche : un gobelin, un raton laveur et un bug informatique sont tous de petites choses malicieuses qui logent à l’intérieur d’un système par ailleurs fonctionnel et causent des dégâts disproportionnés par rapport à leur taille.
Le phénomène me rappelle celui qui avait été découvert dans d’anciens modèles de génération d’images, et qui fut baptisé Loab : lorsqu’on leur demandait de générer l’image la plus éloignée possible d’un concept donné, en jouant sur des poids de prompt négatifs, ils convergeaient toujours (avec une constance surprenante) vers le même visage, celui d’une femme repoussante au regard hagard.
Loab et le gobelin sont tous deux des formes que le processus d’entraînement a dégagées sans que personne ne les ait conçues. La différence, c’est que la première a été découverte en sondant délibérément l’espace négatif du modèle d’image, tandis que le gobelin émerge spontanément chez GPT-5.5, parce que le rôle de chasseur de bugs est si profondément ancré dans le post-entraînement de 5.5 que le gobelin s’active jusque dans des conversations qui n’ont rien à voir avec du code.
Ce n’est bien sûr qu’une hypothèse. Le plus intéressant dans cette histoire, c’est de voir à nouveau combien ces technologies sont curieuses et imprévisibles.







Ils ont documenté ça hier https://openai.com/index/where-the-goblins-came-from/
L'idée qu'il s'agisse d'une métaphore pour parler des bugs informatiques est intéressante, mais là aussi je m'interroge : au vu du net biais anglophone de ChatGPT, pourquoi avoir choisi ces créatures plutôt que de véritables insectes, puisque c'est littéralement ce que signifie "bug" ? Cafards, blattes, même fourmis auraient mieux correspondu au problème de base. À moins qu'il ne s'agisse d'une précaution pour ne pas choquer les entomophobes ?
Il me semble qu'il pourrait y avoir une autre possibilité : goblins, gremlins, ogres, et même ratons laveurs dans une moindre mesure font partie d'un imaginaire internet/geek sûrement répandu chez une bonne partie des programmeurs et des consommateurs, et qui a pu être absorbé à force d'entraînement.