OpenAI a publié « Comment OpenAI utilise Codex », résumant systématiquement son utilisation quotidienne par les équipes d'ingénierie de sécurité, front-end, API, infrastructure et performance. Cela inclut la compréhension du code, la refactorisation inter-dépôts, l'optimisation des performances, la réalisation de tests unitaires et l'accélération du développement. Il intègre également des bonnes pratiques telles que le mode double Ask/Code, Agents.md et Best-of-N, aidant les équipes d'ingénierie à transformer véritablement la programmation IA en productivité. I. Sept utilisations courantes : 1. Compréhension du code et réponse aux incidents : Codex peut rapidement localiser la logique principale, les relations de service et les flux de données dans des modules inconnus, facilitant ainsi le dépannage et la réponse sur le terrain, remplaçant les recherches inefficaces et réduisant le temps nécessaire pour obtenir une vue d'ensemble. 2. Refactorisation et migration : Codex génère de manière centralisée les modifications et les pull requests pour les mises à niveau d'interface, les remplacements de schémas et les migrations de dépendances sur plusieurs fichiers, évitant ainsi les remplacements d'expressions régulières manqués et améliorant la cohérence et le retour arrière.
(1)Optimisation des performances
Identifiez les chemins lents à haute fréquence et les appels coûteux répétés, et recommandez des stratégies de traitement par lots et de mise en cache pour réduire la mémoire et la latence.
(2)Couverture des tests
Complétez automatiquement les cas limites et les tests de propriétés, priorisez le remplissage des modules à faible couverture et construisez un réseau de régression plus stable.
(3)Accélération du développement
Générez des échafaudages, clôturez les petites tâches, implémentez la télémétrie et la configuration, et réduisez les coûts à long terme du « début-fin ».
a. Maintenez le flux
Soumettez les idées dispersées et les tâches inachevées à la file d'attente des tâches, puis fusionnez-les et révisez-les lorsque vous avez du temps libre.
b. Exploration et conception
Comparez plusieurs chemins d'implémentation, vérifiez les compromis de conception et recherchez les défauts similaires et les modèles hérités.
II. Bonnes pratiques : Transformez Codex en un collègue fiable
1. Mode double Demande → Code
Utilisez d'abord le mode Demande pour générer un plan d'implémentation, puis passez en mode Code pour l'exécuter, réduisant ainsi le risque d'écart lors de modifications à grande échelle.
2. Environnement d'ingénierie en tant que données
Configurez les scripts de démarrage, les variables d'environnement et les autorisations réseau pour Codex, et corrigez les erreurs de build avec des itérations pour réduire considérablement les erreurs à long terme.
(1) Écrivez des invites comme vous écririez un problème
Incluez les chemins d'accès aux fichiers, les noms des composants, les extraits de différences et les extraits de documents, et faites référence à « Implémenté selon l'approche du module X ».
(2) Utilisez la file d'attente des tâches comme une tâche légère
Livrez de petites tâches pendant une période fragmentée et fusionnez-les lorsque vous êtes de nouveau concentré.
(3) AGENTS.md fournit un contexte persistant
Il précipite les conventions de nommage, les règles métier et les pièges connus, compensant ainsi les connaissances implicites en dehors du code.
a. Meilleure solution de N
Mettez en parallèle plusieurs solutions, sélectionnez la meilleure ou regroupez-les et améliorez considérablement la qualité des tâches complexes.
b. Granularité des tâches
Optimisez la taille des tâches à « environ une heure/des centaines de lignes » et augmentez-la progressivement.
c. Portail de qualité
Vérifiez et acceptez automatiquement les tâches grâce aux tests unitaires, au linting et aux scripts de régression.
Foire aux questions (Q&R)
Q : Comment l'équipe OpenAI utilise-t-elle Codex pour accélérer la compréhension du code et le dépannage ? R : Codex génère des résumés des relations système et des flux de données, localisant les chemins de propagation des erreurs et les fichiers clés, remplaçant les recherches manuelles dans l'intégralité du référentiel et améliorant la rapidité et la précision des réponses sur le terrain. Q : Quels sont les avantages de Codex pour la refactorisation et la migration inter-référentiels ? R : Il comprend la structure et les dépendances, ce qui vous permet de remplacer les anciens schémas par lots, de générer des résumés des points d’impact et d’ouvrir des demandes d’extraction (PR). Cela réduit les omissions et les incohérences de style, facilitant ainsi la révision et la restauration. Q : Comment Codex peut-il être utilisé pour améliorer la couverture et les performances des tests ? R : Codex complète automatiquement les cas limites pour les modules à faible couverture ; il fournit des recommandations de mise en cache/mise en lots pour les chemins coûteux, en expliquant les avantages, et sert de base à l’évaluation des performances. Q : Quelles bonnes pratiques ont le plus grand impact sur les performances ? R : Le mode double Ask→Code, le contexte persistant dans AGENTS.md et l’approche parallèle Best-of-N sont les plus critiques. Associés à des « invites d’écriture similaires à celles des problèmes d’écriture », la stabilité et la reproductibilité sont considérablement améliorées.
Texte original officiel :
https://cdn.openai.com/pdf/6a2631dc-783e-479b-b1a4-af0cfbd38630/how-openai-uses-codex.pdf