imageAlt

THE PROJECT

Codalab

Slide 0

Reimagining Codalab using Docker containers, enabling multilingual code submissions for diverse competitions was no small feat, and no small payout. From predicting user demographics to assisting CERN (European Organization for Nuclear Research) with particle path predictions, our work has significantly expanded Codalab's versatility and accessibility for the AI community.

Mission background image
Mission
The goal of the Codalab project was to reimagine and enhance the existing Codalab platform by integrating Docker container technology. This major upgrade aimed to allow for multilingual code submissions, making the platform more versatile and accessible to a broader range of participants in various AI competitions. Specifically, the project focused on: Enabling Multilingual Submissions, Implementing Docker Containers, Facilitating Research and Education and Supporting Advanced Use Cases.
Problem Solution Artwork
Problem
Codalab faced a significant limitation in its support for programming languages, primarily accommodating only Python submissions, which restricted its appeal to a broader AI and machine learning audience. This limitation, coupled with the need for enhanced functionality for handling machine learning competitions, prompted CKC's involvement. CKC addressed these challenges by integrating Docker container technology, which enabled the platform to support a variety of programming languages like Julia, R, and .NET. This integration not only expanded Codalab's usability for a wider range of users but also enhanced its system stability, security, and capability to cater to both educational and research-oriented applications, thereby elevating its overall functionality and utility in the AI community.
Solution
We architected a solution with Docker containers on Codalab workers using Signed URLs for saving solutions and grabbing submission metdata. Docker Volumes would contain relevant datasets for the appropriate phase of a competition, and save the results to be compared to other submissions. We even made various plugins for allowing Artificial Intelligence professors to compare submissions privately and programmatically. We used Docker-in-Docker for the workers so a privileged docker container could spawn children and destroy them safely after completion or error. Workers could run for months without problems!
Tech
Docker was the real star for this project. Codalabs needs and dockers containerization and volume management were a perfect match. We also used Python, Django, and S3 and various other technologies to round out the stack.
Docker
Docker is our preferred choice for containerization. It's an open-source containerization platform that enables developers to package applications into containers. Docker's intuitive design and user-friendly interface make it a clear favorite for our team to rapidly build and deploy applications.
Tech Artwork
Coding Computer Artwork
Spaceships shooting to space

EMBARK ON THIS EXTRAORDINARY
JOURNEY WITH US

Are you ready to see your vision come to life? We would love to hear from you!