IBM Research has built on its "AI for Code" effort to create Project Wisdom for Red Hat, making it easier to build automations for the hybrid cloud, using plain English.
In recent decades, AI has made significant leaps forward, which is only accelerating with the emergence of foundation models. At the same time, software innovations have dramatically improved productivity across nearly every industry.
At IBM Research, we've asked ourselves what would happen if we took the best of AI and combined it with the latest in software: Could we prove that computers can program computers? This led us to a new effort we call AI for Code and the release of IBM Project CodeNet in 2021. CodeNet is the largest dataset of its kind aimed at teaching AI to code, which has since enabled leading AI research institutions like DeepMind to develop AlphaCode. Today, we're excited to share the latest in our AI for Code efforts: Project Wisdom for Red Hat Ansible.
Understanding the language of IT automation
With the ever-increasing demand for IT software skills and the widening skills gap businesses face, IT automation has become critical for scaling of companies’ digital evolutions. To manage this complexity, large open-source software developer communities like Ansible have built tools that provide simple yet powerful automation to configure, deploy, and manage across hybrid-cloud environments – using a single, consistent automation platform that Red Hat supports.
Ansible requires instructions to accomplish each job. With everything written down in simple script form, it's easy to do version control. The practical result of this is a major contribution to the "infrastructure as code" movement in IT. Managing infrastructure can and should be treated the same as software development, with repositories of self-documenting, proven, and executable solutions capable of running enterprise IT.
Just like software programming languages like Python, Java, C, C++, IT management applications have their own set of languages and schemas that are built with YAML — a popular programming language that is human-readable and easy to understand. It can also be used in conjunction with other programming languages. Because of its flexibility and accessibility, YAML is used by the Ansible automation toolto create automation processes, in the form of Ansible Playbooks.
Making Ansible more seamless with Project Wisdom
Project Wisdom is a first-of-its-kind capability that automatically generates code for developers on Red Hat Ansible through a natural-language interface. Project Wisdom enables a user to input a coding command as a straightforward English sentence, as an example, “Deploy Web Application Stack”, or “Install Nodejs dependencies.” It then parses the sentence and builds the requested automation workflow, delivered as an Ansible Playbook, which can either be accepted as it is or customized by the developer.
This on the fly customization of Wisdom recommendations provides additional context for AI to continue to tune its code generation response in real-time. This interactive mode of the developer collaborating with Wisdom enables a productivity boost while bridging the IT skills gap – enabling the automation of any number of IT tasks.
Becoming an automation expert requires significant effort and resources over time, with a learning curve to navigate varying domains. Project Wisdom intends to bridge the gap between Ansible YAML code and human language so that users can use plain English to generate functional automation content. The project is also integrated in the development environment (IDE) that developers build, debug, and manage their code in today – called “VSCode”. Ultimately, goal of Project Wisdom is to enable enterprises build, deploy, and manage infrastructure and applications with unprecedented productivity and efficiency.
Using foundation models for greater accuracy and efficiency
Project Wisdom is fueled by foundation models born from IBM’s AI for Code efforts. These state-of-the-art foundation models are built with high-quality data sources like Ansible Galaxy (that adheres to IBM’s principles for responsible AI) and uses IBM Research AI’s foundation model cluster and software stack that runs thousands of latest-generation GPUs for training.
One of IBM Research’s key goals with this project was to develop foundation models that maintain the highest levels of accuracy possible while relying on a smaller computing footprint. To this end, Project Wisdom’s models not only meet the state –of-the-art in foundation model technology, like GitHub Copilot and OpenAI Codex, but exceed the footprint efficiency by 35 times. The number of parameters has been reduced from 12 billion for the OpenAI Codex and GitHub Copilot to 350 million for Wisdom — while exceeding the quality of the models both in terms of BLEU score, a widely accepted NLP metric established by IBM, and metrics specific to Ansible.
Keeping open source at the heart of innovation
Community collaboration, along with insights from Red Hat and IBM, will be key in delivering AI and machine-learning models that align to the key tenets of open source technology. Project Wisdom, and its underlying AI model, are an extension of this commitment to accelerate the flywheel of AI with the open source community.
As IBM Research and Ansible specialists at Red Hat work to fine-tune Project Wisdom, the Ansible community will play a crucial role as subject matter experts and beta testers to push the boundaries of what can be achieved together.