Blog IA/ML Développement de GitLab Duo : tour d'horizon des dernières améliorations de GitLab Duo Chat
Mise à jour : August 1, 2024
Lecture : 7 min

Développement de GitLab Duo : tour d'horizon des dernières améliorations de GitLab Duo Chat

Découvrez les dernières améliorations apportées à GitLab Duo Chat, notamment une nouvelle intégration, l'annulation des prompts et des mises à niveau architecturales.

gitlab duo - new cover

GitLab s'engage à améliorer en permanence GitLab Duo Chat, notre assistant d'IA, pour répondre aux besoins en constante évolution de nos utilisateurs. Voici quelques améliorations récentes qui simplifieront votre workflow et amélioreront votre productivité.

Explication des vulnérabilités : une nouvelle intégration

Nous avons franchi une étape importante dans l'évolution de GitLab Duo Chat : l'intégration de l'explication des vulnérabilités de GitLab Duo. Il s'agit de la première fonctionnalité de notre plateforme GitLab Duo à être intégrée à Duo Chat par une équipe externe au groupe dédié à l'IA, mettant ainsi en valeur l'esprit de collaboration et les capacités interfonctionnelles de GitLab.

Principaux points forts de cette intégration :

  • Une exécution rapide : l'équipe est passée d'une phase d'exploration à la mise en œuvre de cette fonctionnalité en seulement trois semaines, démontrant ainsi une grande agilité et vitesse d'exécution.
  • Une collaboration entre les équipes : cette intégration a été menée par des équipes externes au groupe dédié à l'IA, ouvrant ainsi la voie à des intégrations de fonctionnalités plus diversifiées à l'avenir.
  • Une meilleure compréhension des risques liés à la sécurité : les utilisateurs pourront bientôt utiliser Duo Chat pour mieux comprendre les failles de sécurité détectées dans leurs projets.

Cette intégration représente une étape importante pour faire de GitLab Duo Chat un outil encore plus puissant et polyvalent pour les équipes de développement, en particulier dans le domaine de la sécurité.

Prise en compte améliorée du contexte

Nous avons réalisé des progrès significatifs au niveau de la compréhension du contexte par Duo Chat, ce qui rend cet assistant alimenté par l'IA plus intelligent et utile dans divers scénarios.

Disponibilité des connaissances

GitLab Duo Chat a constamment accès aux éléments suivants :

Il est important de noter que Duo Chat ne dispose pas d'un accès illimité à l'ensemble de votre instance ou de votre code base GitLab. Il peut donc uniquement traiter les informations spécifiques que vous fournissez dans votre requête ou celles qui sont immédiatement pertinentes pour le contenu de votre vue actuelle dans l'IDE ou l'interface utilisateur de GitLab.

Nous nous efforçons en permanence d'étendre la connaissance contextuelle de Duo Chat en incluant davantage de types de contenu, en mettant toujours l'accent sur la protection de la vie privée des utilisateurs et la sécurité des données. Cette diversification progressive vise à faire de GitLab Duo Chat un assistant encore plus puissant pour votre workflow de développement, tout en garantissant des limites d'accès aux données appropriées.

Connaissances contextuelles améliorées

GitLab Duo Chat dispose désormais d'une meilleure compréhension du contexte de votre projet, à la fois dans les IDE et l'interface utilisateur de GitLab. Voici quelques exemples de ce que Duo Chat est capable de comprendre.

Dans l'interface utilisateur de GitLab :

  • Les epics : Duo Chat comprend quand vous faites référence à « cette epic » ou utilisez l'URL de l'epic.
  • Les tickets : similaire aux epics, Duo Chat reconnaît « ce ticket » ou l'URL du ticket.
  • Les fichiers de code : lorsqu'un seul fichier est affiché, Duo Chat sait interpréter les requêtes concernant « ce code » ou « ce fichier ».

Dans les IDE :

  • Le code sélectionné : Duo Chat analyse le code que vous avez sélectionné lorsque vous posez des questions sur « ce code » ou « ce fichier ».
  • Les epics et les tickets : Duo Chat est capable de comprendre leur contexte si vous fournissez l'URL.

De plus, lorsque vous utilisez des commandes slash comme /explain, /refactor ou /tests dans les IDE, GitLab Duo Chat a accès au code sélectionné.

Capture d'écran de la fenêtre GitLab Duo Chat

Historique et mise en cache des discussions

GitLab Duo Chat conserve les 50 derniers messages échangés dans l'historique de discussions. Cet historique expire trois jours après la dernière utilisation. La fermeture de votre navigateur ou de votre IDE ne supprimera pas définitivement votre historique tant que le délai spécifié n'est pas dépassé. Cependant, il est important de noter que la conservation à long terme des données de chat n'est actuellement pas disponible.

Annulation des prompts : arrêt des réponses à la demande

L'une des fonctionnalités les plus attendues est désormais disponible : l'annulation des prompts. Vous pouvez désormais annuler les prompts en cours de Duo Chat sur la plateforme GitLab.com. Cette fonctionnalité vous offre un plus grand contrôle sur vos interactions.

  • Disponibilité immédiate : cette fonctionnalité est d'ores et déjà déployée sur la plateforme GitLab.com.
  • Disponibilité prochaine : cette fonctionnalité sera disponible pour les instances auto-gérées dans notre prochaine version. Elle sera fournie aux utilisateurs de GitLab Dedicated à l'occasion de la mise à niveau mensuelle.
  • En cours : intégration pour les extensions de certains éditeurs de code ; suivez l'avancement du projet via ce ticket.

Cette amélioration vous permet d'annuler une réponse si vous avez soumis votre prompt trop rapidement ou si vous avez changé d'avis. Cette fonctionnalité à priori mineure peut cependant vous faire gagner du temps et vous éviter toute frustration.

Pour annuler un prompt dans GitLab Duo Chat, procédez comme suit :

  1. Ouvrez GitLab Duo Chat dans GitLab.com.
  2. Commencez à saisir votre prompt ou votre question, par exemple « De quoi parle ce ticket ? ».

Écran montrant le début de la procédure d'annulation des prompts dans GitLab Duo Chat

  1. Après avoir envoyé votre prompt, si vous souhaitez annuler la réponse, recherchez le nouveau bouton « Annuler » qui apparaît pendant que Duo Chat génère une réponse.

Capture d'écran du bouton Annuler dans GitLab Chat

  1. Cliquez sur le bouton « Annuler » pour suspendre immédiatement le processus de génération de la réponse.

Capture d'écran montrant l'annulation de la réponse

Améliorations de l'architecture de GitLab Duo Chat

Nous avons également apporté des améliorations à l'architecture de GitLab Duo Chat pour rendre cette fonctionnalité plus robuste et plus efficace :

  • Le passage au protocole Language Server Protocol (LSP) permet d'améliorer l'intégration de Duo Chat dans divers environnements de développement.
  • Le Language Server de GitLab est un projet TypeScript expérimental qui fournit une interface commune pour que les extensions IDE intègrent les fonctionnalités de GitLab. Il prend actuellement en charge les suggestions de code de GitLab Duo et à l'avenir prendra aussi en charge GitLab Duo Chat.

Bien que ce changement concerne principalement l'architecture sous-jacente, les utilisateurs peuvent constater :

  • une amélioration de la réactivité et des performances lors de l'utilisation de Duo Chat sur différents IDE et éditeurs ;
  • un comportement plus cohérent des fonctionnalités de Duo Chat dans divers environnements de développement ;
  • une plus grande capacité pour l'ajout de nouvelles fonctionnalités et améliorations à l'avenir.

Découvrez dans la vidéo ci-dessous la façon dont le Language Server de GitLab alimente les suggestions de code :

Et après ?

Nous cherchons sans cesse à améliorer GitLab Duo Chat. Voici quelques exemples de projets en cours :

  • Nous migrons actuellement nos fonctionnalités d'IA vers Claude 3.5 Sonnet. Cette mise à niveau améliorera les performances et les capacités de GitLab Duo Chat et d'autres fonctionnalités alimentées par l'IA.
  • Nous travaillons activement pour que GitLab Duo Chat puisse fonctionner avec des modèles personnalisés et auto-hébergés. Les entreprises pourront ainsi utiliser leurs propres modèles d'IA avec Duo Chat, ce qui leur permettra d'avoir plus de contrôle sur la base de connaissances de l'IA et d'améliorer potentiellement les performances de tâches spécifiques à leur domaine.
  • Nous finalisons actuellement le processus de synchronisation des messages entre différentes interfaces, y compris l'interface web (WebUI). L'objectif est de garantir une communication fluide et cohérente, améliorant ainsi votre expérience de collaboration en veillant à ce que vous ayez accès aux mêmes informations peu importe le dispositif que vous utilisez.
  • Nous migrons la fonctionnalité de « Résumé des commentaires » vers GitLab Duo Chat. Il sera bientôt possible de résumer plusieurs commentaires d'un ticket directement dans Duo Chat, ce qui vous permettra de comprendre plus rapidement les points et enseignements clés des discussions, et d'améliorer votre expérience collaborative.

Nous avons hâte de connaître votre avis sur ces améliorations. Retrouvez-nous bientôt pour découvrir d'autres innovations et améliorations liées à GitLab Duo Chat.

En savoir plus sur le « Développement de GitLab Duo »

Votre avis nous intéresse

Cet article de blog vous a plu ou vous avez des questions ou des commentaires ? Partagez vos réflexions en créant un nouveau sujet dans le forum de la communauté GitLab. Partager votre expérience

Lancez-vous dès maintenant

Découvrez comment la plateforme DevSecOps unifiée de GitLab peut aider votre équipe.

Commencer un essai gratuit

Découvrez le forfait qui convient le mieux à votre équipe

En savoir plus sur la tarification

Découvrez ce que GitLab peut offrir à votre équipe

Échanger avec un expert