Learn to run & execute Jupyter Notebooks as a REST API in this series.
How do we run Jupyter Notebooks as a Rest API?
This is a question that I have wanted to solve learning how powerful Jupyter notebooks can be for programmers of all backgrounds. The reason: automation.
I love using jupyter notebooks to prototype rapidly or to write various machine learning apps. What I don't love is needing to open them every time to run them. What's more, I often need to share output results from other notebooks and find the current infrastructure not conducive.
So what to do? Turn any jupyter notebook (aka ipynb
) into an executable REST API endpoint that I can trigger (or use) anywhere in the world.
Enter REST APIs.
REST APIs have become a de facto way for software developers to build rich user experiences across a wide range of applications: websites, iot/edge devices, smart phones, tvs, and so much more. Think of them as a way for two software applications to easily communicate with each other.
Jupyter notebooks have become a de facto tool for data scientists everywhere. You can render graphs & charts, write & run code, display images, and take user input all within a simple GUI that works in the browser.
In this series, we're going to combine the two ideas to make a automation powerhouse.
- REST API
- Papermill
- FastAPI
- Jupyter
- Webhooks
- Streaming Notebook Cell Results