Categories
00 - Cloud-Native App Dev

Develop faster, operate smart: A Kubernetes-native guide to AI application development

tl;dr

A Kubernetes-native software engineering approach for the development of AI applications helps you increase developer productivity, optimize resource consumption as well as simplify operations. A hands-on demo of this approach can be seen here.

Two-step development approach

The usage of an AI/ML model in an application requires basically a two-step development approach. The first phase comprises everything from obtaining the raw data used for model training up to a readily trained AI model that is offered as service to other applications. During the second phase, the application itself is developed and the AI model service is integrated into it. Quite some effort has been put into optimizing this first phase related to Data Science, for example using MLOps principles as is explained here.

Obstacles of AI application development

Regarding the second phase, which is more related to software engineering, the AI-specific requirements need to be taken into account. Typical obstacles here comprise the choice of the right AI framework as well as the coding itself, the integration of the AI application into multiple deployment environments like development, testing & production, as well as the availability of sufficient compute power and an optimized resource consumption.

Kubernetes-native software engineering

During a presentation at the event “Accelerate innovations with modern applications” on 30.06.2022 we addressed these issues by using a Kubernetes-native software engineering approach for the aforementioned second phase of the AI application development! With Red Hat OpenShift, all stages of the software development life cycle are carried out directly inside the platform using modern DevOps principles and GPU-accelerated computing.

Please be invited to watch the recording of this session, which is aimed at developers of AI applications who want to increase their productivity as well as IT operators who want to learn more about the specific needs of AI applications, covering the following topics:

  • Introduction to the Kubernetes-native software engineering approach and its superiority compared to classical approaches
  • Hands-on demonstration of this approach, starting by creating a developer workspace and convenient in-browser IDE using Red Hat CodeReady Workspaces (now called OpenShift Dev Spaces) running on Red Hat OpenShift
  • Execution of an AI workload on CPU as well as GPU using the NVIDIA GPU Operator
  • Offering the AI workload as service using a Red Hat OpenShift application, which is being built and deployed via a CI/CD pipeline using Red Hat OpenShift Pipelines.

Recording of the session

The repo, on which the demo in the recording is based, can be found on GitHub.

Please feel free to contacting us (Benjamin & Manuel) in case of questions, remarks or ideas regarding Kubernetes-native software engineering, AI application development or GPU usage on OpenShift.

By Manuel Hahn

I am a Specialist Solution Architect at Red Hat, focused on AppDev, DevOps & Cloud-Native. Having an education in physics and space engineering, I have more than 20 years of hands-on experience in software & systems engineering across multiple industries. These activities include software, database and algorithm development, computational modeling including high-performance computing as well as continuous software engineering using DevOps practices, spanning the entire software development life cycle from requirement analysis to operations. My current favorite talking points are all technical & cultural aspects of the DevOps principles as well as Kubernetes-based software engineering.

One reply on “Develop faster, operate smart: A Kubernetes-native guide to AI application development”

Leave a Reply

%d bloggers like this:
close

Subscribe to our newsletter.

Please select all the ways you would like to hear from Open Sourcerers:

You can unsubscribe at any time by clicking the link in the footer of our emails. For information about our privacy practices, please visit our website.

We use Mailchimp as our newsletter platform. By clicking below to subscribe, you acknowledge that your information will be transferred to Mailchimp for processing. Learn more about Mailchimp's privacy practices here.