This blog post is part of an ongoing series about GitLab's journey to build and integrate AI/ML into our DevSecOps platform. The series starts here: What the ML is up with DevSecOps and AI?. Throughout the series, we'll feature blogs from our product, engineering, and UX teams to showcase how we're infusing AI/ML into GitLab.
Merge requests are the central point of collaboration for code changes in GitLab. They often contain a variety of changes across many files and services within a project. Often, merge requests communicate the intent of the change as it relates to an issue being resolved, but they might not describe what was changed to achieve that. As review cycles progress, the current state of the merge request can become out of sync with the realities of the proposed changes and keeping people informed. We believe that we can leverage AI and large language models (LLMs) to help provide relevant summaries of a merge request and its proposed changes, so reviewers and authors can spend more time discussing changes and less time keeping descriptions updated.
In a rapid prototype, Kerri Miller, Staff Backend Engineer for our Code Review Group, used AI to summarize the merge request changes directly within the merge request. She developed a
/summarize_diff quick action to post a summary of changes into a comment:
Iterating on AI/ML features
While just an experiment today, we are iterating on how to effectively bring features like this to our customers. We're starting with providing complete summaries of what changes a merge request makes, and are beginning to look at more targeted flows to enhance the review cycle experience. Current areas we're investigating include providing:
- Summaries of what's changed between each review cycle in a merge request.
- Summaries of review feedback to merge request authors.
This experiment is just the start of the ways we're looking to infuse GitLab with AI/ML capabilities to help GitLab users become more efficient and effective at their jobs. We are looking across the software development lifecycle for painful and time-consuming tasks that are ideal for AI-assisted features. We'll continue to share these demos throughout this blog series.
Interested in using these AI-generated features? Join our waitlist and share your ideas.
Continue reading our ongoing series, "AI/ML in DevSecOps".
Disclaimer: This blog contains information related to upcoming products, features, and functionality. 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. As with all projects, the items mentioned in this blog and linked pages are subject to change or delay. The development, release, and timing of any products, features, or functionality remain at the sole discretion of GitLab.
“Wondering what this merge request does? Learn how @gitlab is experimenting with ML-powered product features that help summarize merge request changes.” – Kai Armstrong
Click to tweet