OpenMythos : ce que le dépôt documente réellement
Une reconstruction théorique de l'architecture de Claude Mythos, construite à partir des premiers principes en utilisant la littérature de recherche disponible.
En bref
- De quoi s’agit-il ?
- Une lecture en français de kyegomez/OpenMythos, centrée sur ses fonctions déclarées, ses points d'entrée et ses limites documentées.
- À qui s’adresse-t-il ?
- OpenMythos convient à un lecteur dont le besoin correspond au périmètre décrit par le README et qui peut préparer l’environnement Python. Il convient moins à une équipe cherchant des garanties que le dépôt ne formule pas.
- Puis-je l’utiliser commercialement ?
- Oui. MIT est une licence permissive : vous pouvez utiliser, modifier et vendre un logiciel qui en dépend, à condition de conserver les mentions de droit d’auteur et de licence.
- Est-il encore maintenu ?
- Oui. Les derniers commits datent d’il y a 115 jours.
- En quel langage est-il écrit ?
- Principalement Python, d’après les statistiques de langage de GitHub.
Ces réponses reposent sur les données GitHub du projet (dernière synchronisation le 15 septembre 2026) et sur notre analyse. Elles ne constituent pas un avis juridique.
ANALYSE OPEN SOURCE APPROFONDIE
Une reconstruction théorique de Claude Mythos
OpenMythos est une reconstruction théorique du modèle Claude Mythos, construite à partir de recherches publiques plutôt que du code propriétaire d'Anthropic. Le README indique explicitement qu'il n'est pas affilié, approuvé ou connecté à Anthropic. L'implémentation est un transformateur récurrent profond (RDT) avec trois étapes : un Prélude de blocs transformateurs, un bloc récurrent en boucle qui s'exécute jusqu'à max_loop_iters fois, et une Coda. L'attention peut être soit MLA, soit GQA, et le feed-forward utilise un mélange d'experts épars avec des experts routés et partagés. Le projet est positionné comme une implémentation open source pour explorer le raisonnement adaptatif au calcul et à profondeur variable.
Dans kyegomez/OpenMythos, ce point doit être lu à partir du README de la branche main. Le matériau décrit A theoretical reconstruction of the Claude Mythos architecture, built from first principles using the available research literature.. Cette formulation est une déclaration du projet, pas un résultat de test indépendant. Le README ne permet pas d'inférer une compatibilité générale, une performance constante ou un support garanti. Pour examiner OpenMythos, utilisez l'entrée concrète mentionnée dans cette section, conservez les messages produits et comparez le comportement observé avec le périmètre annoncé. Une entrée absente, une dépendance non documentée ou une erreur silencieuse doit rester signalée comme telle.
Installation et bascule des modes d'attention
L'installation se fait via pip : `pip install open-mythos`, avec une option supplémentaire `pip install open-mythos[flash]` pour activer Flash Attention 2 dans GQAttention lorsque CUDA et les outils de compilation sont présents. L'exemple d'utilisation construit une MythosConfig avec soit `attn_type="mla"` soit `"gqa"`. Le chemin GQA ajoute n_kv_heads, tandis que MLA ajoute kv_lora_rank, q_lora_rank, qk_rope_head_dim, qk_nope_head_dim et v_head_dim. Après construction du modèle, le script affiche le nombre de paramètres, exécute une passe avant, génère des jetons et vérifie le rayon spectral de la matrice d'injection A, qui selon le README doit être inférieur à 1. Aucune autre commande n'est documentée.
Échelles préconfigurées et script d'entraînement 3B
Le dépôt inclut des constructeurs de configuration pour sept échelles : mythos_1b, mythos_3b, mythos_10b, mythos_50b, mythos_100b, mythos_500b et mythos_1t. Le tableau du README liste pour chaque échelle dim, nombre d'experts, expert_dim, itérations de boucle, longueur de contexte et sortie maximale. Il y a aussi un script d'entraînement à training/3b_fine_web_edu.py pour le modèle 3B sur FineWeb-Edu. Il utilise AdamW, le tokenizer openai/gpt-oss-20b via MythosTokenizer, PyTorch DDP, bfloat16 sur H100/A100, et un échauffement linéaire de 2000 pas suivi d'un déclin cosinus. Le jeu de données par défaut est HuggingFaceFW/fineweb-edu sample-10BT, avec sample-100BT ou default comme alternatives. La cible déclarée est de 30B jetons.
La conception du transformateur à profondeur récurrente
L'architecture est un transformateur en boucle avec trois blocs fonctionnels. L'entrée passe par un Prélude, puis un bloc récurrent qui s'exécute T fois, puis une Coda. La règle de mise à jour récurrente est h_{t+1} = A·h_t + B·e + Transformer(h_t, e), où e est l'entrée encodée injectée à chaque boucle. A et B sont des paramètres d'injection appris. Le README dit que cette injection empêche la dérive. La couche d'attention est commutable : GQAttention implémente l'attention par requêtes groupées avec Flash Attention 2 optionnel, et MLAttention implémente l'attention multi-latente avec un latent KV compressé. RoPE est appliqué à Q et K avant la mise en cache.
Les affirmations sur pourquoi un modèle en boucle correspond à Mythos
Le README présente quatre arguments pour expliquer pourquoi un transformateur en boucle pourrait expliquer Mythos. Premièrement, la généralisation systématique émerge via un processus de grokking en trois étapes. Deuxièmement, l'extrapolation de profondeur : s'entraîner sur des raisonnements à 5 sauts et tester sur des raisonnements à 10 sauts fonctionne car davantage de boucles d'inférence ajoutent de la profondeur. Troisièmement, les pensées latentes agissent comme une chaîne de pensée implicite, et une preuve formelle est citée (Saunshi et al., 2025). Quatrièmement, l'efficacité paramétrique : un modèle en boucle de k couches exécuté L fois se rapproche d'un modèle de kL couches avec seulement k couches de paramètres. Le README note également que la boucle peut nuire à la mémorisation, ce qu'il relie à l'observation que Mythos raisonne bien mais a un rappel factuel incohérent.
Stabilité, lois d'échelle et questions de conception ouvertes
L'entraînement de modèles en boucle est instable, avec explosion des résidus et pics de perte. Le README reformule la boucle comme un système LTI discret et dit que la stabilité exige que le rayon spectral de A soit inférieur à 1. Le correctif proposé paramètre A comme une matrice diagonale négative continue et la discrétise, garantissant rho(A) < 1 par construction. Cela est attribué à l'architecture Parcae. Parcae fournit également des lois d'échelle : pour un budget FLOP fixe, augmenter la récurrence moyenne et réduire le nombre de jetons diminue la perte. Le README rapporte qu'à 770M paramètres, un modèle en boucle correspond à un transformateur à profondeur fixe de 1.3B. D'autres questions ouvertes incluent les plongements d'index de boucle, le temps de calcul adaptatif pour éviter la sur-réflexion, et l'utilisation de MoE pour la largeur.
Documentation et limites de la licence
Deux pages de documentation sont listées : docs/open_mythos.md est la référence API pour la classe OpenMythos, et docs/datasets.md couvre les jeux de données d'entraînement recommandés. La licence est MIT, copyright 2026 Kye Gomez. Le texte MIT accorde la permission d'utiliser, copier, modifier, fusionner, publier, distribuer, sous-licencier et vendre des copies, et déclare que le logiciel est fourni sans garantie. Il ne dit rien sur les garanties de sécurité, le support ou l'état de préparation à la production. Le README ne documente aucune intégration externe au-delà de PyTorch et de Flash Attention optionnel.
Conclusion éditoriale
OpenMythos convient à un lecteur dont le besoin correspond au périmètre décrit par le README et qui peut préparer l’environnement Python. Il convient moins à une équipe cherchant des garanties que le dépôt ne formule pas. Commencez dans kyegomez/OpenMythos, branche main, par l’exemple ou le fichier indiqué dans le README, puis contrôlez la sortie, les erreurs et les dépendances avant de l’intégrer.
Notes de la communauté