Understanding AI/ML Systems In Production

AI and ML have evolved from complex mysteries few years back to everyday tools, driven by models like ChatGPT and Bard.

ChatGPT and Bard made AI easier, but most are still basic because turning them profitable needs rare know-how mostly in big companies. It’s not just about Language Models; AI’s larger development faces this. Many miss the overall picture. This article shows the big stages and parts of AI software.

Let’s start with this. Look at the below picture and think is this how you imaged how an AI/ML system to look like.

Then small box in the middle is your ml model(either a .bin or .pkl or a consumable format) and this is what you mostly hear about and see.

TRADITIONAL VS AI SOFTWARE

In traditional software you have 2 main pillars:

With AI systems the 3 main pillars are as below:

An AI software demands a diverse team beyond traditional developers, including data engineers, ML engineers, MLOps experts, in addition to the initial researchers and data scientists.

Understanding the phases in AI system development and maintenance is crucial, building upon these foundational elements.

STAGES OF AI PRODUCT DEVELOPMENT

Our AI software development starts in parallel or in most cases after a base version of the AI/Ml model is developed.

Business Understanding:

This is the core. As we start with building AI software, we also start with these set of questions w.r.t business and AI.

The reason we look at the user and business first is that any system design should consider the user the most. This automatically answers questions on efficiency, scalability and usability if we identify how customers use the AI system.

Source:https://hbr.org/2018/04/a-simple-tool-to-start-making-decisions-with-the-help-of-ai : Understanding AI/ML Systems In Production

Software and Cloud Engineering:

End of the Day we are building software. So we start with a high level architecture and dive in deep. What do we start with?

Data Engineering :

An AI model needs data in a consumable format(json, yaml, csv etc) and the input to model needs to be abstracted from the data pipeline changes.

Lets try breaking down the different steps here:-

ML Model Engineering:

We have the model from the data scientists, what next. Is it deployment? No really. We still have packaging, fine tuning, evaluation and also automating the training and retraining pipelines.

Model Deployment,Monitoring and Explainability:

So we have an optimized model so the only thing left is deployment right? we have the below steps pending.

Putting all this together, we arrive at the below picture of an AI systems might look in production.

FINAL PICTURE:

Source: MLOPS.ORG

This article aims to explore the design philosophy and the general components of an AI Software in production.

Each stage and each step is a study of its own and all of this might be done by a single team or by multiple teams.

Leave a comment