AI Integration
Attributes
Property | Value |
---|---|
Date Created | 2022-03-23 |
End Date | 2022-11-13 |
Slack | CLOSED #wg_ai_integration - Slack channel for the working group and the high level alignment on getting AI ready for Production |
Slack | #ai_integration_dev_lobby - Channel for all implementation related topics and discussions of actual AI features |
Slack | #g_ai_framework - Channel for the AI Framework Team which is building the base for all features (experimentation API, Abstraction Layer, Embeddings, etc.) |
Slack | #ai_strategy - Discussion on strategic and business initiatives surrounding AI/ML at GitLab. |
Slack | #ai-infrastructure - Infrastructure/Platform support for AI integration. See also &969. |
AI Architecture Documentation | Doc |
Google Doc | Working Group Agenda |
Feature Tracking | Sheet |
YouTube playlist | Playlist on GitLab Unfiltered |
Parent Epic | Parent epic |
Epic/Issue Working Group label | wg-ai-integration issue board and wg-ai-integration epic search |
Epic label for prioritized prototypes | wg-ai-integration-prioritized-prototype |
Issue Board for AI Framework group | Issue board link using label group::ai framework |
Overview & Status | See Exit Criteria below |
Meeting schedule | Monday, Tuesday, and Wednesday at 8am Pacific and Thursdays at 1pm Pacific |
Goal
The GitLab AI Integration Working Group aims to define, coordinate and ramp up integration of AI capabilities into all product areas
Overview
We want to enable all product teams to be able to use advanced AI capabilities for improving and adding functionality to the product so users can be faster and more productive in their DevSecOps lifecycle. For product teams we want to establish a clear and fast way for going from idea, experiment to production when using AI functionality. Incorporating the services, models and knowhow that the MLOps group has built over time and can provide to the wider team.
The working group will facilitate fast experimentation and prototyping of AI capabilities. We will also advise on what must be considered (and in some cases, get explicit approval on) before moving to production, including legal approval, ethical use of AI, potential necessary changes to terms of service, performance implications, hosting cost implications, infrastructure readiness, security readiness, licensing of 3rd party software/services, appropriate GitLab licensing levels for features, value add in helping users achieve their goals and needs, etc.
More information on the effort and plans can be found in the internal handbook.
Goals
This is a list of topics that we want to discuss:
- Classification of AI possibilities and complexities
- Ideation and understanding how experimentation can be done
- Rapid ML Prototyping
- API’s and Framework for experimentation
- Feature Flagged Prototypes
- Determine how teams without Product Design representation can progress with validation
- Groundwork
- Base API’s for all teams
- Infrastructure
- Documentation
- Understanding of Jobs and user needs to be affected
- Existing ML features
- Road to production for features
- Different gates
Exit Criteria
The following criteria should be met for the group to disband:
- Product teams have a clear method to build and integrate AI into GitLab product areas.
- The integration platform should have a product group handling maintanence and feature development
- We have a structured methodology for evaluating new AI models, adding them to the integration platform to allow them to be consumed by product teams.
- We have a roadmap plan to achieve GA for our initial AI experiments.
- Documented process for handling AI feature proposals as part of the prioritization framework
- Move SAFE content from the internal handbook to the public handbook where appropriate and SAFE.
- Develop an evaluation process of user experience between options to make more intelligent decisions on which engineering solution we recommend.
Q2 OKRs
Deliver X experimental, Y beta, and Z GA AI features
Roles and Responsibilities
Working Group Role | Username | Person | Title |
---|---|---|---|
Executive Stakeholder | @hbenson | Hillary Benson | Senior Director, Product Management - Sec, Data Science & Monitor |
Executive Stakeholder | @timzallmann | Tim Zallmann | Senior Director of Engineering, Dev |
Facilitator | @tmccaslin | Taylor McCaslin | Group Manager, Product - Data Science |
Functional Lead - AI Model Validation | @mray | Monmayuri Ray | Engineering Manager AI Model Validation |
Functional Lead - UX | @jmandell | Justin Mandell | Product Design Manager: Analytics, Govern, ModelOps, and Secure |
Functional Lead - UX | @pedroms | Pedro Moreira da Silva | Staff Product Designer |
Functional Lead - Legal | @m_taylor | Matthew Taylor | Sr. Director of Legal |
Pricing representative | TBH | TBH | Principal Pricing Manager, Product |
Product representative | @mushakov | Melissa Ushakov | Group Manager, Product - Plan |
Product representative | @sarahwaldner | Sarah Waldner | Group Manager, Product - Create |
Product representative | @abellucci | Alana Bellucci | Senior Product Manager, Govern:Threat Insights |
Product representative | @joshlambert | Joshua Lambert | Director of Product, Enablement |
Product representative | @tlinz | Torsten Linz | PM, Source Code |
Development representative | @johnhope | John Hope | SEM, Plan |
Development representative | @andr3 | André Luís | FEM: Source Code |
Development representative | @cdu1 | Chun Du | Director of Engineering, Enablement |
Development representative | @igor.drozdov | Igor Drozdov | Staff Backend Engineer, Source Code |
Development representative | @jeromezng | Jerome Ng | Director of Engineering, Fulfillment |
Development representative | @pcalder | Phil Calder | Senior Engineering Manager, Anti-abuse, Govern, and Growth |
Development representative | @nmccorrison | Neil McCorrison | Engineering Manager, Govern: Threat Insights |
Development representative | @carlad-gl | Carla Drago | Senior Backend Engineer, Manage: Import & Integrate |
Development representative | @donaldcook | Donald Cook | EM, Project Management |
Legal representative | @jbackerman | Jesse Backerman | Managing Legal Counsel |
Vulnerability Research Representative | @idawson | Isaac Dawson | Staff Vulnerability Researcher |
Vulnerability Research Representative | @dbolkensteyn | Dinesh Bolkensteyn | Sr. Vulnerability Researcher |
Third Party Security Risk Representative | @tdilbeck | Ty Dilbeck | Security Risk Manager |
Governance and Field Security Representative | @jlongo_gitlab | Joseph Longo | Governance and Field Security Manager |
Security Compliance Representative | @kbray | Ken Bray | Sr. Security Compliance Engineer (Dedicated Markets) |
Security Compliance Representative | @lcoleman | Liz Coleman | Security Compliance Manager (Commercial) |
Security Automation Representative | @agroleau | Alexander Groleau | Senior Security Engineering Manager (Automation) |
Security Automation Representative | @imand3r | Ian Anderson | Staff Security Engineer (Automation) |
Application Security Representative | @greg | Greg Myers | Security Engineer (Application Security) |
Solutions Architecture Representative / Rapid Prototyping Team Member | @bartzhang | Bart Zhang | Channel Solutions Architect |
Product Marketing Representative | @laurenaalves | Laurena Alves | Senior Product Marketing Manager |
Developer Relations Representative | @johncoghlan | John Coghlan | Director, Developer Advocacy |
Privacy Representative | @emccrann | Eugene McCrann | Lead Legal Counsel, Privacy |
Quality Engineering Representative | @at.ramya | Ramya Authappan | Engineering Manager, Quality, Dev & Analytics Section |
Infrastructure | @lmcandrew | Liam McAndrew | Engineering Manager, Scalability Frameworks |
Infrastructure | @igorwwwwwwwwwwwwwwwwwwww | Igor Wiedler | Staff SRE, Scalability Frameworks |
Infrastructure | @mbursi | Michele Bursi | Engineering Manager, Delivery System |
Support | @ralfaro | Ronnie Alphero | Support Engineering Manager |
Enablement | @cs.wang | Christopher Wang | Sr. Manager, Enablement (Sales Development) |
Engineering Groups
We currently have two core AI Development groups at GitLab: AI Framework group and AI Model Validation group.
AI Model Validation group
The AI Model Validation group helps all product groups to match the right model(s) and AI/ML-based techniques to the user problem they must solve. They do that by evaluating, building, training, and tuning many of the models GitLab uses as well as by proactively sharing AI resources and experience. Today, they also directly build and maintain some user-facing AI features.
- AI Model Validation group develops in-house AI features that run natively within GitLab infrastructure. The group develops these models to meet capability, quality, customizability, privacy, and cost requirements. These components include an inference engine, abstraction layer, and models.
- The custom-built models help in use cases when there is a need to train models on customer-proprietary data (like all merge requests and commits for a customer) and when 3rd party models do meet our needs.
- Their currently released features are code suggestions which is currently in customer beta and suggested reviewer which is GA.
- This group can help evaluate models for functional correctness and model perplexity based on metrics and (often large) benchmark datasets, which is a more statistical evaluation than manual testing. This can help determine the most quality model for a feature’s use-case.
- They work in many languages, including Ruby on Rails, Golang, Python (for machine learning and data science), and Typescript (for the VS Code Plugin). The group comprises of ML Scientistists, MLOps Engineers , ML Infrastructure Engineers, and Fullstack engineers.
You can contact this group via Slack in #g_ai_model_validation. View their issue board here. To see who is engaged on this effort please see here.
AI Framework
AI Framework exposes AI services and the underlying models (third party or native GitLab models) to all product groups.
- The AI Framework group enables the rest of the development department to build AI features through the abstraction layer.
- The abstraction layer supports OpenAI and is being extended to support equivalent Google AI functionality. Other commercial, open-source, and GitLab custom-built models are also being considered.
- This group empowers other groups to evaluate models via manual human testing, through the Experimentation API.
- This group works with Ruby on Rails as they make it easy for the GitLab product to add AI functionality through the
gitlab/gitlab-org
repo.
You can contact this group via Slack in #g_ai_framework. View their issue board here.
AI Engineering Allocation
Because of the dynamic nature of the AI work and folks to be engaged, we are putting the AI work under an Engineering Allocation. This means that assignments may change rapidly as focus and priorities shift. Current focus is on Code Suggestions adoption.
Name | Role | Area of Work |
---|---|---|
Alexandru Croitor | Senior Backend Engineer | AI Enablement |
Eulyeon Ko | Backend Engineer | AI Enablement |
Nicolas Dular | Senior Backend Engineer | AI Enablement |
Denys Mishunov | Staff Frontend Engineer | AI Enablement |
Jan Provaznik | Staff Backend Engineer | AI Enablement |
Mikołaj Wawrzyniak | Staff Backend Engineer | AI Enablement |
Pavel Shutsin | Senior Backend Engineer | AI Enablement |
Max Woolf | Staff Backend Engineer | AI Enablement |
Tan Le | Senior Fullstack Engineer | AI Enablement |
Andras Herczeg | Backend Engineer | AI Enablement |
Sebastian Rehm | Engineering Manager | AI Enablement |
Daniel Tian | Senior Frontend Engineer | Threat Insights |
Gregory Havenga | Backend Engineer | Threat Insights |
Kerri Miller | Staff Backend Engineer | Code Review |
Stanislav Lashmanov | Senior Frontend Engineer | Code Review |
Simon Knox | Senior Frontend Engineer | Plan:Project Management |
Nikola Milojevic | Senior Backend Engineer | Application Performance |
Aleksei Lipniagov | Senior Backend Engineer | Application Performance |
Matthias Käppler | Staff Backend Engineer | Application Performance |
Roy Zwambag | Backend Engineer | Application Performance |
Paul Phillips | Engineering Manager | Application Performance |
Igor Drozdov | Staff Backend Engineer | Source Code |
Patrick Cyiza | Backend Engineer | Source Code |
Natalia Radina | Frontend Engineer | Source Code |
Alper Akgun | Staff Fullstack Engineer | VS Code Extension |
Tomas Vik | Staff Fullstack Engineer | VS Code Extension |
Enrique | Staff Frontend Engineer | VS Code Extension |
André Luís | Engineering Manager | Editor Extensions |
Mike Eddington | Staff Backend Engineer | Editor Extensions (Visual Studio) |
Ross Fuhrman | Senior Backend Engineer | Editor Extensions (Visual Studio) |
Gabriel Mazetto | Senior Backend Engineer | Editor Extensions (JetBrains) |
Naman Gala | Senior Backend Engineer | Editor Extensions (JetBrains) |
Marshall Cottrell | Principal | Editor Extensions (Code Suggestions/VS Code) |
Illya Klymov | Senior Frontend Engineer | Editor Extensions (Code Suggestions/VS Code) |
Lena Horal-Koretska | Senior Frontend Engineer | Editor Extensions (Language Server) |
Erran Carey | Staff Incubation Engineer | Editor Extensions (Neovim) |
Ash McKenzie | Staff Backend Engineer | Editor Extensions (Neovim) |
Jay Swain | Engineering Manager | Model Evaluation |
Andrei Zubov | Senior Frontend Engineer | Deploy:Environments, Model Evaluation |
Allison Browne | Senior Backend Engineer | Model Evaluation, Verify:Pipeline Execution |
Dylan Bernardi | Associate Backend Engineer | Model Evaluation |
Stephan Rayner | Senior Backend Engineer | Model Evaluation |
Igor Wiedler | Staff Site Reliability Engineer | Model Evaluation |
Alejandro Pineda | Staff Site Reliability Engineer | Model Evaluation |
38406a39
)