Developer Center

Resources to get you started with Algorithmia

Algorithm Development Overview

Welcome to deploying your algorithms and models using Algorithmia's AI Layer. You can create algorithms using Java, Python, R, Rust, Scala, Ruby, and JavaScript by following along with one of our Language Guides.

If you have a trained machine or deep learning model and want to deploy it on our platform, check out the Model Deployment Guides where you'll see tutorials for popular frameworks such as Scikit-learn (including a hands-on video), PyTorch, and Tensorflow.

Get Started

Get Started icon

Learn how to create and publish your algorithms

Get Started Now

If you have a trained machine or deep learning model and want to deploy it on our platform, check out the Deploy Model Guides where you'll see tutorials for popular frameworks such as Scikit-learn, PyTorch, and Tensorflow.

Deep Dives

Best Practices and Deep Dives for Algorithm Development and Model Deployment

Algorithm Checklist

Follow these tips to create the best algorithm profile possible.

Error Handling

How to handle errors between algorithms.

Algorithm Management

Create, Update, Publish, and Delete Algorithms via the Algorithmia API

Deploy Models via CI/CD

Using CI/CD to continuously deploy your ML models via Jenkins, GitHub Actions, or GitLab CI/CD

Create an Algorithm Backed by an External SCM Provider Through the API

When you create an algorithm through the API, Algorithmia’s internal SCM provider is used by default unless an external SCM configuration is specified explicitly. To use an external SCM provider as the source code repository host for your algorithms, a cluster admin must first set up the configuration. At a high level, the workflow looks like this:

Languages

Guides to building an algorithm in your favorite language including: Python, R, Scala, Rust, Java, Ruby and JavaScript.

Algorithm Development with Model Versioning

In the past, when shipping algorithms into production on Algorithmia, it’s been a challenge to ensure the integrity of model files. It’s also been difficult to update models, as it’s often the case that model file paths are hard-coded into the algorithm source code itself. Until now, there’s never been a standardized way to manage the serialized model files and other data files that are used by algorithms. Enter the model manifest system.

Reloading Models

Reloading your ML model file when it changes

Retrieve Algorithm Build-Time Logs

You can query Algorithmia’s API to retrieve build logs for a given algorithm. We offer the following two routes for retrieving build logs; you may decide that one is more convenient based on your workflow or use case. The /builds endpoint can be used to retrieve information for any algorithm build, while the /versions endpoint will only list algorithm builds that’ve been published.

Retrieve Algorithm Run-Time Error Logs

You can query Algorithmia’s API to retrieve error-log stack traces for a given algorithm. The response will contain errors from the past 7 days, constrained to 200 algorithm executions. In order to support a variety of automated workflow configurations, we provide two separate ways to identify an algorithm on your cluster in order to request the logs.

Source Code Management

Controlling where the source code for your algorithm resides

Algorithm Environments

Matrix of supported algorithm runtime environments

Getting Started

Getting your algorithm on Algorithmia is easy. Find out how with this tutorial.

Markdown

Markdown syntax for Algorithm descriptions.