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
Learn how to create and publish your algorithms
Get Started NowIf 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.
Algorithm Environments
Matrix of supported algorithm runtime environments
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.
Migrate a Legacy-Language Algorithm to an Environment-Based Algorithm
Table of Contents
Deep Dives
Best Practices and Deep Dives for Algorithm Development and Model Deployment
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
Getting Started
Getting your algorithm on Algorithmia is easy. Find out how with this tutorial.
Markdown
Markdown syntax for Algorithm descriptions.