KAN: Simplifying Edge AI with Microsoft’s KubeAI Application Nucleus

TL;DR:

  • Microsoft’s KAN project simplifies the development and management of machine learning applications on Kubernetes at scale.
  • KAN provides an environment for running code on edge hardware, aggregating data from locally connected devices, and leveraging pre-trained machine learning models.
  • The platform offers a monitoring and management portal, along with a low-code development environment for on-premises or cloud-based Kubernetes systems.
  • KAN integrates with Azure Edge and AI services, and users can build applications by attaching computing devices and leveraging various computing devices.
  • KAN supports industrial IP cameras, facilitates testing using Azure VMs, and enables many-to-many processing of camera feeds.
  • Developers can use KAN’s graphical design tool to build “AI skills” and export data to customize workflows.
  • KAN simplifies packaging and deployment to target devices, with future plans to support deployments to multiple devices.
  • The project draws inspiration from Azure Percept and combines IoT tooling concepts with features from Microsoft’s Power Platform.

Main AI News:

As industrial applications increasingly rely on computer vision for crucial functions such as product line management, stock control, and safety monitoring, the challenges of utilizing computer vision at the network edge have become more pronounced. Latency and dependence on mixed networks or cloud resources have hindered the seamless integration of computer vision into edge devices. Recognizing this need, Microsoft CEO Satya Nadella introduced the concept of “the intelligent edge,” aiming to bring cloud-native tools and services to devices within networks.

While Microsoft has made significant strides in containerizing Azure Cognitive Services and delivering them through Azure IoT Edge, a gap remains when it comes to custom edge implementations. Containers have emerged as the ideal deployment method for edge software, with Kubernetes and service meshes providing a platform-agnostic solution for code deployment. It is within this context that the KAN (KubeAI Application Nexus) project was born, offering an open-source solution hosted on GitHub.

KAN’s primary objective is to simplify the development and management of machine learning applications on Kubernetes at scale. It provides an environment for running code on edge hardware, aggregating data from locally connected devices, and harnessing the power of pre-trained machine learning models for valuable insights. Moreover, KAN offers a comprehensive monitoring and management portal along with a user-friendly low-code development environment, compatible with both on-premises and cloud-based Kubernetes systems.

It’s important to note that the KAN management portal primarily serves as a control and monitoring interface rather than a data endpoint. By integrating seamlessly with Azure Edge and AI services like Azure IoT Hub and Azure Cognitive Services, KAN offers enhanced functionality when hosted on the Azure platform. To get started with KAN, users require a Kubernetes cluster with Helm support, while Azure users can take advantage of Azure Kubernetes Service (AKS) for a simplified setup.

Once KAN is installed, users can leverage its capabilities through the KAN portal, where they can attach various computing devices such as NVIDIA Edge hardware or Azure Stack Edge. KAN supports a wide range of devices running on Kubernetes clusters or Azure Edge devices. Additionally, the platform facilitates testing by utilizing Azure VMs as test devices, enabling the creation of digital twins to ensure that edge systems are running optimally. KAN also extends its support to industrial IP cameras and enables many-to-many processing, allowing multiple applications to work seamlessly with camera feeds.

Developing machine learning applications with KAN involves carefully selecting the appropriate device architecture and acceleration technologies. KAN recommends using accelerated devices, such as GPUs or NPUs from NVIDIA and Intel, for safety-critical edge applications. To aid developers in this process, KAN provides a node-based graphical design tool that simplifies the building of “AI skills.” This intuitive tool connects camera inputs to models and allows for the transformation and filtering of outputs. Furthermore, KAN enables data exportation to other applications and services, empowering users to create customized workflows.

Once applications are built and thoroughly tested, KAN streamlines the packaging and deployment process to target devices through its user-friendly portal. Although currently limited to deploying to one device at a time, KAN has future plans to support deployments to multiple devices, ensuring a centralized view of all deployments. This simplifies the delivery of machine learning applications to Kubernetes systems or Microsoft’s Azure IoT Edge runtime container host, providing developers with a unified and streamlined approach.

Taking inspiration from the canceled Azure Percept solution, KAN aims to simplify edge AI deployments with its low-code tools. By adopting a similar approach to the Percept developer experience, KAN combines key IoT tooling concepts with features from Microsoft’s Power Platform, ultimately enhancing the ease of building and deploying machine learning applications.

Conclusion:

The emergence of KAN and its capabilities in simplifying edge AI deployments signifies a significant development in the market. By providing a comprehensive platform for developing and deploying machine learning applications on Kubernetes at scale, KAN addresses the challenges associated with utilizing computer vision at the network edge.

Its integration with Azure services and support for various computing devices open up new opportunities for businesses to harness the power of edge machine learning efficiently and effectively. This advancement is poised to drive innovation and create value across industries, paving the way for accelerated growth and improved operational efficiency.

Source