Les revues de code ont toujours été cruciales pour maintenir des normes élevées et renforcer les meilleures pratiques dans un projet de codage. Cet article ne porte pas sur la manière dont les développeurs doivent réviser le code, mais plutôt sur la délégation d'une partie de celui-ci à l'IA.
Je ne dis pas que l'IA doit être utilisée à la place des outils de formatage et des linters. Au lieu de cela, elle doit être utilisée en plus de cela, pour détecter des éléments triviaux qui pourraient être manqués par un humain. C'est pourquoi j'ai décidé de suivre une action GitHub créer par Murtuzaali Surti qui examine le code d'une demande d'extraction et génère des suggestions à l'aide de l'IA. Laissez-moi vous expliquer comment procéder.
🚨 REMARQUE :
Cette action GitHub est désormais disponible sur la place de marché GitHub
Obtenir la différence
Pour interagir avec l'API github, j'ai utilisé octokit, qui est une sorte de SDK ou une bibliothèque cliente permettant d'interagir avec l'API github de manière automatique.
Pour obtenir la différence de la demande d'extraction soulevée, vous devez transmettre l' Accepten-tête avec la valeur application/vnd.github.diffainsi que les paramètres requis.
Une fois que j'obtiens le diff, je l'analyse et supprime les modifications indésirables, puis je le renvoie dans un schéma illustré ci-dessous :
La liste des fichiers ignorés est ensuite utilisée pour supprimer les modifications différentielles qui font référence à ces fichiers ignorés. Cela vous donne une charge utile brute contenant uniquement les modifications souhaitées.
Générer des suggestions
Une fois que j'obtiens la charge utile brute après avoir analysé la différence, je la transmets à l'API de la plateforme. Voici une implémentation de l'API OpenAI.
. L'invite utilisateur contient la différence réelle, les règles et le contexte de la demande d'extraction. C'est ce qui déclenche la révision du code.
Cette action GitHub prend en charge les modèles OpenAI et Anthropic. Voici comment elle implémente l'API Anthropic :
Si cet article vous a plu, n'hésitez pas à me suivre pour plus de contenu ou à partager vos propres expériences dans les commentaires. 🙌
SOCIAL SHARE CARD GENERATOR