Skafos Machine Learning Platform

Develop and deploy ML pipelines at scale.

Skafos is the machine learning delivery platform that provides end-to-end support throughout the machine learning lifecycle, maximum tool & framework interoperability, real-time insights, and cloud-based production scale infrastructure instantaneously.

Skafos gets machine learning into your products.

Multi-job Projects

Skafos provides tooling that makes it easy to discretize each step as a single job, and then orchestrate them as a pipeline. Each step, or chunk of code, is called a Job, and they can work either independently or together to form a Project.

  • Schedule jobs to run at specific times (hourly, daily, weekly, every 2 mins, etc).
  • Chain jobs to run one after the other.
  • Parallelize jobs by running multiple instances at once.
  • Scale up a job’s computational limits with more CPUs and Memory resources.
  • Define a job’s unique entrypoint.
  • Utilize an Add-on such as a Skafos Queue or Spark Cluster to increase speed and performance.

Dependency Management

Skafos abstracts away ugly dependency & environment management so that you can focus on your models.

  • List out each dependency in the requirements.txt file included in your project repository.
  • Skafos supports an environment.yml file included in your project repo to manage both pythonic packages and specific system-level dependencies.

Automatic Building

Skafos transforms both your new and existing code into a containerized Job that is securely deployed on our platform. Run a single monolithic job or a series of jobs as micro services representing your data science workflow. 

  • Launch a Skafos Deployment using a git push or the Skafos Dashboard. 
  • Your entire ML pipeline can run without any additional configuration or DevOps support.

Custom Model Monitoring

It’s not enough to know that your model is running, you need to understand its performance. Skafos let’s you define how your model is measured.

  • Define and track any model metric you want with a simple function call
  • Model monitoring to assess performance and drift over time

 

System Monitoring

Monitoring your active deployments is vital to delivering business value and staying ahead of potential problems. Live views into your jobs and workflow give you and your team full visibility to what is happening, always and across the entire systems.

  • Resource Utilization: CPUs, Memory
  • Deployment Status

Git push Deployment

Deployments are what pull together your Project, with all configured Jobs, executing the necessary code to run your pipeline. Each deployment is automatically versioned with a unique identifier because historical traceability is fundamental to reproducible data science.

  • Deploying a project is as simple as committing to a git repository via the Skafos CLI, github, Jupyter notebook, or IDE.
  • Every time you commit and push a change, Skafos receives the changes, and creates a new versioned deployment.

Alerts

Keep tabs on the health of your machine learning operations. Know when models begin to underperform, reach specific milestones, fail, or something else goes wrong. When ML is part of production, you need to be the first to know.

  • User-defined notifications sent via email or viewable on the Skafos Dashboard
  • Enable alerts with a single line of code

Logging

Skafos gives you live and historical logs, available via the CLI or Dashboard, to simplify job failure analysis.

  • System and user-defined logs generated for every deployment of each Job
  • Key word or phrase searchable from Dashboard
  • Real-time streaming