[{"data":1,"prerenderedAt":1089},["ShallowReactive",2],{"/fr-fr/blog/developing-gitlab-duo-how-we-validate-and-test-ai-models-at-scale":3,"navigation-fr-fr":305,"banner-fr-fr":740,"footer-fr-fr":748,"blog-post-authors-fr-fr-Susie Bitters":986,"blog-related-posts-fr-fr-developing-gitlab-duo-how-we-validate-and-test-ai-models-at-scale":1002,"blog-promotions-fr-fr":1027,"next-steps-fr-fr":1080},{"id":4,"title":5,"authors":6,"body":8,"category":281,"date":282,"description":283,"extension":284,"externalUrl":285,"faq":285,"featured":270,"heroImage":286,"meta":287,"navigation":270,"path":288,"seo":289,"slug":296,"stem":297,"tags":298,"template":303,"updatedDate":285,"__hash__":304},"blogPosts/fr-fr/blog/developing-gitlab-duo-how-we-validate-and-test-ai-models-at-scale.md","GitLab Duo : comment nous validons et testons les modèles d'IA à grande échelle",[7],"Susie Bitters",{"type":9,"value":10,"toc":271},"minimark",[11,36,57,69,74,84,87,91,100,103,125,135,140,143,148,151,154,157,161,194,198,201,205,208,219,222,225,228,231,235,249,256],[12,13,14],"p",{},[15,16,17],"em",{},[18,19,20,21,28,29,35],"strong",{},"L'",[22,23,27],"a",{"href":24,"rel":25,"title":26},"https://about.gitlab.com/fr-fr/topics/agentic-ai/",[],"Qu'est-ce que l'IA générative ?","IA générative"," marque une avancée majeure dans le domaine du développement logiciel, simplifiant le processus de développement, de sécurisation et d'exploitation des logiciels. Notre nouvelle série d’articles de blog, rédigée par nos équipes produit et ingénierie, vous propose un aperçu de notre processus de création, de test et de déploiement des fonctionnalités d'IA que vous avez besoin d'intégrer dans l'ensemble de l'entreprise. Explorez les nouvelles capacités de GitLab Duo et découvrez comment elles aideront les équipes ",[22,30,34],{"href":31,"rel":32,"title":33},"https://about.gitlab.com/fr-fr/topics/devsecops/",[],"Qu'est-ce que le DevSecOps?","DevSecOps"," à livrer de meilleurs résultats aux clients.",[12,37,38,39,44,45,50,51,56],{},"GitLab attache une grande importance à la confiance que nos clients nous accordent. Maintenir cette confiance implique une transparence dans la manière dont nous concevons, évaluons et garantissons la qualité des fonctionnalités d'IA de ",[22,40,43],{"href":41,"rel":42,"title":43},"https://about.gitlab.com/fr-fr/gitlab-duo-agent-platform/",[],"GitLab Duo",". Les fonctionnalités de GitLab Duo reposent sur un ensemble diversifié de modèles, ce qui nous permet de prendre en charge une multitude de cas d'utilisation et apporte de la flexibilité à nos clients. GitLab n'est pas lié à un seul fournisseur de modèles. Nous utilisons actuellement les modèles de fondation de ",[22,46,49],{"href":47,"rel":48},"https://gitlab.com/gitlab-org/modelops/applied-ml/code-suggestions/ai-assist/-/blob/main/ai_gateway/models/vertex_text.py?ref_type=heads#L86",[],"Google"," et ",[22,52,55],{"href":53,"rel":54},"https://gitlab.com/gitlab-org/modelops/applied-ml/code-suggestions/ai-assist/-/blob/main/ai_gateway/models/anthropic.py?ref_type=heads#L62",[],"Anthropic",". Néanmoins, nous procédons continuellement à l'évaluation des modèles les plus adaptés aux cas d'utilisation de GitLab Duo. Dans cet article, nous vous présentons un aperçu de notre processus de validation des modèles d'IA.",[58,59,60],"blockquote",{},[12,61,62,68],{},[22,63,67],{"href":64,"rel":65,"title":66},"https://about.gitlab.com/fr-fr/gitlab-duo-agent-platform/#free-trial",[],"Essai gratuit de GitLab Duo","Essayez GitLab Duo gratuitement"," dès aujourd'hui !",[70,71,73],"h2",{"id":72},"comprendre-les-grands-modèles-de-langage-llm","Comprendre les grands modèles de langage (LLM)",[12,75,76,77,83],{},"Les ",[22,78,82],{"href":79,"rel":80,"title":81},"https://about.gitlab.com/fr-fr/blog/large-language-model/",[],"Qu'est-ce qu'un grand modèle de langage ?","grands modèles de langage (LLM)"," sont des modèles d'IA générative qui alimentent de nombreuses fonctionnalités d'IA sur l'ensemble de la plateforme. Entraînés sur de vastes ensembles de données, les LLM prédisent le mot suivant dans une séquence en fonction du contexte précédent. Sur la base d'un prompt, ils génèrent un texte semblable à celui d’un être humain en échantillonnant à partir de la distribution de probabilité des mots conditionnée par le prompt.",[12,85,86],{},"Les LLM permettent des suggestions de code intelligentes, des chatbots conversationnels, des explications de code, des analyses de vulnérabilités et bien plus encore. Leur capacité à produire des résultats variés pour un prompt donné rend difficile l'évaluation standardisée de la qualité. Les LLM peuvent être optimisés pour différentes caractéristiques. C'est la raison pour laquelle tant de modèles d'IA sont en cours de développement.",[70,88,90],{"id":89},"tester-à-grande-échelle","Tester à grande échelle",[12,92,93,94,99],{},"Contrairement aux systèmes logiciels traditionnels où les entrées et les sorties peuvent être plus facilement définies et testées, les LLM produisent des résultats souvent nuancés, diversifiés et dépendants du contexte. Tester ces modèles nécessite des stratégies complètes qui tiennent compte des interprétations subjectives et variables de la qualité, ainsi que de la nature stochastique de leurs résultats. Nous ne pouvons donc pas juger de la qualité du résultat d'un LLM de manière individuelle ou anecdotique ; nous devons plutôt être capables d'examiner le schéma global du comportement d'un LLM. Pour avoir une idée de ces schémas, nous devons réaliser des tests à grande échelle. Les tests à grande échelle font référence au processus d'évaluation des performances, de la fiabilité et de la robustesse d'un système ou d'une application sur un large éventail de données et de cas d'utilisation. Notre ",[22,95,98],{"href":96,"rel":97},"https://docs.gitlab.com/development/ai_features/ai_evaluation_guidelines/",[],"Framework d'évaluation centralisé (CEF)"," utilise des milliers de prompts liés à des dizaines de cas d'utilisation pour nous permettre d'identifier des schémas significatifs et d'évaluer le comportement global de nos modèles LLM de fondation et des fonctionnalités GitLab Duo dans lesquelles ils sont intégrés.",[12,101,102],{},"Les tests à grande échelle nous aident à :",[104,105,106,113,119],"ul",{},[107,108,109,112],"li",{},[18,110,111],{},"Garantir la qualité :"," les tests à grande échelle nous permettent d'évaluer la qualité et la fiabilité de ces modèles sur un large éventail de scénarios et d’entrées. En validant les résultats de ces modèles à grande échelle, nous pouvons commencer à identifier des schémas et à atténuer les problèmes potentiels tels que les biais systématiques, les anomalies et les inexactitudes.",[107,114,115,118],{},[18,116,117],{},"Optimiser les performances :"," la mise à l'échelle des efforts de test permet à GitLab d'évaluer les performances et l'efficacité des LLM dans des conditions réelles. Cela comprend l'évaluation de facteurs tels que la qualité du résultat, la latence et le coût pour optimiser le déploiement et l'exploitation de ces modèles dans les fonctionnalités de GitLab Duo.",[107,120,121,124],{},[18,122,123],{},"Atténuer les risques :"," tester les LLM à grande échelle contribue à atténuer les risques associés à leur déploiement dans des applications critiques. En effectuant des tests approfondis sur divers ensembles de données et cas d'utilisation, nous pouvons identifier et résoudre les défaillances potentielles, les vulnérabilités de sécurité et les considérations éthiques avant qu'ils n'affectent nos clients.",[12,126,127,128,134],{},"Tester les LLM à grande échelle est impératif pour garantir leur fiabilité et leur robustesse en vue de leur déploiement au sein de la ",[22,129,133],{"href":130,"rel":131,"title":132},"https://about.gitlab.com/fr-fr/platform/",[],"Plateforme DevSecOps de GitLab","plateforme DevSecOps de GitLab",". En investissant dans des stratégies de test complètes qui englobent divers ensembles de données, cas d'utilisation et scénarios, GitLab s'efforce de libérer tout le potentiel des workflows alimentés par l'IA tout en atténuant les risques potentiels.",[136,137,139],"h3",{"id":138},"comment-nous-testons-à-grande-échelle","Comment nous testons à grande échelle",[12,141,142],{},"Voici les étapes que nous suivons pour tester les LLM à grande échelle.",[144,145,147],"h4",{"id":146},"étape1-créer-une-bibliothèque-de-prompts-comme-proxy-pour-la-production","Étape 1 : Créer une bibliothèque de prompts comme proxy pour la production",[12,149,150],{},"Alors que d'autres entreprises consultent et utilisent les données clients pour entraîner leurs fonctionnalités d'IA, GitLab ne procède actuellement pas de la sorte. En conséquence, nous avons dû développer une bibliothèque de prompts complète qui sert de proxy à la fois pour la mise à l'échelle et pour l'activité de production.",[12,152,153],{},"Cette bibliothèque de prompts est composée de questions et de réponses. Les questions représentent les types de requêtes ou d'entrées que nous nous attendons à voir en production, tandis que les réponses représentent une vérité terrain de ce que serait notre réponse idéale. Cette réponse de référence pourrait également être considérée mentalement comme une réponse cible. La question tout comme la réponse peuvent être générées par des humains, mais ne le sont pas nécessairement. Ces paires de questions/réponses nous offrent une base de comparaison et un cadre de référence qui nous permettent de faire ressortir les différences entre les modèles et les fonctionnalités. Lorsque l'on pose la même question à plusieurs modèles et qu'ils génèrent des réponses différentes, nous pouvons utiliser notre réponse de référence pour déterminer quel modèle a fourni une réponse qui est le plus étroitement alignée avec notre cible et les noter en conséquence.",[12,155,156],{},"Une fois de plus, il est essentiel qu'une bibliothèque de prompts complète soit représentative des entrées que nous prévoyons de rencontrer en production. Nous voulons savoir dans quelle mesure les modèles de fondation s'adaptent à notre cas d'utilisation spécifique et dans quelle mesure nos fonctionnalités sont performantes. Il existe de nombreux ensembles de données de prompts de référence, mais ceux-ci peuvent ne pas correspondre aux cas d'utilisation que nous envisageons pour les fonctionnalités chez GitLab. Notre bibliothèque de prompts, en revanche, est conçue pour être spécifique aux fonctionnalités et aux cas d'utilisation de GitLab.",[144,158,160],{"id":159},"étape2-performance-du-modèle-de-référence","Étape 2 : Performance du modèle de référence",[12,162,163,164,168,169,174,175,174,179,183,184,188,189,193],{},"Une fois que nous avons créé une bibliothèque de prompts qui reflète avec précision l'activité de production, nous intégrons ces questions dans ",[22,165,167],{"href":96,"rel":166},[],"différents modèles"," pour tester dans quelle mesure ils répondent aux besoins de nos clients. Nous comparons chaque réponse à notre vérité terrain et lui attribuons un classement basé sur une série de métriques, incluant : le ",[22,170,173],{"href":171,"rel":172},"https://docs.gitlab.com/development/ai_features/glossary/",[],"score de similarité cosinus",", le ",[22,176,178],{"href":171,"rel":177},[],"score de similarité croisée",[22,180,182],{"href":171,"rel":181},[],"juge LLM"," et le ",[22,185,187],{"href":171,"rel":186},[],"filtrage de consensus avec un juge LLM",". Cette première itération nous fournit une base de référence pour évaluer la performance de chaque modèle et guide notre sélection d'un modèle de fondation pour nos fonctionnalités. Par souci de brièveté, nous n'entrerons pas dans les détails ici, mais nous vous encourageons à en savoir plus sur ces métriques ",[22,190,192],{"href":96,"rel":191},[],"en consultant notre page AI Evaluation Metrics",". Il est important de noter que ce n'est pas un problème résolu ; l'industrie de l'IA au sens large mène activement des recherches et développe de nouvelles techniques. L'équipe de validation des modèles de GitLab reste à l'affût des actualités de ce secteur et itère continuellement sur la façon dont nous mesurons et évaluons les LLM que GitLab Duo utilise.",[144,195,197],{"id":196},"étape3-développer-des-fonctionnalités","Étape 3 : Développer des fonctionnalités",[12,199,200],{},"Maintenant que nous disposons d'une base de référence pour les performances du modèle que nous avons sélectionné, nous pouvons commencer à développer nos fonctionnalités en toute confiance. Bien que l'ingénierie des prompts suscite beaucoup d'enthousiasme, se concentrer uniquement sur le changement du comportement d'un modèle via le prompting (ou toute autre technique) sans validation signifie que vous opérez à l'aveugle et que vous surajustez très probablement vos prompts. Vous pourriez résoudre un problème, mais en causer une dizaine d'autres sans le savoir. La création d'une base de référence pour évaluer les performances d'un modèle nous permet de suivre l'évolution du comportement au fil du temps pour tous les cas d'utilisation dont nous avons besoin. Chez GitLab, nous revalidons quotidiennement les performances de nos fonctionnalités pendant le développement actif pour nous assurer que toutes les modifications améliorent la fonctionnalité globale.",[144,202,204],{"id":203},"étape4-itérer-encore-et-encore","Étape 4 : Itérer encore et encore",[12,206,207],{},"Voici comment fonctionnent nos itérations expérimentales. À chaque cycle, nous examinons les scores de nos tests à grande échelle pour identifier des schémas :",[104,209,210,213,216],{},[107,211,212],{},"Quels sont les points communs entre les domaines les moins performants de notre fonctionnalité ?",[107,214,215],{},"Notre fonctionnalité se comporte-t-elle mal en fonction d'une métrique spécifique ou d'un cas d'utilisation particulier ?",[107,217,218],{},"Observons-nous des erreurs récurrentes qui apparaissent en réponse à un certain type de question ?",[12,220,221],{},"Les schémas de ce type ne commencent à émerger que lorsque nous effectuons des tests à grande échelle, ce qui nous permet de cibler nos versions expérimentales. Sur la base de ces schémas, nous proposons une variété de fonctionnalités expérimentales ou d'approches pour essayer d'améliorer les performances dans un domaine spécifique et sur une métrique spécifique.",[12,223,224],{},"Cependant, les tests à grande échelle sont à la fois coûteux et chronophages. Pour permettre une itération plus rapide et moins coûteuse, nous concevons un ensemble de données à plus petite échelle qui agira comme un mini-proxy. Le sous-ensemble ciblé sera pondéré pour inclure les paires de questions/réponses que nous souhaitons améliorer, et le sous-ensemble plus large comprendra également un échantillonnage de tous les autres cas d'utilisation et scores pour nous assurer que nos modifications n'affectent pas négativement la fonctionnalité de manière générale. Le but sera d'effectuer la modification et de l'exécuter sur le sous-ensemble de données ciblé et d'observer comment la nouvelle réponse se compare à la base de référence et comment elle se compare à la vérité terrain.",[12,226,227],{},"Une fois que nous avons trouvé un prompt qui répond au cas d'utilisation spécifique sur lequel nous travaillons avec le sous-ensemble ciblé, nous validons ce prompt par rapport à un sous-ensemble de données plus large afin de nous assurer qu'il n'affecte pas négativement d'autres aspects de la fonctionnalité. Ce n'est que lorsque nous pensons que le nouveau prompt améliore nos performances dans notre domaine cible grâce aux métriques de validation ET qu'il ne dégrade pas les performances ailleurs, que nous poussons cette modification en production.",[12,229,230],{},"L'ensemble du framework d'évaluation centralisé est ensuite exécuté avec le nouveau prompt et nous validons qu'il a augmenté les performances de l'ensemble de la fonctionnalité par rapport à la base de référence de la veille. C'est ainsi que GitLab itère constamment afin de s'assurer que vous tirez parti des meilleures et des plus récentes performances des fonctionnalités alimentées par l'IA dans l'écosystème GitLab. Cette approche nous permet de nous assurer que nous continuons à travailler plus rapidement, ensemble.",[136,232,234],{"id":233},"rendre-gitlab-duo-encore-meilleur","Rendre GitLab Duo encore meilleur",[12,236,237,238,183,243,248],{},"Nous espérons que cet article vous donnera un aperçu de la façon dont nous développons de manière responsable les fonctionnalités de GitLab Duo. Ce processus a été développé alors que nous avons mis les ",[22,239,242],{"href":240,"rel":241},"https://docs.gitlab.com/user/project/repository/code_suggestions/",[],"suggestions de code GitLab Duo",[22,244,247],{"href":245,"rel":246},"https://docs.gitlab.com/user/gitlab_duo_chat/",[],"GitLab Duo Chat"," en phase de disponibilité générale. Nous avons également intégré ce processus de validation dans notre processus de développement lorsque nous itérons sur les fonctionnalités de GitLab Duo. Il faut beaucoup de tâtonnements, et il arrive souvent qu'en corrigeant un élément, on en détériore trois autres. Mais nous disposons d’informations basées sur les données concernant ces impacts, ce qui nous aide à nous assurer que GitLab Duo s'améliore constamment.",[58,250,251],{},[12,252,253,68],{},[22,254,67],{"href":64,"rel":255,"title":66},[],[257,258,261],"figure",{"className":259},[260],"video_container",[262,263],"iframe",{"width":264,"height":265,"src":266,"title":267,"frameBorder":268,"allow":269,"allowFullScreen":270},560,315,"https://www.youtube-nocookie.com/embed/LifJdU3Qagw?si=A4kl6d32wPYC4168","YouTube video player","0","accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share",true,{"title":272,"searchDepth":273,"depth":273,"links":274},"",2,[275,276],{"id":72,"depth":273,"text":73},{"id":89,"depth":273,"text":90,"children":277},[278,280],{"id":138,"depth":279,"text":139},3,{"id":233,"depth":279,"text":234},"ai","2024-05-09","Notre série d’articles de blog débute avec un aperçu de la façon dont nous évaluons les grands modèles de langage (LLM), les adaptons à des cas d'utilisation et les affinons pour fournir de meilleures réponses aux utilisateurs.","md",null,"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659856/Blog/Hero%20Images/blog-hero-banner-1-0178-820x470-fy25.png",{},"/fr-fr/blog/developing-gitlab-duo-how-we-validate-and-test-ai-models-at-scale",{"ogTitle":290,"ogImage":286,"ogDescription":291,"ogSiteName":292,"noIndex":293,"ogType":294,"ogUrl":295,"title":290,"canonicalUrls":295,"description":291},"GitLab Duo : validation et tests des modèles d'IA","Découvrez comment nous évaluons les LLM, les adaptons à des cas d'utilisation et les affinons pour fournir de meilleures réponses aux utilisateurs. ","https://about.gitlab.com",false,"article","https://about.gitlab.com/blog/developing-gitlab-duo-how-we-validate-and-test-ai-models-at-scale","developing-gitlab-duo-how-we-validate-and-test-ai-models-at-scale","fr-fr/blog/developing-gitlab-duo-how-we-validate-and-test-ai-models-at-scale",[299,34,300,301,302],"AI","DevSecOps platform","features","inside GitLab","BlogPost","1mxL_o9f43xEV_7yRPLR1SWxCcdYPAM75cEvYTEb1so",{"logo":306,"freeTrial":311,"sales":316,"login":321,"items":326,"search":655,"minimal":691,"duo":710,"switchNav":719,"pricingDeployment":730},{"config":307},{"href":308,"dataGaName":309,"dataGaLocation":310},"/fr-fr/","gitlab logo","header",{"text":312,"config":313},"Commencer un essai gratuit",{"href":314,"dataGaName":315,"dataGaLocation":310},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com/fr-fr&glm_content=default-saas-trial/","free trial",{"text":317,"config":318},"Demander une démo",{"href":319,"dataGaName":320,"dataGaLocation":310},"/fr-fr/sales/?contact-topic=request-demo","sales",{"text":322,"config":323},"Connexion",{"href":324,"dataGaName":325,"dataGaLocation":310},"https://gitlab.com/users/sign_in/","sign in",[327,356,458,463,577,633],{"text":328,"config":329,"menu":331},"Plateforme",{"dataNavLevelOne":330},"platform",{"type":332,"columns":333},"cards",[334,340,348],{"title":328,"description":335,"link":336},"La plateforme d'orchestration intelligente pour le DevSecOps",{"text":337,"config":338},"Explorer notre plateforme",{"href":339,"dataGaName":330,"dataGaLocation":310},"/fr-fr/platform/",{"title":341,"description":342,"link":343},"GitLab Duo Agent Platform","L'IA agentique pour l'ensemble du cycle de développement logiciel",{"text":344,"config":345},"Découvrir GitLab Duo",{"href":346,"dataGaName":347,"dataGaLocation":310},"/fr-fr/gitlab-duo-agent-platform/","gitlab duo agent platform",{"title":349,"description":350,"link":351},"Pourquoi GitLab ?","Découvrez les principales raisons pour lesquelles les entreprises choisissent GitLab",{"text":352,"config":353},"En savoir plus",{"href":354,"dataGaName":355,"dataGaLocation":310},"/fr-fr/why-gitlab/","why gitlab",{"text":357,"left":270,"config":358,"menu":360},"Produit",{"dataNavLevelOne":359},"solutions",{"type":361,"link":362,"columns":366,"feature":437},"lists",{"text":363,"config":364},"Voir toutes les solutions",{"href":365,"dataGaName":359,"dataGaLocation":310},"/fr-fr/solutions/",[367,392,415],{"title":368,"description":369,"link":370,"items":375},"Automatisation","CI/CD et automatisation pour accélérer le déploiement",{"config":371},{"icon":372,"href":373,"dataGaName":374,"dataGaLocation":310},"AutomatedCodeAlt","/fr-fr/solutions/delivery-automation/","automated software delivery",[376,380,383,388],{"text":377,"config":378},"CI/CD",{"href":379,"dataGaLocation":310,"dataGaName":377},"/fr-fr/solutions/continuous-integration/",{"text":341,"config":381},{"href":346,"dataGaLocation":310,"dataGaName":382},"gitlab duo agent platform - product menu",{"text":384,"config":385},"Gestion du code source",{"href":386,"dataGaLocation":310,"dataGaName":387},"/fr-fr/solutions/source-code-management/","Source Code Management",{"text":389,"config":390},"Livraison de logiciels automatisée",{"href":373,"dataGaLocation":310,"dataGaName":391},"Automated software delivery",{"title":393,"description":394,"link":395,"items":400},"Sécurité","Livrez du code plus rapidement sans compromettre la sécurité",{"config":396},{"href":397,"dataGaName":398,"dataGaLocation":310,"icon":399},"/fr-fr/solutions/application-security-testing/","security and compliance","ShieldCheckLight",[401,405,410],{"text":402,"config":403},"Tests de sécurité des applications",{"href":397,"dataGaName":404,"dataGaLocation":310},"Application security testing",{"text":406,"config":407},"Sécurité de la chaîne d'approvisionnement logicielle",{"href":408,"dataGaLocation":310,"dataGaName":409},"/fr-fr/solutions/supply-chain/","Software supply chain security",{"text":411,"config":412},"Conformité logicielle",{"href":413,"dataGaName":414,"dataGaLocation":310},"/fr-fr/solutions/software-compliance/","software compliance",{"title":416,"link":417,"items":422},"Mesures",{"config":418},{"icon":419,"href":420,"dataGaName":421,"dataGaLocation":310},"DigitalTransformation","/fr-fr/solutions/visibility-measurement/","visibility and measurement",[423,427,432],{"text":424,"config":425},"Visibilité et mesures",{"href":420,"dataGaLocation":310,"dataGaName":426},"Visibility and Measurement",{"text":428,"config":429},"Gestion de la chaîne de valeur",{"href":430,"dataGaLocation":310,"dataGaName":431},"/fr-fr/solutions/value-stream-management/","Value Stream Management",{"text":433,"config":434},"Analyses et informations",{"href":435,"dataGaLocation":310,"dataGaName":436},"/fr-fr/solutions/analytics-and-insights/","Analytics and insights",{"title":438,"type":361,"items":439},"GitLab",[440,446,452],{"text":441,"config":442},"Entreprises",{"icon":443,"href":444,"dataGaLocation":310,"dataGaName":445},"Building","/fr-fr/enterprise/","enterprise",{"text":447,"config":448},"Pour les PME",{"icon":449,"href":450,"dataGaLocation":310,"dataGaName":451},"Work","/fr-fr/small-business/","small business",{"text":453,"config":454},"Pour le secteur public",{"icon":455,"href":456,"dataGaLocation":310,"dataGaName":457},"Organization","/fr-fr/solutions/public-sector/","public sector",{"text":459,"config":460},"Tarifs",{"href":461,"dataGaName":462,"dataGaLocation":310,"dataNavLevelOne":462},"/fr-fr/pricing/","pricing",{"text":464,"config":465,"menu":467},"Ressources",{"dataNavLevelOne":466},"resources",{"type":361,"link":468,"columns":472,"feature":566},{"text":469,"config":470},"Afficher toutes les ressources",{"href":471,"dataGaName":466,"dataGaLocation":310},"/fr-fr/resources/",[473,506,533],{"title":474,"items":475},"Premiers pas",[476,481,486,491,496,501],{"text":477,"config":478},"Installation",{"href":479,"dataGaName":480,"dataGaLocation":310},"/fr-fr/install/","install",{"text":482,"config":483},"Guides de démarrage",{"href":484,"dataGaName":485,"dataGaLocation":310},"/fr-fr/get-started/","quick setup checklists",{"text":487,"config":488},"Apprentissage",{"href":489,"dataGaLocation":310,"dataGaName":490},"https://university.gitlab.com/","learn",{"text":492,"config":493},"Documentation",{"href":494,"dataGaName":495,"dataGaLocation":310},"https://docs.gitlab.com/","product documentation",{"text":497,"config":498},"Vidéos sur les bonnes pratiques",{"href":499,"dataGaName":500,"dataGaLocation":310},"/fr-fr/getting-started-videos/","best practice videos",{"text":502,"config":503},"Intégrations",{"href":504,"dataGaName":505,"dataGaLocation":310},"/fr-fr/integrations/","integrations",{"title":507,"items":508},"Découvrir",[509,514,519,524,528],{"text":510,"config":511},"Témoignages clients",{"href":512,"dataGaName":513,"dataGaLocation":310},"/fr-fr/customers/","customer success stories",{"text":515,"config":516},"Blog",{"href":517,"dataGaName":518,"dataGaLocation":310},"/fr-fr/blog/","blog",{"text":520,"config":521},"Demo Hub",{"href":522,"dataGaName":523,"dataGaLocation":310},"/fr-fr/demo-hub/","demo hub",{"text":525,"config":526},"The Source",{"href":527,"dataGaName":518,"dataGaLocation":310},"/fr-fr/the-source/",{"text":529,"config":530},"Travail à distance",{"href":531,"dataGaName":532,"dataGaLocation":310},"https://handbook.gitlab.com/handbook/company/culture/all-remote/","remote",{"title":534,"items":535},"Connecter",[536,541,546,551,556,561],{"text":537,"config":538},"Services GitLab",{"href":539,"dataGaName":540,"dataGaLocation":310},"/fr-fr/services/","services",{"text":542,"config":543},"Contribuer",{"href":544,"dataGaName":545,"dataGaLocation":310},"https://contributors.gitlab.com","contribute",{"text":547,"config":548},"Communauté",{"href":549,"dataGaName":550,"dataGaLocation":310},"/community/","community",{"text":552,"config":553},"Forum",{"href":554,"dataGaName":555,"dataGaLocation":310},"https://forum.gitlab.com/","forum",{"text":557,"config":558},"Événements",{"href":559,"dataGaName":560,"dataGaLocation":310},"/events/","events",{"text":562,"config":563},"Partenaires",{"href":564,"dataGaName":565,"dataGaLocation":310},"/fr-fr/partners/","partners",{"config":567,"title":570,"text":571,"link":572},{"background":568,"textColor":569},"url('https://res.cloudinary.com/about-gitlab-com/image/upload/v1777322348/qpq8yrgn8knii57omj0c.png')","#000","Nouveautés de GitLab","Découvrez les dernières fonctionnalités et améliorations.",{"text":573,"config":574},"Lire les articles les plus récents",{"href":575,"dataGaName":576,"dataGaLocation":310},"/fr-fr/whats-new/","whats new",{"text":578,"config":579,"menu":581},"Société",{"dataNavLevelOne":580},"company",{"type":361,"columns":582},[583],{"items":584},[585,590,596,598,603,608,613,618,623,628],{"text":586,"config":587},"À propos",{"href":588,"dataGaName":589,"dataGaLocation":310},"/fr-fr/company/","about",{"text":591,"config":592,"footerGa":595},"Carrières",{"href":593,"dataGaName":594,"dataGaLocation":310},"/jobs/","jobs",{"dataGaName":594},{"text":557,"config":597},{"href":559,"dataGaName":560,"dataGaLocation":310},{"text":599,"config":600},"Leadership",{"href":601,"dataGaName":602,"dataGaLocation":310},"/company/team/e-group/","leadership",{"text":604,"config":605},"Manuel",{"href":606,"dataGaName":607,"dataGaLocation":310},"https://handbook.gitlab.com/","handbook",{"text":609,"config":610},"Relations avec les investisseurs",{"href":611,"dataGaName":612,"dataGaLocation":310},"https://ir.gitlab.com/overview/default.aspx","investor relations",{"text":614,"config":615},"Trust Center",{"href":616,"dataGaName":617,"dataGaLocation":310},"/fr-fr/security/","trust center",{"text":619,"config":620},"Centre pour la transparence de l'IA",{"href":621,"dataGaName":622,"dataGaLocation":310},"/fr-fr/ai-transparency-center/","ai transparency center",{"text":624,"config":625},"Newsletter",{"href":626,"dataGaName":627,"dataGaLocation":310},"/company/contact/#contact-forms","newsletter",{"text":629,"config":630},"Presse",{"href":631,"dataGaName":632,"dataGaLocation":310},"/press/","press",{"text":634,"config":635,"menu":636},"Nous contacter",{"dataNavLevelOne":580},{"type":361,"columns":637},[638],{"items":639},[640,645,650],{"text":641,"config":642},"Contacter l'équipe commerciale",{"href":643,"dataGaName":644,"dataGaLocation":310},"/fr-fr/sales/","talk to sales",{"text":646,"config":647},"Assistance GitLab",{"href":648,"dataGaName":649,"dataGaLocation":310},"https://support.gitlab.com/hc/en-us","support portal",{"text":651,"config":652},"Portail clients GitLab",{"href":653,"dataGaName":654,"dataGaLocation":310},"https://customers.gitlab.com/customers/sign_in/","customer portal",{"close":656,"login":657,"suggestions":664},"Fermer",{"text":658,"link":659},"Pour rechercher des dépôts et des projets, connectez-vous à",{"text":660,"config":661},"GitLab.com",{"href":324,"dataGaName":662,"dataGaLocation":663},"search login","search",{"text":665,"default":666},"Suggestions",[667,670,675,677,682,687],{"text":341,"config":668},{"href":346,"dataGaName":669,"dataGaLocation":663},"GitLab Duo Agent Platform",{"text":671,"config":672},"Suggestions de code (IA)",{"href":673,"dataGaName":674,"dataGaLocation":663},"/fr-fr/solutions/code-suggestions/","Code Suggestions (AI)",{"text":377,"config":676},{"href":379,"dataGaName":377,"dataGaLocation":663},{"text":678,"config":679},"GitLab sur AWS",{"href":680,"dataGaName":681,"dataGaLocation":663},"/fr-fr/partners/technology-partners/aws/","GitLab on AWS",{"text":683,"config":684},"GitLab sur Google Cloud",{"href":685,"dataGaName":686,"dataGaLocation":663},"/fr-fr/partners/technology-partners/google-cloud-platform/","GitLab on Google Cloud",{"text":688,"config":689},"Pourquoi utiliser GitLab ?",{"href":354,"dataGaName":690,"dataGaLocation":663},"Why GitLab?",{"freeTrial":692,"mobileIcon":697,"desktopIcon":702,"secondaryButton":705},{"text":693,"config":694},"Commencer votre essai gratuit",{"href":695,"dataGaName":315,"dataGaLocation":696},"https://gitlab.com/-/trials/new/","nav",{"altText":698,"config":699},"Icône GitLab",{"src":700,"dataGaName":701,"dataGaLocation":696},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203874/jypbw1jx72aexsoohd7x.svg","gitlab icon",{"altText":698,"config":703},{"src":704,"dataGaName":701,"dataGaLocation":696},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203875/gs4c8p8opsgvflgkswz9.svg",{"text":706,"config":707},"Commencer",{"href":708,"dataGaName":709,"dataGaLocation":696},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com/fr-fr/get-started/","get started",{"freeTrial":711,"mobileIcon":715,"desktopIcon":717},{"text":712,"config":713},"En savoir plus sur GitLab Duo",{"href":346,"dataGaName":714,"dataGaLocation":696},"gitlab duo",{"altText":698,"config":716},{"src":700,"dataGaName":701,"dataGaLocation":696},{"altText":698,"config":718},{"src":704,"dataGaName":701,"dataGaLocation":696},{"button":720,"mobileIcon":725,"desktopIcon":727},{"text":721,"config":722},"/switch",{"href":723,"dataGaName":724,"dataGaLocation":696},"#contact","switch",{"altText":698,"config":726},{"src":700,"dataGaName":701,"dataGaLocation":696},{"altText":698,"config":728},{"src":729,"dataGaName":701,"dataGaLocation":696},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1773335277/ohhpiuoxoldryzrnhfrh.png",{"freeTrial":731,"mobileIcon":736,"desktopIcon":738},{"text":732,"config":733},"Retour aux tarifs",{"href":461,"dataGaName":734,"dataGaLocation":696,"icon":735},"back to pricing","GoBack",{"altText":698,"config":737},{"src":700,"dataGaName":701,"dataGaLocation":696},{"altText":698,"config":739},{"src":704,"dataGaName":701,"dataGaLocation":696},{"title":741,"button":742,"config":746},"GitLab Orbit est arrivé : la couche de contexte pour les agents d'IA.",{"text":352,"config":743},{"href":744,"dataGaName":745,"dataGaLocation":310},"/fr-fr/gitlab-orbit/","orbit",{"layout":747,"disabled":293},"release",{"data":749},{"text":750,"source":751,"edit":757,"contribute":762,"config":766,"items":771,"minimal":978},"Git est une marque déposée de Software Freedom Conservancy et notre utilisation de « GitLab » est sous licence.",{"text":752,"config":753},"Afficher le code source de la page",{"href":754,"dataGaName":755,"dataGaLocation":756},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/","page source","footer",{"text":758,"config":759},"Modifier cette page",{"href":760,"dataGaName":761,"dataGaLocation":756},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/content/","web ide",{"text":542,"config":763},{"href":764,"dataGaName":765,"dataGaLocation":756},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/CONTRIBUTING.md/","please contribute",{"twitter":767,"facebook":768,"youtube":769,"linkedin":770},"https://twitter.com/gitlab","https://www.facebook.com/gitlab","https://www.youtube.com/channel/UCnMGQ8QHMAnVIsI3xJrihhg","https://www.linkedin.com/company/gitlab-com",[772,818,870,913,945],{"title":459,"links":773,"subMenu":788},[774,778,783],{"text":775,"config":776},"Voir les forfaits",{"href":461,"dataGaName":777,"dataGaLocation":756},"view plans",{"text":779,"config":780},"GitLab Premium",{"href":781,"dataGaName":782,"dataGaLocation":756},"/fr-fr/pricing/premium/","why premium",{"text":784,"config":785},"GitLab Ultimate",{"href":786,"dataGaName":787,"dataGaLocation":756},"/fr-fr/pricing/ultimate/","why ultimate",[789],{"title":634,"links":790},[791,793,795,798,803,808,813],{"text":641,"config":792},{"href":643,"dataGaName":320,"dataGaLocation":756},{"text":646,"config":794},{"href":648,"dataGaName":649,"dataGaLocation":756},{"text":796,"config":797},"Portail clients",{"href":653,"dataGaName":654,"dataGaLocation":756},{"text":799,"config":800},"Statut",{"href":801,"dataGaName":802,"dataGaLocation":756},"https://status.gitlab.com/","status",{"text":804,"config":805},"Conditions d'utilisation",{"href":806,"dataGaName":807,"dataGaLocation":756},"/terms/","terms of use",{"text":809,"config":810},"Politique de confidentialité",{"href":811,"dataGaName":812,"dataGaLocation":756},"/fr-fr/privacy/","privacy statement",{"text":814,"config":815},"Gestion des cookies",{"dataGaName":816,"dataGaLocation":756,"id":817,"isOneTrustButton":270},"cookie preferences","ot-sdk-btn",{"title":357,"links":819,"subMenu":828},[820,824],{"text":821,"config":822},"Plateforme DevSecOps",{"href":339,"dataGaName":823,"dataGaLocation":756},"devsecops platform",{"text":825,"config":826},"Développement assisté par l'IA",{"href":346,"dataGaName":827,"dataGaLocation":756},"ai-assisted development",[829],{"title":830,"links":831},"Thèmes",[832,836,841,846,851,855,860,865],{"text":377,"config":833},{"href":834,"dataGaName":835,"dataGaLocation":756},"/fr-fr/topics/ci-cd/","cicd",{"text":837,"config":838},"GitOps",{"href":839,"dataGaName":840,"dataGaLocation":756},"/fr-fr/topics/gitops/","gitops",{"text":842,"config":843},"DevOps",{"href":844,"dataGaName":845,"dataGaLocation":756},"/fr-fr/topics/devops/","devops",{"text":847,"config":848},"Contrôle de version",{"href":849,"dataGaName":850,"dataGaLocation":756},"/fr-fr/topics/version-control/","version control",{"text":34,"config":852},{"href":853,"dataGaName":854,"dataGaLocation":756},"/fr-fr/topics/devsecops/","devsecops",{"text":856,"config":857},"Cloud-native",{"href":858,"dataGaName":859,"dataGaLocation":756},"/fr-fr/topics/cloud-native/","cloud native",{"text":861,"config":862},"IA pour la programmation",{"href":863,"dataGaName":864,"dataGaLocation":756},"/fr-fr/topics/devops/ai-for-coding/","ai for coding",{"text":866,"config":867},"IA agentique",{"href":868,"dataGaName":869,"dataGaLocation":756},"/fr-fr/topics/agentic-ai/","agentic ai",{"title":871,"links":872},"Solutions",[873,876,878,883,886,889,892,895,897,900,903,908],{"text":402,"config":874},{"href":397,"dataGaName":875,"dataGaLocation":756},"Application Security Testing",{"text":389,"config":877},{"href":373,"dataGaName":374,"dataGaLocation":756},{"text":879,"config":880},"Développement Agile",{"href":881,"dataGaName":882,"dataGaLocation":756},"/fr-fr/solutions/agile-delivery/","agile delivery",{"text":384,"config":884},{"href":386,"dataGaName":885,"dataGaLocation":756},"source code management",{"text":377,"config":887},{"href":379,"dataGaName":888,"dataGaLocation":756},"continuous integration & delivery",{"text":428,"config":890},{"href":430,"dataGaName":891,"dataGaLocation":756},"value stream management",{"text":837,"config":893},{"href":894,"dataGaName":840,"dataGaLocation":756},"/fr-fr/solutions/gitops/",{"text":441,"config":896},{"href":444,"dataGaName":445,"dataGaLocation":756},{"text":898,"config":899},"PME",{"href":450,"dataGaName":451,"dataGaLocation":756},{"text":901,"config":902},"Secteur public",{"href":456,"dataGaName":457,"dataGaLocation":756},{"text":904,"config":905},"Éducation",{"href":906,"dataGaName":907,"dataGaLocation":756},"/fr-fr/solutions/education/","education",{"text":909,"config":910},"Services financiers",{"href":911,"dataGaName":912,"dataGaLocation":756},"/fr-fr/solutions/finance/","financial services",{"title":464,"links":914},[915,917,919,921,924,926,929,931,933,935,937,939,941,943],{"text":477,"config":916},{"href":479,"dataGaName":480,"dataGaLocation":756},{"text":482,"config":918},{"href":484,"dataGaName":485,"dataGaLocation":756},{"text":487,"config":920},{"href":489,"dataGaName":490,"dataGaLocation":756},{"text":492,"config":922},{"href":494,"dataGaName":923,"dataGaLocation":756},"docs",{"text":515,"config":925},{"href":517,"dataGaName":518,"dataGaLocation":756},{"text":927,"config":928},"Nouveautés",{"href":575,"dataGaName":576,"dataGaLocation":756},{"text":510,"config":930},{"href":512,"dataGaName":513,"dataGaLocation":756},{"text":529,"config":932},{"href":531,"dataGaName":532,"dataGaLocation":756},{"text":537,"config":934},{"href":539,"dataGaName":540,"dataGaLocation":756},{"text":542,"config":936},{"href":544,"dataGaName":545,"dataGaLocation":756},{"text":547,"config":938},{"href":549,"dataGaName":550,"dataGaLocation":756},{"text":552,"config":940},{"href":554,"dataGaName":555,"dataGaLocation":756},{"text":557,"config":942},{"href":559,"dataGaName":560,"dataGaLocation":756},{"text":562,"config":944},{"href":564,"dataGaName":565,"dataGaLocation":756},{"title":578,"links":946},[947,949,951,953,955,957,962,967,969,971,973],{"text":586,"config":948},{"href":588,"dataGaName":580,"dataGaLocation":756},{"text":591,"config":950},{"href":593,"dataGaName":594,"dataGaLocation":756},{"text":599,"config":952},{"href":601,"dataGaName":602,"dataGaLocation":756},{"text":604,"config":954},{"href":606,"dataGaName":607,"dataGaLocation":756},{"text":609,"config":956},{"href":611,"dataGaName":612,"dataGaLocation":756},{"text":958,"config":959},"Développement durable",{"href":960,"dataGaName":961,"dataGaLocation":756},"/sustainability/","Sustainability",{"text":963,"config":964},"Diversité, inclusion et appartenance (DIB)",{"href":965,"dataGaName":966,"dataGaLocation":756},"/fr-fr/diversity-inclusion-belonging/","Diversity, inclusion and belonging",{"text":614,"config":968},{"href":616,"dataGaName":617,"dataGaLocation":756},{"text":624,"config":970},{"href":626,"dataGaName":627,"dataGaLocation":756},{"text":629,"config":972},{"href":631,"dataGaName":632,"dataGaLocation":756},{"text":974,"config":975},"Déclaration de transparence sur l'esclavage moderne",{"href":976,"dataGaName":977,"dataGaLocation":756},"https://handbook.gitlab.com/handbook/legal/modern-slavery-act-transparency-statement/","modern slavery transparency statement",{"items":979},[980,982,984],{"text":804,"config":981},{"href":806,"dataGaName":807,"dataGaLocation":756},{"text":814,"config":983},{"dataGaName":816,"dataGaLocation":756,"id":817,"isOneTrustButton":270},{"text":809,"config":985},{"href":811,"dataGaName":812,"dataGaLocation":756},[987],{"id":988,"title":7,"body":285,"config":989,"content":991,"description":285,"extension":996,"meta":997,"navigation":270,"path":998,"seo":999,"stem":1000,"__hash__":1001},"blogAuthors/en-us/blog/authors/susie-bitters.yml",{"template":990},"BlogAuthor",{"name":7,"config":992},{"headshot":993,"linkedin":994,"ctfId":995},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749664195/Blog/Author%20Headshots/susiebittersheadshot.png","https://www.linkedin.com/in/susie-bitters-33268410/","7yiomgeGp9k4a4srjDU1QK","yml",{},"/en-us/blog/authors/susie-bitters",{},"en-us/blog/authors/susie-bitters","oXfcK-Cd6FO2mDuWYTMXFhcY16XNSSAcyheiVIWVd2k",[1003,1011,1019],{"title":1004,"description":1005,"heroImage":1006,"category":281,"date":1007,"authors":1008,"slug":1010,"externalUrl":285},"Moderniser Java avec Cursor et GitLab","Ce tutoriel commence par la correction ciblée de tests, introduit des murs qualité et met en œuvre des modifications de code en tenant compte du contexte du cycle de développement, des tests et des preuves de revue.","https://res.cloudinary.com/about-gitlab-com/image/upload/v1776457632/llddiylsgwuze0u1rjks.png","2026-08-12",[1009],"Michael Friedrich","modernize-java-with-cursor-and-gitlab",{"title":1012,"description":1013,"heroImage":1014,"category":281,"date":1015,"authors":1016,"slug":1018,"externalUrl":285},"Comment utiliser des agents d'IA pour migrer la limitation de débit de GitLab","Découvrez comment notre équipe composée de trois personnes a utilisé GitLab Duo Agent Platform, ainsi que d'autres outils d'IA, pour migrer avec succès le système de limitation de débit et les leçons que nous en avons tirées.","https://res.cloudinary.com/about-gitlab-com/image/upload/f_auto,q_auto,c_lfill/v1773075582/yiosxfhwk8rfkulrtchv.png","2026-08-10",[1017],"Sam Wiskow","ai-agents-for-migrating-rate-limiting-system",{"title":1020,"description":1021,"heroImage":1022,"category":281,"date":1023,"authors":1024,"slug":1026,"externalUrl":285},"Codage agentique : le contexte fait la différence","Les agents de codage accélèrent le développement. Grâce au contexte dans GitLab, les entreprises évitent les correctifs superficiels et raccourcissent les cycles de revue.","https://res.cloudinary.com/about-gitlab-com/image/upload/f_auto,q_auto,c_lfill/v1773856365/gsx2c0vqlswox3ldmq88.jpg","2026-08-03",[1025],"Jessica Taylor","agentic-coding-only-as-good-as-context",{"promotions":1028},[1029,1042,1054,1066],{"id":1030,"categories":1031,"header":1032,"text":1033,"button":1034,"image":1039},"ai-modernization",[281],"L'IA tient-elle ses promesses à grande échelle ?","Le questionnaire ne prendra pas plus de 5 minutes.",{"text":1035,"config":1036},"Obtenez votre score de maturité IA",{"href":1037,"dataGaName":1038,"dataGaLocation":518},"/fr-fr/assessments/ai-modernization-assessment/","modernization assessment",{"config":1040},{"src":1041},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138786/qix0m7kwnd8x2fh1zq49.png",{"id":1043,"categories":1044,"header":1046,"text":1033,"button":1047,"image":1051},"devops-modernization",[1045,854],"product","Vous contentez-vous de gérer des outils ou de livrer des innovations ?",{"text":1048,"config":1049},"Obtenez votre score de maturité DevOps",{"href":1050,"dataGaName":1038,"dataGaLocation":518},"/fr-fr/assessments/devops-modernization-assessment/",{"config":1052},{"src":1053},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138785/eg818fmakweyuznttgid.png",{"id":1055,"categories":1056,"header":1058,"text":1033,"button":1059,"image":1063},"security-modernization",[1057],"security","Faut-il sacrifier la rapidité pour garantir la sécurité ?",{"text":1060,"config":1061},"Obtenez votre score de maturité en matière de sécurité",{"href":1062,"dataGaName":1038,"dataGaLocation":518},"/fr-fr/assessments/security-modernization-assessment/",{"config":1064},{"src":1065},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138786/p4pbqd9nnjejg5ds6mdk.png",{"id":1067,"paths":1068,"header":1071,"text":1072,"button":1073,"image":1078},"github-azure-migration",[1069,1070],"migration-from-azure-devops-to-gitlab","integrating-azure-devops-scm-and-gitlab","Votre équipe est-elle prête pour la migration de GitHub vers Azure ?","GitHub a déjà commencé sa migration vers Azure. Découvrez ce que cela signifie pour vous.",{"text":1074,"config":1075},"Découvrez les différences entre GitLab et GitHub",{"href":1076,"dataGaName":1077,"dataGaLocation":518},"/fr-fr/compare/gitlab-vs-github/github-azure-migration/","github azure migration",{"config":1079},{"src":1053},{"header":1081,"blurb":1082,"button":1083,"secondaryButton":1087},"Commencez à développer plus rapidement dès aujourd'hui","Découvrez ce que votre équipe peut accomplir avec la plateforme d'orchestration intelligente pour le DevSecOps.\n",{"text":312,"config":1084},{"href":1085,"dataGaName":315,"dataGaLocation":1086},"https://gitlab.com/-/trial_registrations/new?glm_content=default-saas-trial&glm_source=about.gitlab.com/fr-fr/","feature",{"text":641,"config":1088},{"href":643,"dataGaName":320,"dataGaLocation":1086},1786803763199]