[{"data":1,"prerenderedAt":966},["ShallowReactive",2],{"/blog/introducing-modelops-to-solve-data-science-challenges":3,"navigation-en-us":180,"banner-en-us":608,"footer-en-us":618,"blog-post-authors-en-us-Taylor McCaslin":861,"blog-related-posts-en-us-introducing-modelops-to-solve-data-science-challenges":877,"blog-promotions-en-us":902,"next-steps-en-us":956},{"id":4,"title":5,"authors":6,"body":8,"category":158,"date":159,"description":160,"extension":161,"externalUrl":162,"faq":162,"featured":163,"heroImage":164,"meta":165,"navigation":166,"path":167,"seo":168,"slug":172,"stem":173,"tags":174,"template":178,"updatedDate":162,"__hash__":179},"blogPosts/en-us/blog/introducing-modelops-to-solve-data-science-challenges.md","Adopt ModelOps within DevOps to solve data science challenges",[7],"Taylor McCaslin",{"type":9,"value":10,"toc":148},"minimark",[11,27,30,35,42,45,49,58,61,64,68,71,74,77,80,84,97,101,104,107,110,114,117,120,132,138,143],[12,13,14,15,20,21,26],"p",{},"In a ",[16,17,19],"a",{"href":18},"/blog/the-road-to-smarter-code-reviewer-recommendations/","recent blog post"," discussing the progress of integrating novel machine learning (ML) algorithms into GitLab we introduced our new ",[16,22,25],{"href":23,"rel":24},"https://docs.gitlab.com/user/project/ml/",[],"ModelOps stage",". This stage is focused on enabling and empowering data science workloads on GitLab. GitLab ModelOps aims to bring data science into GitLab within existing features to make them smarter and more intelligent and empowering GitLab customers to build and integrate data science workloads within GitLab.",[12,28,29],{},"An interesting question we hear a lot is how will this be useful for DevOps professionals? So we wanted to dive into who exactly we’re building ModelOps features for and why. To begin, here is an overview of how we’ve chosen to structure our new ModelOps stage.",[31,32,34],"h2",{"id":33},"modelops-enabling-and-empowering-data-science-workloads","ModelOps: Enabling and empowering data science workloads",[12,36,37],{},[38,39],"img",{"alt":40,"src":41},"Chart of ModelOps stages","https://res.cloudinary.com/about-gitlab-com/image/upload/v1782397909/blog/Content%20Images/Screen_Shot_2022-01-19_at_1.11.36_PM.png",[12,43,44],{},"ModelOps is about taking all the best practices we’ve learned building a DevOps platform and applying them to the unique challenges of AI and ML workloads. Our ModelOps stage is divided into three primary groups: DataOps, MLOps, and AI Assisted. Each group has specific jobs to be done and challenges. Part of the reason we chose this organization model is due to the different user personas we’re trying to solve problems for in each of these areas. Now let’s dive into the people in each group, as well as the challenges each group aims to solve.",[31,46,48],{"id":47},"dataops-get-the-data-clean-it-and-process-it","DataOps: Get the data, clean it, and process it",[12,50,51,52,57],{},"DataOps is focused on everything required to process data workloads, including fetching data, cleaning it, and processing it. You may have heard this called ELT, or Extract, Load, Transformation, of data. But DataOps is more than just the ELT, there are lots of other problems that come with data sources. For example, data located in many disparate systems in many formats and lacking common data definitions. Most data sources require a lot of processing to access, move, clean, and interpret data. We have specialists whose entire job is ",[16,53,56],{"href":54,"rel":55},"https://online.hbs.edu/blog/post/data-life-cycle",[],"all of the work to get data into usable states"," so organizations can do something of business value with it.",[12,59,60],{},"Depending on the organization, these data professionals may have different titles such as data engineer, data architect, or data analyst.  These data wranglers have many assorted jobs: aggregating disparate data sources, cleaning and shaping data into usable formats, making data available to the business, and even analyzing data and answering business questions.",[12,62,63],{},"The data experts leverage many tools such as ELT platforms, big data warehouses, data pipelines, and database technologies like SQL and elastic search. Data management tooling can be an extremely complex series of connections piping data in and out of various platforms. These challenges are the heart of the problems we’re aiming to solve.",[31,65,67],{"id":66},"mlops-do-something-useful-with-the-data","MLOps: Do something useful with the data",[12,69,70],{},"Next is MLOps, which is what most people associate with data science. MLOps aims to enable customer data science use cases, including accessing and interacting with data, AI/ML toolchain integrations, and compute environment integrations. Basically, everything that is required to build, test, train, and deploy AI/ML models into production systems. MLOps leverages math to solve problems using computing power to find patterns in the data that we just discussed with DataOps.",[12,72,73],{},"Data science teams feature professionals with titles such as data scientists, ML engineers, or ML specialists. These experts usually have a mix of higher-level math and statistics skills, software engineering, and basic DevOps skills. They can cobble together environments to build, train, test, and explore data science models to solve specific business problems.",[12,75,76],{},"The work data scientists do is more than just building ML models. They have to understand the business data and problems they are trying to leverage data science to solve. It’s usually very experimental and requires a lot of iteration to find a solution that solves a particular business problem in a useful way. It’s common for data scientists to spend a lot of time exploring and understanding datasets and the business problems organizations are hoping data science can solve. They then build and train AI/ML models, evaluate model output, and then iterate their models.",[12,78,79],{},"Among the common tools these data scientists use are Python notebooks, which allow them to leverage scripting to explore and manipulate data and try different modeling techniques. They also may use many open source ML and data science frameworks, as well as special data science platforms that help manage, version, interpret, and monitor models. Most of this work almost never happens in production environments. It happens on local machines or in cloud computing platforms where data scientists can leverage highly specialized compute, optimized for running data science models. That leaves an interesting challenge of how do you deploy their work to production systems.  Our last use case, DevOps, provides the solution.",[31,81,83],{"id":82},"ai-assisted-leverage-data-to-solve-business-problems","AI Assisted: Leverage data to solve business problems",[12,85,86,87,92,93,96],{},"While our AI Assisted group isn't specifically focused on any one user persona, we are planning to enrich existing GitLab features with ML. Our goal is to take features that require manual work to leverage and apply ML to automate these tasks. Tasks like assigning and labeling issues, choosing code reviewers, and even triaging and fixing security vulnerabilities. You can read more about our AI Assisted plans on our ",[16,88,91],{"href":89,"rel":90},"https://docs.gitlab.com/user/gitlab_duo/",[],"direction page"," or check in on the status of our first Applied ML feature, ",[16,94,95],{"href":18},"suggested reviewers",". Now that we've touched on improving GitLab for everyone, let's go back to GitLab's main persona, DevOps engineers.",[31,98,100],{"id":99},"devops-build-test-and-deploy-software","DevOps: Build, test, and deploy software",[12,102,103],{},"DevOps is probably the most understood use case that we’re trying to solve with our ModelOps stage. However, we’re focused on the intersection of DevOps and data science workloads. Specifically what happens when you need to deploy a data science model to a production system. GitLab’s DevOps platform is already an established and mature platform for building, testing, and deploying traditional software applications. But the software stacks of modern organizations are evolving and becoming more sophisticated, including leveraging ML. We’ve described some of the challenges and new personas that are involved with the development of data science workloads, but what happens when it’s time to go to production?",[12,105,106],{},"Today, data science teams and DevOps engineers work in separate silos with very different skills sets and technology challenges. So when a data science team has a new ML model they want to push into a production software environment and integrate into a running application, in walks a whole new set of challenges.",[12,108,109],{},"Just about every software company now has DevOps teams focused on repeatability, stability, and velocity of software development lifecycles. Everything relating to the design, build, testing, deployment, security, and monitoring of software from idea to deploy into a production system. These teams are usually comprised of software engineers and DevOps engineers. The people who write, build, and test code with repeatable CI/CD, allowing software teams to seamlessly develop software applications.",[31,111,113],{"id":112},"helping-them-all-work-together","Helping them all work together",[12,115,116],{},"Our goal with ModelOps is to help all of these people work together to build and deploy data-rich modern applications leveraging novel ML workloads. We want to bring data science into GitLab within existing features to make them smarter and more intelligent and to empower GitLab customers to build and integrate data science workloads in their own applications built and deployed with GitLab. Each of these groups has unique challenges and use cases that are interconnected. That’s part of what makes data science difficult. It has a lot of moving parts and crosses every aspect of modern software development lifecycles with very unique challenges.",[12,118,119],{},"If all of this is interesting to you, you may also enjoy watching our recent Contribute session, where we discuss more about what we plan to accomplish with our ModelOps stage, which you can watch on YouTube.",[121,122,125],"figure",{"className":123},[124],"video_container",[126,127,131],"iframe",{"src":128,"frameBorder":129,"allowFullScreen":130},"https://www.youtube.com/embed/C08QVI99JLo","0","true"," ",[12,133,134],{},[135,136,137],"em",{},"This blog post contains information related to upcoming products, features and functionality.",[12,139,140],{},[135,141,142],{},"It is important to note that the information in this blog post is for informational purposes only. Please do not rely on this information for purchasing or planning purposes.",[12,144,145],{},[135,146,147],{},"As with all projects, the items mentioned in this blog post and linked pages are subject to change and delay. The development, release, and timing of any products, features, or functionality remain at the sole discretion of GitLab Inc.",{"title":149,"searchDepth":150,"depth":150,"links":151},"",2,[152,153,154,155,156,157],{"id":33,"depth":150,"text":34},{"id":47,"depth":150,"text":48},{"id":66,"depth":150,"text":67},{"id":82,"depth":150,"text":83},{"id":99,"depth":150,"text":100},{"id":112,"depth":150,"text":113},"devsecops","2022-01-21","The ModelOps stage of DevOps applies AI and ML to address complex data science challenges.","md",null,false,"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749668437/Blog/Hero%20Images/faster-cycle-times.jpg",{},true,"/en-us/blog/introducing-modelops-to-solve-data-science-challenges",{"title":5,"description":160,"ogTitle":5,"ogDescription":160,"noIndex":163,"ogImage":164,"ogUrl":169,"ogSiteName":170,"ogType":171,"canonicalUrls":169},"https://about.gitlab.com/blog/introducing-modelops-to-solve-data-science-challenges","https://about.gitlab.com","article","introducing-modelops-to-solve-data-science-challenges","en-us/blog/introducing-modelops-to-solve-data-science-challenges",[175,176,177],"DevOps","production","workflow","BlogPost","JDks1FnO-3-pOVvdjU3DiuElbYVbji3upXhUxAfaIy0",{"logo":181,"freeTrial":186,"sales":191,"login":196,"items":201,"search":528,"minimal":559,"duo":578,"switchNav":587,"pricingDeployment":598},{"config":182},{"href":183,"dataGaName":184,"dataGaLocation":185},"/","gitlab logo","header",{"text":187,"config":188},"Get free trial",{"href":189,"dataGaName":190,"dataGaLocation":185},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com&glm_content=default-saas-trial/","free trial",{"text":192,"config":193},"Request a demo",{"href":194,"dataGaName":195,"dataGaLocation":185},"/sales/?contact-topic=request-demo","sales",{"text":197,"config":198},"Sign in",{"href":199,"dataGaName":200,"dataGaLocation":185},"https://gitlab.com/users/sign_in/","sign in",[202,231,331,336,450,506],{"text":203,"config":204,"menu":206},"Platform",{"dataNavLevelOne":205},"platform",{"type":207,"columns":208},"cards",[209,215,223],{"title":203,"description":210,"link":211},"The intelligent orchestration platform for DevSecOps",{"text":212,"config":213},"Explore our Platform",{"href":214,"dataGaName":205,"dataGaLocation":185},"/platform/",{"title":216,"description":217,"link":218},"GitLab Duo Agent Platform","Agentic AI for the entire software lifecycle",{"text":219,"config":220},"Meet GitLab Duo",{"href":221,"dataGaName":222,"dataGaLocation":185},"/gitlab-duo-agent-platform/","gitlab duo agent platform",{"title":224,"description":225,"link":226},"Why GitLab","See the top reasons enterprises choose GitLab",{"text":227,"config":228},"Learn more",{"href":229,"dataGaName":230,"dataGaLocation":185},"/why-gitlab/","why gitlab",{"text":232,"left":166,"config":233,"menu":235},"Product",{"dataNavLevelOne":234},"solutions",{"type":236,"link":237,"columns":241,"feature":310},"lists",{"text":238,"config":239},"View all Solutions",{"href":240,"dataGaName":234,"dataGaLocation":185},"/solutions/",[242,266,289],{"title":243,"description":244,"link":245,"items":250},"Automation","CI/CD and automation to accelerate deployment",{"config":246},{"icon":247,"href":248,"dataGaName":249,"dataGaLocation":185},"AutomatedCodeAlt","/solutions/delivery-automation/","automated software delivery",[251,255,258,262],{"text":252,"config":253},"CI/CD",{"href":254,"dataGaLocation":185,"dataGaName":252},"/solutions/continuous-integration/",{"text":216,"config":256},{"href":221,"dataGaLocation":185,"dataGaName":257},"gitlab duo agent platform - product menu",{"text":259,"config":260},"Source Code Management",{"href":261,"dataGaLocation":185,"dataGaName":259},"/solutions/source-code-management/",{"text":263,"config":264},"Automated Software Delivery",{"href":248,"dataGaLocation":185,"dataGaName":265},"Automated software delivery",{"title":267,"description":268,"link":269,"items":274},"Security","Deliver code faster without compromising security",{"config":270},{"href":271,"dataGaName":272,"dataGaLocation":185,"icon":273},"/solutions/application-security-testing/","security and compliance","ShieldCheckLight",[275,279,284],{"text":276,"config":277},"Application Security Testing",{"href":271,"dataGaName":278,"dataGaLocation":185},"Application security testing",{"text":280,"config":281},"Software Supply Chain Security",{"href":282,"dataGaLocation":185,"dataGaName":283},"/solutions/supply-chain/","Software supply chain security",{"text":285,"config":286},"Software Compliance",{"href":287,"dataGaName":288,"dataGaLocation":185},"/solutions/software-compliance/","software compliance",{"title":290,"link":291,"items":296},"Measurement",{"config":292},{"icon":293,"href":294,"dataGaName":295,"dataGaLocation":185},"DigitalTransformation","/solutions/visibility-measurement/","visibility and measurement",[297,301,305],{"text":298,"config":299},"Visibility & Measurement",{"href":294,"dataGaLocation":185,"dataGaName":300},"Visibility and Measurement",{"text":302,"config":303},"Value Stream Management",{"href":304,"dataGaLocation":185,"dataGaName":302},"/solutions/value-stream-management/",{"text":306,"config":307},"Analytics & Insights",{"href":308,"dataGaLocation":185,"dataGaName":309},"/solutions/analytics-and-insights/","Analytics and insights",{"title":311,"type":236,"items":312},"GitLab for",[313,319,325],{"text":314,"config":315},"Enterprise",{"icon":316,"href":317,"dataGaLocation":185,"dataGaName":318},"Building","/enterprise/","enterprise",{"text":320,"config":321},"Small Business",{"icon":322,"href":323,"dataGaLocation":185,"dataGaName":324},"Work","/small-business/","small business",{"text":326,"config":327},"Public Sector",{"icon":328,"href":329,"dataGaLocation":185,"dataGaName":330},"Organization","/solutions/public-sector/","public sector",{"text":332,"config":333},"Pricing",{"href":334,"dataGaName":335,"dataGaLocation":185,"dataNavLevelOne":335},"/pricing/","pricing",{"text":337,"config":338,"menu":340},"Resources",{"dataNavLevelOne":339},"resources",{"type":236,"link":341,"columns":345,"feature":439},{"text":342,"config":343},"View all resources",{"href":344,"dataGaName":339,"dataGaLocation":185},"/resources/",[346,379,406],{"title":347,"items":348},"Getting started",[349,354,359,364,369,374],{"text":350,"config":351},"Install",{"href":352,"dataGaName":353,"dataGaLocation":185},"/install/","install",{"text":355,"config":356},"Quick start guides",{"href":357,"dataGaName":358,"dataGaLocation":185},"/get-started/","quick setup checklists",{"text":360,"config":361},"Learn",{"href":362,"dataGaLocation":185,"dataGaName":363},"https://university.gitlab.com/","learn",{"text":365,"config":366},"Product documentation",{"href":367,"dataGaName":368,"dataGaLocation":185},"https://docs.gitlab.com/","product documentation",{"text":370,"config":371},"Best practice videos",{"href":372,"dataGaName":373,"dataGaLocation":185},"/getting-started-videos/","best practice videos",{"text":375,"config":376},"Integrations",{"href":377,"dataGaName":378,"dataGaLocation":185},"/integrations/","integrations",{"title":380,"items":381},"Discover",[382,387,392,397,401],{"text":383,"config":384},"Customer success stories",{"href":385,"dataGaName":386,"dataGaLocation":185},"/customers/","customer success stories",{"text":388,"config":389},"Blog",{"href":390,"dataGaName":391,"dataGaLocation":185},"/blog/","blog",{"text":393,"config":394},"Demo Hub",{"href":395,"dataGaName":396,"dataGaLocation":185},"/demo-hub/","demo hub",{"text":398,"config":399},"The Source",{"href":400,"dataGaName":391,"dataGaLocation":185},"/the-source/",{"text":402,"config":403},"Remote",{"href":404,"dataGaName":405,"dataGaLocation":185},"https://handbook.gitlab.com/handbook/company/culture/all-remote/","remote",{"title":407,"items":408},"Connect",[409,414,419,424,429,434],{"text":410,"config":411},"GitLab Services",{"href":412,"dataGaName":413,"dataGaLocation":185},"/services/","services",{"text":415,"config":416},"Contribute",{"href":417,"dataGaName":418,"dataGaLocation":185},"https://contributors.gitlab.com","contribute",{"text":420,"config":421},"Community",{"href":422,"dataGaName":423,"dataGaLocation":185},"/community/","community",{"text":425,"config":426},"Forum",{"href":427,"dataGaName":428,"dataGaLocation":185},"https://forum.gitlab.com/","forum",{"text":430,"config":431},"Events",{"href":432,"dataGaName":433,"dataGaLocation":185},"/events/","events",{"text":435,"config":436},"Partners",{"href":437,"dataGaName":438,"dataGaLocation":185},"/partners/","partners",{"config":440,"title":443,"text":444,"link":445},{"background":441,"textColor":442},"url('https://res.cloudinary.com/about-gitlab-com/image/upload/v1777322348/qpq8yrgn8knii57omj0c.png')","#000","What’s new in GitLab","Stay updated with our latest features and improvements.",{"text":446,"config":447},"Read the latest",{"href":448,"dataGaName":449,"dataGaLocation":185},"/whats-new/","whats new",{"text":451,"config":452,"menu":454},"Company",{"dataNavLevelOne":453},"company",{"type":236,"columns":455},[456],{"items":457},[458,463,469,471,476,481,486,491,496,501],{"text":459,"config":460},"About",{"href":461,"dataGaName":462,"dataGaLocation":185},"/company/","about",{"text":464,"config":465,"footerGa":468},"Jobs",{"href":466,"dataGaName":467,"dataGaLocation":185},"/jobs/","jobs",{"dataGaName":467},{"text":430,"config":470},{"href":432,"dataGaName":433,"dataGaLocation":185},{"text":472,"config":473},"Leadership",{"href":474,"dataGaName":475,"dataGaLocation":185},"/company/team/e-group/","leadership",{"text":477,"config":478},"Handbook",{"href":479,"dataGaName":480,"dataGaLocation":185},"https://handbook.gitlab.com/","handbook",{"text":482,"config":483},"Investor relations",{"href":484,"dataGaName":485,"dataGaLocation":185},"https://ir.gitlab.com/overview/default.aspx","investor relations",{"text":487,"config":488},"Trust Center",{"href":489,"dataGaName":490,"dataGaLocation":185},"/security/","trust center",{"text":492,"config":493},"AI Transparency Center",{"href":494,"dataGaName":495,"dataGaLocation":185},"/ai-transparency-center/","ai transparency center",{"text":497,"config":498},"Newsletter",{"href":499,"dataGaName":500,"dataGaLocation":185},"/company/contact/#contact-forms","newsletter",{"text":502,"config":503},"Press",{"href":504,"dataGaName":505,"dataGaLocation":185},"/press/","press",{"text":507,"config":508,"menu":509},"Contact us",{"dataNavLevelOne":453},{"type":236,"columns":510},[511],{"items":512},[513,518,523],{"text":514,"config":515},"Talk to sales",{"href":516,"dataGaName":517,"dataGaLocation":185},"/sales/","talk to sales",{"text":519,"config":520},"Support portal",{"href":521,"dataGaName":522,"dataGaLocation":185},"https://support.gitlab.com/hc/en-us","support portal",{"text":524,"config":525},"Customer portal",{"href":526,"dataGaName":527,"dataGaLocation":185},"https://customers.gitlab.com/customers/sign_in/","customer portal",{"close":529,"login":530,"suggestions":537},"Close",{"text":531,"link":532},"To search repositories and projects, login to",{"text":533,"config":534},"gitlab.com",{"href":199,"dataGaName":535,"dataGaLocation":536},"search login","search",{"text":538,"default":539},"Suggestions",[540,542,546,548,552,556],{"text":216,"config":541},{"href":221,"dataGaName":216,"dataGaLocation":536},{"text":543,"config":544},"Code Suggestions (AI)",{"href":545,"dataGaName":543,"dataGaLocation":536},"/solutions/code-suggestions/",{"text":252,"config":547},{"href":254,"dataGaName":252,"dataGaLocation":536},{"text":549,"config":550},"GitLab on AWS",{"href":551,"dataGaName":549,"dataGaLocation":536},"/partners/technology-partners/aws/",{"text":553,"config":554},"GitLab on Google Cloud",{"href":555,"dataGaName":553,"dataGaLocation":536},"/partners/technology-partners/google-cloud-platform/",{"text":557,"config":558},"Why GitLab?",{"href":229,"dataGaName":557,"dataGaLocation":536},{"freeTrial":560,"mobileIcon":565,"desktopIcon":570,"secondaryButton":573},{"text":561,"config":562},"Start free trial",{"href":563,"dataGaName":190,"dataGaLocation":564},"https://gitlab.com/-/trials/new/","nav",{"altText":566,"config":567},"Gitlab Icon",{"src":568,"dataGaName":569,"dataGaLocation":564},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203874/jypbw1jx72aexsoohd7x.svg","gitlab icon",{"altText":566,"config":571},{"src":572,"dataGaName":569,"dataGaLocation":564},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1758203875/gs4c8p8opsgvflgkswz9.svg",{"text":574,"config":575},"Get Started",{"href":576,"dataGaName":577,"dataGaLocation":564},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com/get-started/","get started",{"freeTrial":579,"mobileIcon":583,"desktopIcon":585},{"text":580,"config":581},"Learn more about GitLab Duo",{"href":221,"dataGaName":582,"dataGaLocation":564},"gitlab duo",{"altText":566,"config":584},{"src":568,"dataGaName":569,"dataGaLocation":564},{"altText":566,"config":586},{"src":572,"dataGaName":569,"dataGaLocation":564},{"button":588,"mobileIcon":593,"desktopIcon":595},{"text":589,"config":590},"/switch",{"href":591,"dataGaName":592,"dataGaLocation":564},"#contact","switch",{"altText":566,"config":594},{"src":568,"dataGaName":569,"dataGaLocation":564},{"altText":566,"config":596},{"src":597,"dataGaName":569,"dataGaLocation":564},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1773335277/ohhpiuoxoldryzrnhfrh.png",{"freeTrial":599,"mobileIcon":604,"desktopIcon":606},{"text":600,"config":601},"Back to pricing",{"href":334,"dataGaName":602,"dataGaLocation":564,"icon":603},"back to pricing","GoBack",{"altText":566,"config":605},{"src":568,"dataGaName":569,"dataGaLocation":564},{"altText":566,"config":607},{"src":572,"dataGaName":569,"dataGaLocation":564},{"title":609,"titleMobile":610,"button":611,"config":616},"Duo Agent Platform delivers 400% ROI, per new Forrester Consulting study.","400% ROI: Forrester TEI for GitLab Duo",{"text":227,"config":612},{"href":613,"dataGaName":614,"dataGaLocation":615},"https://about.gitlab.com/blog/gitlab-duo-agent-platform-delivers-400-percent-roi/","forrester-tei-dap-banner","global-banner",{"layout":617,"disabled":163},"release",{"data":619},{"text":620,"source":621,"edit":627,"contribute":632,"config":637,"items":642,"minimal":850},"Git is a trademark of Software Freedom Conservancy and our use of 'GitLab' is under license",{"text":622,"config":623},"View page source",{"href":624,"dataGaName":625,"dataGaLocation":626},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/","page source","footer",{"text":628,"config":629},"Edit this page",{"href":630,"dataGaName":631,"dataGaLocation":626},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/content/","web ide",{"text":633,"config":634},"Please contribute",{"href":635,"dataGaName":636,"dataGaLocation":626},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/CONTRIBUTING.md/","please contribute",{"twitter":638,"facebook":639,"youtube":640,"linkedin":641},"https://twitter.com/gitlab","https://www.facebook.com/gitlab","https://www.youtube.com/channel/UCnMGQ8QHMAnVIsI3xJrihhg","https://www.linkedin.com/company/gitlab-com",[643,690,742,786,818],{"title":332,"links":644,"subMenu":659},[645,649,654],{"text":646,"config":647},"View plans",{"href":334,"dataGaName":648,"dataGaLocation":626},"view plans",{"text":650,"config":651},"Why Premium?",{"href":652,"dataGaName":653,"dataGaLocation":626},"/pricing/premium/","why premium",{"text":655,"config":656},"Why Ultimate?",{"href":657,"dataGaName":658,"dataGaLocation":626},"/pricing/ultimate/","why ultimate",[660],{"title":661,"links":662},"Contact Us",[663,666,668,670,675,680,685],{"text":664,"config":665},"Contact sales",{"href":516,"dataGaName":195,"dataGaLocation":626},{"text":519,"config":667},{"href":521,"dataGaName":522,"dataGaLocation":626},{"text":524,"config":669},{"href":526,"dataGaName":527,"dataGaLocation":626},{"text":671,"config":672},"Status",{"href":673,"dataGaName":674,"dataGaLocation":626},"https://status.gitlab.com/","status",{"text":676,"config":677},"Terms of use",{"href":678,"dataGaName":679,"dataGaLocation":626},"/terms/","terms of use",{"text":681,"config":682},"Privacy statement",{"href":683,"dataGaName":684,"dataGaLocation":626},"/privacy/","privacy statement",{"text":686,"config":687},"Cookie preferences",{"dataGaName":688,"dataGaLocation":626,"id":689,"isOneTrustButton":166},"cookie preferences","ot-sdk-btn",{"title":232,"links":691,"subMenu":700},[692,696],{"text":693,"config":694},"DevSecOps platform",{"href":214,"dataGaName":695,"dataGaLocation":626},"devsecops platform",{"text":697,"config":698},"AI-Assisted Development",{"href":221,"dataGaName":699,"dataGaLocation":626},"ai-assisted development",[701],{"title":702,"links":703},"Topics",[704,709,714,718,723,727,732,737],{"text":705,"config":706},"CICD",{"href":707,"dataGaName":708,"dataGaLocation":626},"/topics/ci-cd/","cicd",{"text":710,"config":711},"GitOps",{"href":712,"dataGaName":713,"dataGaLocation":626},"/topics/gitops/","gitops",{"text":175,"config":715},{"href":716,"dataGaName":717,"dataGaLocation":626},"/topics/devops/","devops",{"text":719,"config":720},"Version Control",{"href":721,"dataGaName":722,"dataGaLocation":626},"/topics/version-control/","version control",{"text":724,"config":725},"DevSecOps",{"href":726,"dataGaName":158,"dataGaLocation":626},"/topics/devsecops/",{"text":728,"config":729},"Cloud Native",{"href":730,"dataGaName":731,"dataGaLocation":626},"/topics/cloud-native/","cloud native",{"text":733,"config":734},"AI for Coding",{"href":735,"dataGaName":736,"dataGaLocation":626},"/topics/devops/ai-for-coding/","ai for coding",{"text":738,"config":739},"Agentic AI",{"href":740,"dataGaName":741,"dataGaLocation":626},"/topics/agentic-ai/","agentic ai",{"title":743,"links":744},"Solutions",[745,747,749,754,758,761,765,768,770,773,776,781],{"text":276,"config":746},{"href":271,"dataGaName":276,"dataGaLocation":626},{"text":265,"config":748},{"href":248,"dataGaName":249,"dataGaLocation":626},{"text":750,"config":751},"Agile development",{"href":752,"dataGaName":753,"dataGaLocation":626},"/solutions/agile-delivery/","agile delivery",{"text":755,"config":756},"SCM",{"href":261,"dataGaName":757,"dataGaLocation":626},"source code management",{"text":705,"config":759},{"href":254,"dataGaName":760,"dataGaLocation":626},"continuous integration & delivery",{"text":762,"config":763},"Value stream management",{"href":304,"dataGaName":764,"dataGaLocation":626},"value stream management",{"text":710,"config":766},{"href":767,"dataGaName":713,"dataGaLocation":626},"/solutions/gitops/",{"text":314,"config":769},{"href":317,"dataGaName":318,"dataGaLocation":626},{"text":771,"config":772},"Small business",{"href":323,"dataGaName":324,"dataGaLocation":626},{"text":774,"config":775},"Public sector",{"href":329,"dataGaName":330,"dataGaLocation":626},{"text":777,"config":778},"Education",{"href":779,"dataGaName":780,"dataGaLocation":626},"/solutions/education/","education",{"text":782,"config":783},"Financial services",{"href":784,"dataGaName":785,"dataGaLocation":626},"/solutions/finance/","financial services",{"title":337,"links":787},[788,790,792,794,797,799,802,804,806,808,810,812,814,816],{"text":350,"config":789},{"href":352,"dataGaName":353,"dataGaLocation":626},{"text":355,"config":791},{"href":357,"dataGaName":358,"dataGaLocation":626},{"text":360,"config":793},{"href":362,"dataGaName":363,"dataGaLocation":626},{"text":365,"config":795},{"href":367,"dataGaName":796,"dataGaLocation":626},"docs",{"text":388,"config":798},{"href":390,"dataGaName":391,"dataGaLocation":626},{"text":800,"config":801},"What's new",{"href":448,"dataGaName":449,"dataGaLocation":626},{"text":383,"config":803},{"href":385,"dataGaName":386,"dataGaLocation":626},{"text":402,"config":805},{"href":404,"dataGaName":405,"dataGaLocation":626},{"text":410,"config":807},{"href":412,"dataGaName":413,"dataGaLocation":626},{"text":415,"config":809},{"href":417,"dataGaName":418,"dataGaLocation":626},{"text":420,"config":811},{"href":422,"dataGaName":423,"dataGaLocation":626},{"text":425,"config":813},{"href":427,"dataGaName":428,"dataGaLocation":626},{"text":430,"config":815},{"href":432,"dataGaName":433,"dataGaLocation":626},{"text":435,"config":817},{"href":437,"dataGaName":438,"dataGaLocation":626},{"title":451,"links":819},[820,822,824,826,828,830,834,839,841,843,845],{"text":459,"config":821},{"href":461,"dataGaName":453,"dataGaLocation":626},{"text":464,"config":823},{"href":466,"dataGaName":467,"dataGaLocation":626},{"text":472,"config":825},{"href":474,"dataGaName":475,"dataGaLocation":626},{"text":477,"config":827},{"href":479,"dataGaName":480,"dataGaLocation":626},{"text":482,"config":829},{"href":484,"dataGaName":485,"dataGaLocation":626},{"text":831,"config":832},"Sustainability",{"href":833,"dataGaName":831,"dataGaLocation":626},"/sustainability/",{"text":835,"config":836},"Diversity, inclusion and belonging (DIB)",{"href":837,"dataGaName":838,"dataGaLocation":626},"/diversity-inclusion-belonging/","Diversity, inclusion and belonging",{"text":487,"config":840},{"href":489,"dataGaName":490,"dataGaLocation":626},{"text":497,"config":842},{"href":499,"dataGaName":500,"dataGaLocation":626},{"text":502,"config":844},{"href":504,"dataGaName":505,"dataGaLocation":626},{"text":846,"config":847},"Modern Slavery Transparency Statement",{"href":848,"dataGaName":849,"dataGaLocation":626},"https://handbook.gitlab.com/handbook/legal/modern-slavery-act-transparency-statement/","modern slavery transparency statement",{"items":851},[852,855,858],{"text":853,"config":854},"Terms",{"href":678,"dataGaName":679,"dataGaLocation":626},{"text":856,"config":857},"Cookies",{"dataGaName":688,"dataGaLocation":626,"id":689,"isOneTrustButton":166},{"text":859,"config":860},"Privacy",{"href":683,"dataGaName":684,"dataGaLocation":626},[862],{"id":863,"title":864,"body":162,"config":865,"content":867,"description":162,"extension":871,"meta":872,"navigation":166,"path":873,"seo":874,"stem":875,"__hash__":876},"blogAuthors/en-us/blog/authors/taylor-mccaslin.yml","Taylor Mccaslin",{"template":866},"BlogAuthor",{"name":7,"config":868},{"headshot":869,"ctfId":870},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749667996/Blog/Author%20Headshots/tmccaslin-headshot.png","tmccaslin","yml",{},"/en-us/blog/authors/taylor-mccaslin",{},"en-us/blog/authors/taylor-mccaslin","7SPWjJi2CicE7Or_JC0bA95HjfK2vx1NkcbRlLVcgCk",[878,886,894],{"title":879,"description":880,"heroImage":881,"category":158,"date":882,"authors":883,"slug":885,"externalUrl":162},"Consolidate your GitLab stack with Gitaly on Kubernetes","Discover how to install Gitaly on Kubernetes, which is now generally available.","https://res.cloudinary.com/about-gitlab-com/image/upload/v1756500636/wmey6kqzzuhirk88w2de.png","2026-05-07",[884],"Olivier Campeau","gitaly-on-kubernetes-generally-available",{"title":887,"description":888,"heroImage":889,"category":158,"date":890,"authors":891,"slug":893,"externalUrl":162},"Teaching software development the easy way using GitLab","Learn how University of Washington lecturer Stephen G. Dame uses GitLab for Education to manage student assignments, distribute course materials, and provide inline code feedback at scale.\n","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659537/Blog/Hero%20Images/display-article-image-0679-1800x945-fy26.png","2026-04-29",[892],"Rod Burns","teaching-software-development-the-easy-way-using-gitlab",{"title":895,"description":896,"heroImage":897,"category":158,"date":898,"authors":899,"slug":901,"externalUrl":162},"AI is reshaping DevSecOps: Attend GitLab Transcend to see what’s next","AI-generated code is 34% of development work. Discover how to balance productivity gains with quality, reliability, and security.","https://res.cloudinary.com/about-gitlab-com/image/upload/v1767982271/e9ogyosmuummq7j65zqg.png","2026-01-08",[900],"Manav Khurana","ai-is-reshaping-devsecops-attend-gitlab-transcend-to-see-whats-next",{"promotions":903},[904,918,930,942],{"id":905,"categories":906,"header":908,"text":909,"button":910,"image":915},"ai-modernization",[907],"ai","Is AI achieving its promise at scale?","Quiz will take 5 minutes or less",{"text":911,"config":912},"Get your AI maturity score",{"href":913,"dataGaName":914,"dataGaLocation":391},"/assessments/ai-modernization-assessment/","modernization assessment",{"config":916},{"src":917},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138786/qix0m7kwnd8x2fh1zq49.png",{"id":919,"categories":920,"header":922,"text":909,"button":923,"image":927},"devops-modernization",[921,158],"product","Are you just managing tools or shipping innovation?",{"text":924,"config":925},"Get your DevOps maturity score",{"href":926,"dataGaName":914,"dataGaLocation":391},"/assessments/devops-modernization-assessment/",{"config":928},{"src":929},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138785/eg818fmakweyuznttgid.png",{"id":931,"categories":932,"header":934,"text":909,"button":935,"image":939},"security-modernization",[933],"security","Are you trading speed for security?",{"text":936,"config":937},"Get your security maturity score",{"href":938,"dataGaName":914,"dataGaLocation":391},"/assessments/security-modernization-assessment/",{"config":940},{"src":941},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1772138786/p4pbqd9nnjejg5ds6mdk.png",{"id":943,"paths":944,"header":947,"text":948,"button":949,"image":954},"github-azure-migration",[945,946],"migration-from-azure-devops-to-gitlab","integrating-azure-devops-scm-and-gitlab","Is your team ready for GitHub's Azure move?","GitHub is already rebuilding around Azure. Find out what it means for you.",{"text":950,"config":951},"See how GitLab compares to GitHub",{"href":952,"dataGaName":953,"dataGaLocation":391},"/compare/gitlab-vs-github/github-azure-migration/","github azure migration",{"config":955},{"src":929},{"header":957,"blurb":958,"button":959,"secondaryButton":964},"Start building faster today","See what your team can do with the intelligent orchestration platform for DevSecOps.\n",{"text":960,"config":961},"Get your free trial",{"href":962,"dataGaName":190,"dataGaLocation":963},"https://gitlab.com/-/trial_registrations/new?glm_content=default-saas-trial&glm_source=about.gitlab.com/","feature",{"text":664,"config":965},{"href":516,"dataGaName":195,"dataGaLocation":963},1786803770750]