How to make ML model publicly available? When I have finished building my machine learning model and want to make it publicly available for other users then what could be the best solution for that?
I mean I'm looking for a solution where there is a UI interface for an input/output and the ML code get executed through this UI.

Simple Jupyter Notebook - The code is not executable.
Jupyter Notebook + MyBinder + ipywidgets - nice UI can be build by the ipywidgets and the ML code is executable but still the user needs to execute all the cell boxes before he/she can use the ML model.
plotly/Dash - So far I have no experience by this. It is said that it can be used for building web applications with highly custom UI's, deploying apps to servers and then share them through URLs. Is it so that when using this then I need to have my own server where the ML code runs?
Is there any solution where I don't need to have my own server and can deploy and run my ML project?
The easier solution in my opinion consist to build your application using a framework like Streamlit and deploy it using docker.
Docker let you encapsulate your code and all needed package in a container, which you could think as an virtual machine (but its not); it will run on all OS since it use your configuration.
Of course there is plenty of other way but its my personnal favorite.