Back to Gitlabhq

Configurer GitLab Duo

doc-locale/fr-fr/administration/gitlab_duo/configure/_index.md

19.2.010.8 KB
Original Source

{{< details >}}

  • Offre : GitLab Self-Managed

{{< /details >}}

GitLab Duo est un assistant natif IA qui vous aide tout au long du cycle de vie du développement logiciel.

Vous pouvez configurer GitLab Duo pour utiliser :

  • AI Gateway basée sur le cloud (par défaut) : AI Gateway hébergée par GitLab avec des modèles de langage de fournisseurs.
  • Modèles auto-hébergés : Votre propre AI Gateway et vos propres modèles de langage pour un contrôle total de vos données et de votre sécurité.
  • Configuration hybride : Modèles auto-hébergés pour certaines fonctionnalités et modèles basés sur le cloud pour d'autres.

Prérequis {#prerequisites}

Autoriser les connexions sortantes depuis l'instance GitLab vers GitLab Duo {#allow-outbound-connections-from-the-gitlab-instance-to-gitlab-duo}

  • Les nœuds d'application GitLab doivent se connecter au GitLab Duo Workflow à l'adresse https://duo-workflow-svc.runway.gitlab.net via HTTP/2. L'application et le service communiquent via gRPC.
  • Pour les fonctionnalités de GitLab Duo Agent Platform, vos pare-feux et serveurs proxy HTTP/S doivent autoriser les connexions sortantes vers duo-workflow-svc.runway.gitlab.net sur le port 443 avec https:// et la prise en charge du trafic HTTP/2.

Autoriser les connexions entrantes des clients vers l'instance GitLab {#allow-inbound-connections-from-clients-to-the-gitlab-instance}

Votre instance GitLab doit autoriser les connexions entrantes depuis les clients IDE.

  1. Autoriser les demandes de mise à niveau du protocole WebSocket avec les en-têtes :
    • Connection: upgrade
    • Upgrade: websocket
    • Prise en charge du protocole HTTP/2
    • En-têtes de sécurité WebSocket standard : Sec-WebSocket-*
  2. Activer la prise en charge du protocole wss:// (WebSocket Secure).
  3. Ajouter des points de terminaison spécifiques à autoriser :
    • Point de terminaison principal : wss://<customer-instance>/-/cable
    • Vérifier que le protocole HTTP/2 n'est pas rétrogradé vers HTTP/1.1.
    • Port : 443 (HTTPS/WSS)

Si vous rencontrez des problèmes :

  • Vérifiez les restrictions sur le trafic WebSocket vers wss://gitlab.example.com/-/cable et d'autres domaines .com.
  • Si vous utilisez des proxys inverses comme Apache, vous pourriez voir des problèmes de connexion à GitLab Duo Chat dans vos journaux, comme WebSocket connection to .... failures.

Pour résoudre ce problème, modifiez vos paramètres de proxy :

apache
# Enable WebSocket reverse Proxy
# Needs proxy_wstunnel enabled
  RewriteCond %{HTTP:Upgrade} websocket [NC]
  RewriteCond %{HTTP:Connection} upgrade [NC]
  RewriteRule ^/?(.*) "ws://127.0.0.1:8181/$1" [P,L]

Autoriser les connexions depuis le runner {#allow-connections-from-the-runner}

Pour les fonctionnalités de GitLab Duo Agent Platform qui utilisent des runners, comme les flows, le runner doit pouvoir se connecter à l'instance GitLab.

Les mêmes connexions entrantes des clients vers l'instance GitLab doivent être autorisées en tant que connexions sortantes du runner vers l'instance GitLab.

De plus, les runners doivent pouvoir se connecter à :

DestinationPortObjectif
registry.npmjs.org443Télécharger le package Duo CLI au moment de l'exécution
registry.gitlab.com443Télécharger l'image Docker par défaut (sauf si vous utilisez une image personnalisée)

Si votre organisation ne peut pas autoriser l'accès au registre npm public, vous pouvez utiliser une image Docker personnalisée avec les dépendances requises déjà installées.

Partager les données d'utilisation avec GitLab {#share-usage-data-with-gitlab}

{{< history >}}

{{< /history >}}

Pour contribuer à l'amélioration de la qualité du service, vous pouvez partager des données d'utilisation sur les fonctionnalités de GitLab Duo Agent Platform avec GitLab.

Lorsque vous activez la collecte de données, GitLab enregistre des informations sur l'utilisation des fonctionnalités GitLab Duo. Ces données sont utilisées exclusivement pour l'amélioration du service et le débogage, et non pour l'entraînement de modèles IA.

Pour plus d'informations sur les données collectées, consultez Agent Platform usage data.

Prérequis :

  • Disposer de GitLab 18.9.1 ou version ultérieure

Pour activer la journalisation étendue :

  1. Dans le coin supérieur droit, sélectionnez Admin.
  2. Dans la barre latérale gauche, sélectionnez GitLab Duo.
  3. Sélectionnez Modifier la configuration.
  4. Cochez la case Collecter les données d'utilisation.
  5. Sélectionnez Sauvegarder les modifications.

Utilisation des données avec les modèles auto-hébergés {#data-usage-with-self-hosted-models}

Si vous utilisez une AI Gateway auto-hébergée et des modèles auto-hébergés, les journaux détaillés sont stockés sur votre infrastructure et ne sont pas partagés avec GitLab. Pour partager des données avec GitLab, vous devez configurer votre AI Gateway auto-hébergée pour envoyer des traces vers un service d'observabilité externe.

Vous pouvez utiliser Service Ping pour envoyer des données d'utilisation à GitLab. Ces données sont différentes des données de télémétrie.

Lancer un contrôle d'intégrité pour GitLab Duo {#run-a-health-check-for-gitlab-duo}

{{< details >}}

  • Statut : Bêta

{{< /details >}}

{{< history >}}

{{< /history >}}

Vous pouvez déterminer si votre instance répond aux exigences pour utiliser GitLab Duo. Lorsque le contrôle d'intégrité est terminé, il affiche un résultat de réussite ou d'échec ainsi que les types de problèmes. Si le contrôle d'intégrité échoue à l'un des tests, les utilisateurs pourraient ne pas être en mesure d'utiliser les fonctionnalités GitLab Duo dans votre instance.

Il s'agit d'une fonctionnalité en bêta.

Prérequis :

  • Vous devez être administrateur.

Pour lancer un contrôle d'intégrité :

  1. Dans le coin supérieur droit, sélectionnez Admin.
  2. Dans la barre latérale gauche, sélectionnez GitLab Duo.
  3. Dans le coin supérieur droit, sélectionnez Lancer l'état des services.
  4. Facultatif. Dans GitLab 17.5 et versions ultérieures, une fois le contrôle d'intégrité terminé, vous pouvez sélectionner Télécharger le rapport pour enregistrer un rapport détaillé des résultats du contrôle d'intégrité.

Ces tests sont effectués :

TestDescription
AI GatewayModèles GitLab Duo Self-Hosted uniquement. Vérifie si l'URL de l'AI Gateway est configurée en tant que variable d'environnement. Cette connectivité est requise pour les déploiements de modèles auto-hébergés qui utilisent l'AI Gateway.
RéseauVérifie si votre instance peut se connecter à customers.gitlab.com et à cloud.gitlab.com.

Si votre instance ne peut se connecter à aucune des destinations, assurez-vous que les paramètres de votre pare-feu ou de votre serveur proxy autorisent la connexion. | | Synchronisation | Vérifie si votre abonnement : - A été activé avec un code d'activation et peut être synchronisé avec customers.gitlab.com. - Dispose des identifiants d'accès corrects. - A été synchronisé récemment. Si ce n'est pas le cas ou si les identifiants d'accès sont manquants ou expirés, vous pouvez synchroniser manuellement les données de votre abonnement. | | Code Suggestions | Modèles GitLab Duo Self-Hosted uniquement. Vérifie si Code Suggestions est disponible : - Votre licence inclut l'accès à Code Suggestions. - Vous disposez des autorisations nécessaires pour utiliser la fonctionnalité. | | GitLab Duo Agent Platform | Vérifie si le service backend est opérationnel et accessible. Ce service est requis pour les fonctionnalités agentiques comme Agent Platform et GitLab Duo Agentic Chat. | | Échange système | Vérifie si Code Suggestions peut être utilisé dans votre instance. Si l'évaluation de l'échange système échoue, les utilisateurs pourraient ne pas être en mesure d'utiliser les fonctionnalités GitLab Duo. |

Pour les instances GitLab antérieures à la version 17.10, si vous rencontrez des problèmes avec le contrôle d'intégrité, consultez la page de dépannage.

Autres options d'hébergement {#other-hosting-options}

Par défaut, GitLab Duo utilise des modèles de langage de fournisseurs IA pris en charge et envoie les données via une AI Gateway basée sur le cloud hébergée par GitLab.

Si vous souhaitez héberger vos propres modèles de langage ou AI Gateway :