Skip to content

Concepts and High Level Architecture

The InfinStor ML Platform includes a Mlflow service hosted in the cloud. All standard capabilities of open source Mlflow are included in InfinStor. InfinStor Service includes a hosted service for Mlflow Tracking, a Mlflow Projects plugin for executing Mlflow projects in an EC2 VM and a Mlflow Model Management service. Specifically, the Mlflow functionality included with InfinStor Starter are:

Mlflow Tracking Service

  • Always on
  • Built using Lambdas and DynamoDB, therefore it does not need any VMs running 24x7
  • Multi-tenant. Define users called Data Scientist Users are each user gets to use the Mlflow Tracking service

Mlflow Projects Backend

  • Useful for running mlflow projects in one of two targets:
    • inline in jupyterlab
    • in a single VM in EC2. The VM is started up on demand and shut down when idle is detected
  • Projects can be of two types:
    • Standard Mlflow projects
    • Auto generated projects from InfinStor Transforms, which are jupyter code cells with python code, captured for use in the InfinStor platform

Mlflow Model Management

Mlflow Tracking

  • This shows the Mlflow Tracking components of the InfinStor Starter service
  • InfinStor Mlflow Tracking server is an implementation of the Mlflow REST API using AWS Lambda and DynamoDB
  • Applications that use Mlflow Tracking need to set the environment variable MLFLOW_TRACKING_URI to infinstor://
  • The Mlflow User Interface is accessed using the InfinStor Jupyterlab sidebar

Mlflow Projects

  • This shows the Mlflow Projects components of the InfinStor Starter service
  • InfinStor supplies a projects backend plugin for the open source mlflow library installed using pip
  • Applications must add the parameter '-b infinstor-backend' to the 'mlflow run' command