search
– Deux têtes valent mieux qu’une : qu’est-ce que GitLab Duo ?
Gitlab

Deux têtes valent mieux qu’une : qu’est-ce que GitLab Duo ?

L’intelligence artificielle a radicalement étendu sa présence dans divers domaines, dont le développement. Selon une enquête réalisée en mai 2024 auprès de 1 700 membres de la communauté des développeurs, Stack Overflow – le plus grand portail de questions-réponses du secteur – a constaté que plus des trois quarts des personnes interrogées utilisaient déjà l’IA ou prévoyaient d’en faire usage.

Outre les chercheurs universitaires et, bien sûr, les ingénieurs en IA eux-mêmes, ce sont les développeurs frontaux (75 %), les scientifiques des données (67 %) et les développeurs mobiles (60 %) qui ont enregistré le taux d’adoption le plus élevé.

La version de l’outil d’IA qu’ils utilisent s’appelle CodeGen et fait explicitement référence aux logiciels d’aide au codage. Cet article vous présente brièvement l’un de ces outils et répond aux questions les plus fréquentes : Qu’est-ce que GitLab Duo et quelles sont ses fonctionnalités immédiates ?

Avantages des outils CodeGen tels que GitLab Duo

McKinsey, l’une des sociétés de services de conseil de MBB, a récemment étudié l’impact de CodeGen sur la productivité des développeurs. Les conclusions sont les suivantes :

  • 45 % à 50 % de temps en moins passé sur les tâches impliquant l’écriture de code de documentation.
  • 35 % à 45 % de temps en moins passé sur les tâches de génération de code.
  • 20 % à 30 % de gain de temps sur les tâches de refactorisation de code.
  • ~ 10 % de gain de temps sur des objectifs très complexes.

Il est intéressant de souligner, cependant, que les principaux facteurs déterminant le gain de temps réalisé au sein d’une équipe sont la difficulté de la tâche en question et l’expérience des développeurs. McKinsey a relevé des cas où des développeurs débutants ont en réalité perdu plus de temps en utilisant l’outil CodeGen.

L'IA au service de DevSecOps est tout à fait possible. Réservez un appel gratuit avec un expert certifié GitLab pour tout savoir de notre processus. Réservez maintenant →

Qu’est-ce que GitLab Duo ?

GitLab Duo est un assistant de codage piloté par l’IA de GitLab, qui, selon G2, est l’un des meilleurs outils CI/CD du marché. GitLab Duo utilise, pour chaque fonctionnalité, le modèle de langage le plus approprié, parmi lesquels deux des modèles de langage les plus répandus : Vertex AI Codey de Google Cloud et Claude d’Anthropic.

Par ailleurs, ni GitLab ni ses fournisseurs ne divulguent vos données privées (c’est-à-dire non publiques) à des fins de formation. Voyons maintenant comment chacune de ces capacités d’IA peut influencer votre processus de développement. Dans un premier temps, l’entreprise a classé toutes les fonctionnalités en trois catégories distinctes : disponible au public, bêta et expérimentale.

Fonctionnalités de GitLab Duo disponibles au public

Chat

Chat est un assistant virtuel d’IA prêt à répondre aux questions et à expliquer des concepts techniques complexes de manière naturelle et conversationnelle.

Il existe de nombreux assistants de code, alors quel est l’avantage majeur de GitLab Duo à cet égard ? Le chat peut permettre aux développeurs de réduire leur endettement technique, d’améliorer la maintenance du code et la lisibilité globale du code par le biais de son remaniement.

Explication du code

L‘explication du code reprend le code existant et le traduit en langage clair et naturel, facilitant ainsi la compréhension de sa logique et de sa fonctionnalité.

Imaginez que vous travaillez sur un code existant dont les fonctions sont mal documentées. L’explication de code analyserait la fonction et fournirait une description en langage clair de son objectif, de ses paramètres et de ses résultats. Vous gagnerez ainsi du temps et réduirez les efforts nécessaires pour déchiffrer manuellement la logique du code.

Suggestions de codes

Suggestions de code agit comme un partenaire de codage intelligent (imaginez un copilote intelligent de GitLab), anticipant les besoins des développeurs et suggérant des solutions de codage sécurisées dans 14 langages de programmation.

Par exemple, lors de l’écriture d’une nouvelle fonction, les suggestions de code de GitLab peuvent reconnaître un modèle et suggérer un extrait de code préconstruit que vous pouvez utiliser, accélérant ainsi les temps de cycle et se conformant aux meilleures pratiques de l’industrie.

Suggestions de Git (Git Suggestions)

Il nous est tous arrivé d’oublier la commande Git dont nous avions besoin. Git Suggestions est un rappel contextuel pratique proposant des commandes Git pertinentes en fonction de votre situation actuelle.

Imaginez ceci : Au beau milieu d’une opération de branchement complexe, Git Suggestions examine votre structure actuelle et suggère la commande appropriée, vous aidant ainsi à rester productif sans perturber votre flux de travail.

Réviseurs suggérés

Assigner des réviseurs aux demandes de fusion peut s’avérer fastidieux. Comment GitLab Duo remédie-t-il à ce problème ? La plateforme exploite des modèles d’apprentissage automatique propres à chaque projet pour analyser les modifications du code et recommander des développeurs disposant de l’expertise la plus pertinente pour réviser le travail d’une personne.

Imaginons que vous ayez apporté des modifications importantes à un module lié aux interactions avec la base de données. Les réviseurs suggérés identifient les ingénieurs habitués à travailler avec cette technologie de base de données spécifique, pour un processus de révision plus approfondi.

Génération de tests

La génération de tests automatise les tâches de test répétitives, afin de vous concentrer sur l’écriture d’un code de qualité. Elle identifie les domaines pour lesquels des tests sont manquants et génère des tests automatisés pour combler ces lacunes, ce qui permet de détecter les erreurs avant qu’elles ne deviennent des problèmes majeurs.

Si vous travaillez, par exemple, sur une fonction qui manipule l’entrée d’un utilisateur, la Génération de tests peut analyser le code et générer des tests automatiques pour couvrir ces scénarios. La génération de tests peut analyser le code et créer automatiquement des tests validant différents scénarios de saisie de l’utilisateur, en veillant à ce que la fonction gère les cas limites et les données inhabituelles. Quel est l’avantage commercial de GitLab Duo ? Il est compatible avec de nombreux types de tests d’assurance qualité simultanément.

Fonctionnalités de GitLab Duo en version bêta

Résumé de la demande de fusion

Le Résumé de la demande de fusion analyse votre demande de fusion et vous retourne une vue d’ensemble claire et concise des changements effectués. Le résumé peut ensuite être facilement partagé avec les chefs de projet, les testeurs et les autres utilisateurs concernés.

Par exemple, après avoir corrigé un problème complexe, vous pouvez utiliser le résumé de la demande de fusion pour générer automatiquement une description détaillant le problème corrigé, les modifications spécifiques apportées au code et le résultat escompté. Cette clarté dans la communication permet de garantir la compréhension par tous de l’impact de votre correction et d’éviter tout malentendu.

Fonctionnalités expérimentales de l’IA de GitLab

Résumé de la révision du code

Le processus de révision de code ressemble parfois à un transfert entre les auteurs et les réviseurs. Le résumé de la révision du code pallie ce décalage en analysant les modifications du code et en soulignant les domaines clés à réviser.

Imaginons qu’un développeur soumette une demande de fusion importante comportant de nombreuses modifications de code. Le résumé de la révision du code permet d’identifier les changements critiques, les régressions potentielles et les domaines nécessitant une réflexion plus approfondie, offrant ainsi aux réviseurs un point de départ focalisé pour un processus plus efficace et plus performant.

Résumé de la discussion

Il peut s’avérer difficile de maintenir une discussion cohérente entre tous les participants d’une même conversation. Le résumé de la discussion s’appuie sur les longues discussions et propose un résumé concis des points clés et des décisions prises.

Imaginez une longue série de commentaires GitLab débattant de la meilleure approche technique d’une nouvelle fonctionnalité. Le résumé de la discussion analyse le fil de discussion et fournit une liste à puces décrivant la décision finale, la justification et les actions à entreprendre, améliorant ainsi la compréhension des parties prenantes et éliminant la confusion pour les personnes n’ayant pas participé à l’ensemble de la discussion.

Génération de description du problème

La génération de description de problèmes fait appel à Claude 2.1 pour élaborer automatiquement une description détaillée du problème auquel vous êtes confronté, à partir d’un bref résumé.

Suite à un message d’erreur inattendu, la génération de description de problème peut vous aider à documenter rapidement le problème, permettant ainsi de poser un diagnostic plus approfondi et une résolution plus rapide.

Explication des vulnérabilités

L‘explication des vulnérabilités analyse les faiblesses de sécurité potentielles identifiées dans votre code. Elle explique la nature de la faille, son impact potentiel et les meilleures façons d’y remédier.

Elle peut par exemple identifier une faille potentielle d’injection SQL au sein d’une fonction de traitement des données utilisateur et expliquer comment un pirate pourrait l’exploiter.

Résolution des vulnérabilités

Que propose GitLab Duo une fois la faille repérée ? La réponse est simple : il approfondit le concept de sécurité et ne se contente pas de l’expliquer, il automatise également le processus de résolution des vulnérabilités.

Lorsque la faille est identifiée par la fonction d’explication de la vulnérabilité, la fonction de résolution des vulnérabilités crée automatiquement une demande de fusion comprenant des modifications du code afin que les données saisies par l’utilisateur soient nettoyées et que les attaques par injection SQL soient évitées, assurant ainsi que la faille de sécurité est corrigée dans les plus brefs délais.

Analyse de la cause profonde

Souvent, le dépannage des défaillances du pipeline et des versions de CI/CD qui échouent est une source de frustration. Grâce à l’analyse de la cause profonde, vous bénéficiez d’une visibilité suffisante sur les journaux et les données associés à l’échec.

Imaginez que votre pipeline CI/CD tombe en panne inopinément. L’analyse de la cause profonde permet d’identifier la modification du code ou le problème de configuration à l’origine de l’échec. Ces informations ciblées vous permettent d’identifier le problème exact et de remettre votre pipeline sur les rails en un clin d’œil.

Prévision de la chaîne de valeur

La prévision de la chaîne de valeur repose sur des statistiques permettant d’inspecter les données historiques de votre équipe et de prédire les éventuels blocages ou domaines à améliorer. Fort de ces connaissances, vous pouvez résoudre les problèmes de manière proactive et optimiser votre processus de développement pour une efficacité maximale.

Comment GitLab Duo vous aide-t-il ? Par exemple, la prévision de la chaîne de valeur peut identifier une baisse du débit des demandes de fusion. Ce phénomène pourrait indiquer un besoin de réviseurs supplémentaires ou de formation sur une nouvelle base de code. En anticipant cet obstacle potentiel, votre équipe peut en atténuer l’impact et assurer une progression fluide du développement.

En supprimant les obstacles à la communication, en automatisant les tâches répétitives et en prévoyant les obstacles, GitLab Duo permet aux développeurs de se concentrer sur leur spécialité : l’écriture d’un code innovant et sécurisé. GitLab Duo n’est cependant pas la seule solution SDLC basée sur l’IA ; ne manquez pas notre comparaison entre GitLab Duo et GitHub Copilot !

Qui sommes-nous ?

Fort d’une base de 1 414 clients, Cloudfresh est un partenaire de services professionnels de GitLab et un partenaire Select de GitLab. Remplissez le formulaire ci-dessous pour recevoir une évaluation gratuite de l’optimisation de vos processus de travail par notre équipe. Si vous êtes nouveau dans le monde CI/CD, pourquoi ne pas commencer par vous procurer une licence GitLab ?

Contactez Cloudfresh