The idea
Idea is to make upgrade process to TensorFlow 2.0 of your Jupyter notebooks even easier! Started as a conversation on Twitter:
I mean ipynb has json structure. Do you feel we should extend the converter? I am happy to contribute :)
— Sergii @ 🔜 #TFDevSummit (@lc0d3r) January 21, 2019
How to:
Just replace https://github.com/ with http://tf2up.ml, i.e.,...
Current:
http://github.com/lc0/deeplearning-playground/blob/master/The_simplest_fashion_mnist_%2B_Confusion_Matrix.ipynb
Change to:
http://tf2up.ml/lc0/deeplearning-playground/blob/master/The_simplest_fashion_mnist_%2B_Confusion_Matrix.ipynb
See Example
BOOKMARKLET
Alternatively, you can simply use a Bookmarklet for this. You can manually add a bookmarklet based on the code below. Just encode the code with encodeURI in your browser console.
javascript:(function(){window.open(window.location.toString().replace(/.*github\.com\/(.*)/,'http://tf2up.ml/\$1'));})()
Or drag this one
Now, once you visit a GitHub repository with ipynb notebook, you can just click on the bookmarklet. Next, you are going to be redirected to page with a diff, showing the difference between original notebooks and a converted one.
How it works
This project is standing on the shoulders of giants:
- TensorFlow's tf_upgrade_v2 with brand new support of inline jupyter notebook conversion
- nbdime for generating nice diffs for before and after
- Kubernetes + Helm for deploying this tiny service
We cache files on the server, so if you have updated GitHub source, we can still show you old content
Author
The service was developed after work and on weekends by Sergii Khomenko. If you
- see anything unexpected 🐛
- would like to make this design better 👩🏽🎨
- have any other awesome ideas 💡
Kudos
Thanks to all amazing people, that in one or another way helped this project:
- Daria Korkuna for creating logo
- Jun Santos for frontend revamp
- @DynamicWebPaige for supporting and making TF community awesome
- Martin Wicke for TF2, cake, and feedback
- Jerry Kurata for testing the early versions of the upgrader