Date de la publication : 14 août 2025

Lecture : 9 min

Maîtrisez votre IA : utilisez les modèles GitLab Duo Self-Hosted avec AWS Bedrock

Découvrez comment exploiter l'IA tout en gardant le contrôle de vos données, de votre infrastructure et de votre posture de sécurité.

Alors que les entreprises adoptent les capacités d'IA pour accélérer leur cycle de développement logiciel, elles font souvent face à un défi critique : exploiter l'IA tout en conservant le contrôle de leurs données, de leur infrastructure et de leur posture de sécurité. C'est là que GitLab Duo Self-Hosted entre en jeu.

Dans cet article, nous allons parcourir l'implémentation des modèles GitLab Duo Self-Hosted pour aider les entreprises à respecter des exigences strictes de souveraineté des données tout en tirant parti du développement assisté par IA. L'accent est mis sur l'utilisation de modèles hébergés sur AWS Bedrock plutôt que sur la mise en place d'une solution de service LLM comme vLLM. Cependant, la méthodologie peut être appliquée aux modèles fonctionnant dans votre propre centre de données si vous disposez des capacités nécessaires.

Consultez le replay de notre webinaire GitLab Duo : une IA en auto hébergé respectueuse de la confidentialité des données.

Pourquoi GitLab Duo Self-Hosted ?

GitLab Duo Self-Hosted permet de déployer les capacités d'IA de GitLab au sein de votre propre infrastructure, que ce soit sur site, dans un cloud privé ou au sein de votre environnement sécurisé.

Quels sont les principaux avantages ?

Confidentialité et contrôle complets des données : conservez le code sensible et la propriété intellectuelle dans votre périmètre de sécurité, en garantissant qu'aucune donnée ne quitte votre environnement.

Flexibilité des modèles : choisissez parmi une variété de modèles adaptés à vos besoins spécifiques de performance et à vos cas d'usage, notamment les familles Anthropic Claude, Meta Llama, Mistral et OpenAI GPT.

Conformité réglementaire : respectez les exigences réglementaires dans les industries hautement réglementées où les données doivent rester dans des limites géographiques spécifiques.

Personnalisation : configurez les fonctionnalités GitLab Duo qui utilisent des modèles spécifiques pour optimiser les performances et les coûts.

Flexibilité de déploiement : déployez dans des environnements complètement isolés, sur site ou dans des environnements cloud sécurisés.

Vue d'ensemble de l'architecture

La solution GitLab Duo Self-Hosted comprend trois composants principaux :

  1. Une instance GitLab Self-Managed : votre instance GitLab existante où les utilisateurs interagissent avec les fonctionnalités de GitLab Duo.

  2. Une passerelle d’IA (AI-Gateway): un service qui achemine les requêtes entre GitLab et votre backend LLM choisi.

  3. Un backend LLM : le service de modèle IA proprement dit, qui, dans cet article, sera AWS Bedrock. Note : vous pouvez utiliser une autre plateforme de service si vous fonctionnez sur site ou utilisez un autre fournisseur cloud.

Schéma de flux réseau en environnement air-gapped

Prérequis

Avant de commencer, vous aurez besoin :

  • D’une instance GitLab Premium ou GitLab Ultimate (version 17.10 ou ultérieure)

    • Nous recommandons fortement d'utiliser la dernière version de GitLab car nous ajoutons continuellement de nouvelles fonctionnalités à notre plateforme.
  • D’une licence complémentaire GitLab Duo Enterprise

  • D’un compte AWS avec accès aux modèles Bedrock ou votre clé API et identifiants nécessaires pour interroger votre modèle de service LLM

Note : si vous n'êtes pas encore client GitLab, vous pouvez vous inscrire pour bénéficier d'un essai gratuit de GitLab Ultimate, qui inclut GitLab Duo Enterprise.

Étapes d'implémentation

1. Installez la passerelle d’IA

La passerelle d’IA (ou AI-Gateway) est le composant qui achemine les requêtes entre votre instance GitLab et votre infrastructure de service LLM, ici AWS Bedrock. Il peut s'exécuter dans une image Docker. Suivez les instructions de notre documentation d'installation pour commencer.

Pour cet exemple, utilisant AWS Bedrock, vous devez également transmettre l’identifiant AWS et la clé d'accès secrète, ainsi que la région AWS.


AIGW_TAG=self-hosted-v18.1.2-ee`


docker run -d -p 5052:5052 \

   -e AIGW_GITLAB_URL=<your_gitlab_instance> \

   -e AIGW_GITLAB_API_URL=https://<your_gitlab_domain>/api/v4/ \

   -e AWS_ACCESS_KEY_ID=$AWS_KEY_ID

   -e AWS_SECRET_ACCESS_KEY=$AWS_SECRET_ACCESS_KEY \

   -e AWS_REGION_NAME=$AWS_REGION_NAME \

registry.gitlab.com/gitlab-org/modelops/applied-ml/code-suggestions/ai-assist/model-gateway:$AIGW_TAG \

Voici la liste des AIGW_TAG.

Dans cet exemple, nous utilisons Docker, mais il est également possible d'utiliser le chart Helm. Consultez notre documentation d'installation pour plus d'informations.

2. Configurez GitLab pour accéder à la passerelle d’IA

Maintenant que la passerelle d’IA (AI-Gateway) est en cours d'exécution, vous devez configurer votre instance GitLab pour l'utiliser.

  1. Dans la barre latérale gauche, en bas, sélectionnez Admin.

  2. Sélectionnez GitLab Duo.

  3. Dans la section GitLab Duo, sélectionnez Modifier la configuration.

  4. Sous URL locale de la passerelle d’IA, entrez l'URL de votre passerelle et le port du conteneur (par exemple, https://ai-gateway.example.com:5052).

  5. Sélectionnez Enregistrer les modifications.

Configuration de GitLab pour accéder au AI-Gateway

3. Accédez aux modèles depuis AWS Bedrock

Ensuite, demandez l'accès aux modèles disponibles sur AWS Bedrock.

  1. Naviguez vers votre compte AWS et Bedrock.

  2. Sous Accès aux modèles, sélectionnez les modèles que vous souhaitez utiliser et suivez les instructions pour obtenir l'accès.

Vous trouverez plus d'informations dans la documentation AWS Bedrock.

4. Configurez le modèle auto-hébergé

Maintenant, configurons un modèle AWS Bedrock spécifique pour l'utiliser avec GitLab Duo.

Ajout d’un modèle auto-hébergé

  1. Dans la barre latérale gauche, en bas, sélectionnez Admin.

  2. Sélectionnez GitLab Duo Self-Hosted.

  3. Sélectionnez Ajouter un modèle auto-hébergé.

  4. Remplissez les champs suivants :

    • Nom du déploiement : un nom pour identifier cette configuration de modèle (par exemple, « Mixtral 8x7B »)
    • Plateforme : choisissez AWS Bedrock
    • Famille de modèles : sélectionnez un modèle, par exemple « Mixtral »
    • Identifiant du modèle : bedrock/identifiant-du-modèle depuis la liste supportée.
  5. Sélectionnez Créer le modèle auto-hébergé.

5. Configurez les fonctionnalités GitLab Duo pour utiliser votre modèle auto-hébergé

Après avoir configuré votre modèle, assignez-le aux fonctionnalités GitLab Duo spécifiques.

Configuration des fonctionnalités GitLab Duo Self-Hosted

  1. Dans la barre latérale gauche, en bas, sélectionnez Admin.

  2. Sélectionnez GitLab Duo Self-Hosted.

  3. Sélectionnez l'onglet Fonctionnalités alimentées par l'IA.

  4. Pour chaque fonctionnalité (par exemple, suggestions de code, GitLab Duo Chat) et sous-fonctionnalité (par exemple, génération de code, explication du code), sélectionnez le modèle que vous venez de configurer dans le menu déroulant.

Par exemple, vous pourriez assigner Mixtral 8x7B aux tâches de génération de code et Claude 3 Sonnet à la fonctionnalité GitLab Duo Chat. Consultez notre documentation sur les exigences pour sélectionner le bon modèle en fonction de votre usage depuis la liste de compatibilité des modèles par fonctionnalité de GitLab Duo.

Vérification de votre configuration

Pour vous assurer que votre implémentation de GitLab Duo Self-Hosted avec AWS Bedrock fonctionne correctement, effectuez les vérifications suivantes :

1. Lancez une vérification de l’état des services

Après avoir lancé une vérification de l’état des services de votre modèle pour vous assurer qu'il est opérationnel, retournez à la section GitLab Duo depuis la page Admin et cliquez sur Lancer la vérification de l'état des services (Run health check).

Cela permet de vérifier si :

  • L'URL de la passerelle d’IA est correctement configurée.

  • Votre instance peut se connecter à la passerelle d’IA.

  • La licence GitLab Duo est activée.

  • Un modèle est assigné aux suggestions de code (car c'est le modèle utilisé pour tester la connexion).

Lancement d’une vérification de l’état des services

Si l'état des services signale des problèmes, consultez notre guide de dépannage pour découvrir les erreurs courantes.

2. Testez les fonctionnalités de GitLab Duo

Essayez quelques fonctionnalités de GitLab Duo pour vous assurer qu'elles fonctionnent :

  • Dans l'interface utilisateur, ouvrez GitLab Duo Chat et posez-lui une question.

  • Ouvrez le Web IDE

  • Créez un nouveau fichier de code et voyez si les suggestions de code apparaissent.

  • Sélectionnez un extrait de code et utilisez la commande /explain pour recevoir une explication de GitLab Duo Chat.

3. Vérifiez les logs de la passerelle d’IA

Examinez les logs de la passerelle d’IA pour voir les requêtes arrivant à la passerelle depuis le modèle sélectionné.

Dans votre terminal, exécutez :


docker logs <ai-gateway-container-id>

Optionnel : dans AWS, vous pouvez activer CloudWatch et S3 comme destinations de logs. Cela vous permettra de voir toutes vos requêtes, prompts et réponses dans CloudWatch.

Avertissement : gardez à l'esprit que l'activation de ces logs dans AWS enregistre les données utilisateur, ce qui peut ne pas être conforme aux règles de confidentialité.

Et voilà, vous avez maintenant un accès complet à l'utilisation des fonctionnalités d’IA de GitLab Duo sur toute la plateforme tout en conservant un contrôle total sur le flux de données opérant au sein du cloud AWS sécurisé.

Prochaines étapes

Sélectionnez le bon modèle pour chaque cas d'usage

L'équipe GitLab teste activement les performances de chaque modèle pour chaque fonctionnalité et fournit un classement par niveau de performance et d'adéquation des modèles selon la fonctionnalité :

  • Entièrement compatible : le modèle peut probablement gérer la fonctionnalité sans aucune perte de qualité.

  • Largement compatible : le modèle prend en charge la fonctionnalité, mais il peut y avoir des compromis ou des limitations.

  • Non compatible : le modèle ne convient pas à la fonctionnalité, entraînant probablement une perte significative de qualité ou des problèmes de performance.

À ce jour, la plupart des fonctionnalités GitLab Duo peuvent être configurées avec Self-Hosted. La vue d'ensemble complète est disponible dans notre documentation.

Au-delà d'AWS Bedrock

Bien que ce guide se concentre sur l'intégration AWS Bedrock, GitLab Duo Self-Hosted prend en charge plusieurs options de déploiement :

  • Sur site avec vLLM : éxécutez des modèles localement avec vLLM pour des environnements complètement isolés.

  • Azure OpenAI Service : similaire à AWS Bedrock, vous pouvez utiliser Azure OpenAI pour des modèles comme GPT-4.

Conclusion

GitLab Duo Self-Hosted offre une solution puissante pour les entreprises qui ont besoin d'outils de développement alimentés par l'IA tout en maintenant un contrôle strict sur leurs données et leur infrastructure. En suivant ce guide d'implémentation, vous pouvez déployer une solution robuste qui répond aux exigences de sécurité et de conformité sans compromettre les capacités avancées que l'IA apporte à votre cycle de développement logiciel.

Pour les entreprises ayant des besoins stricts en matière de sécurité et de conformité, GitLab Duo Self-Hosted trouve l'équilibre parfait entre innovation et contrôle, vous permettant d'exploiter la puissance de l'IA tout en préservant la sécurité de votre code et votre propriété intellectuelle.

Vous souhaitez en savoir plus sur la mise en œuvre de GitLab Duo Self-Hosted dans votre environnement ? Contactez notre équipe commerciale ou consultez notre documentation pour obtenir des informations plus détaillées.

Consultez le replay de notre webinaire GitLab Duo : une IA en auto hébergé respectueuse de la confidentialité des données.

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 sujet dans le forum de la communauté GitLab.
Share your feedback

Plus de 50 % des entreprises du classement Fortune 100 font confiance à GitLab

Commencez à livrer des logiciels de meilleurs qualité plus rapidement

Découvrez comment la plateforme DevSecOps intelligente

peut aider votre équipe.