J'ai eu la même pensée, donc j'ai joué avec dans nanochat. Par exemple, voici 8 agents (4 claude, 4 codex), chacun avec 1 GPU exécutant des expériences nanochat (essayant de supprimer le softcap logit sans régression). Le TLDR est que ça ne fonctionne pas et c'est un désordre... mais c'est toujours très joli à regarder :) J'ai essayé quelques configurations : 8 chercheurs indépendants, 1 scientifique en chef donnant du travail à 8 chercheurs juniors, etc. Chaque programme de recherche est une branche git, chaque scientifique la fork en une branche de fonctionnalité, des worktrees git pour l'isolation, des fichiers simples pour les communications, en évitant Docker/VMs pour la simplicité pour l'instant (je trouve que les instructions suffisent à prévenir les interférences). L'organisation de recherche fonctionne dans des grilles de fenêtres tmux de sessions interactives (comme Teams) afin que ce soit joli à regarder, voir leur travail individuel, et "prendre le relais" si nécessaire, c'est-à-dire pas de -p. Mais bon, la raison pour laquelle ça ne fonctionne pas jusqu'à présent est que les idées des agents sont tout simplement assez mauvaises dès le départ, même à la plus haute intelligence. Ils ne réfléchissent pas soigneusement à la conception des expériences, ils exécutent des variations un peu non-sensiques, ils ne créent pas de bases solides et n'ablatent pas les choses correctement, ils ne contrôlent pas soigneusement le temps d'exécution ou les flops. (juste comme exemple, un agent hier a "découvert" qu'augmenter la taille cachée du réseau améliore la perte de validation, ce qui est un résultat totalement spurié étant donné qu'un réseau plus grand aura une perte de validation plus faible dans le régime de données infinies, mais ensuite il s'entraîne aussi beaucoup plus longtemps, il n'est pas clair pourquoi j'ai dû intervenir pour le faire remarquer). Ils sont très bons pour mettre en œuvre n'importe quelle idée bien définie et décrite, mais ils ne les génèrent pas de manière créative. Mais l'objectif est que vous programmez maintenant une organisation (par exemple, une "organisation de recherche") et ses agents individuels, donc le "code source" est la collection de prompts, compétences, outils, etc. et processus qui la composent. Par exemple, un stand-up quotidien le matin fait maintenant partie du "code de l'organisation". Et optimiser le pré-entraînement de nanochat n'est qu'une des nombreuses tâches (presque comme une évaluation). Ensuite - étant donné une tâche arbitraire, à quelle vitesse votre organisation de recherche génère-t-elle des progrès dessus ?