Hello Alex!
@Alexander Feiszli Thank you very much for the interesting input. I believe I got your
point.
In a nutshell, you’re not as much interested in the interactive workflow as in a simple
and clean way to productionize or present findings to the customers using either directly
the Jupyter notebooks or an automated Open Shift compatible pipeline to export such app
with minimal effort, did I get that right?
I can see that the appmode extension leverages Jupyter widgets, which makes it sort of
limited by the range of available widgets, so I understand that this might not fulfill
higher expectations.
Although it has not yet been in my scope, I believe this is doable and I am putting it on
my list as I would love to have such feature too 🙂.
Will consult the ODH guys, too and see if there is an interest or possibility of
collaboration.
In any way, I’ll keep in touch and if it happens that such feature is in progress
separately from ODH, I’ll let you know. Hope that satisfies your needs at least for now.
Have a wonderful day!
Marek
On 13 Mar 2019, 15:21 +0100, Alexander Feiszli <afeiszli(a)redhat.com>, wrote:
@Vaclav Pavlin I tried this out last night and I think it works well
:)
@Marek Cermak this is for teams of data scientists at this client that want to
production-ize their research. Jupyter has been provided as a way to work on their
research in the cloud, and to share their work with other researchers. However, after
their work is completed, the question is how do we quickly turn this around into
production apps?
The number of end users can range from a few people to a few dozen people to potentially
large numbers of people depending on the app. I think for use cases with large numbers of
end users, we will make a custom interface and a python api backend from the notebook.
However, for many cases, I think we would like a more streamlined, automated way to
production, and have a pipeline that goes straight from notebook -> production app. For
instance, a researcher may come up with a tool that can be used by 3 people in the field
for analysis, but those 3 people would be the only people to use it, so bringing in app
developers is not an efficient use of time. Currently they use low-code solutions like
QuickApps and MatLab App Designer for these purposes.
Almost all the apps follow this pattern:
1. End user provides or chooses input data
- can be many different data sources, from local files to enterprise DB's to web
scraping
2. Some data processing is run
3. Output data is provided to the end user
- this will often include visualization
Given this consistent pattern we can probably come up with some templates for going from
notebook to web app quickly as well, or get some other low-code solution that is
OpenShift-compatible.
My thought with the "appmode" plugin is that the researcher can work on
something in non-prod until it looks good. They can switch to the "app" view
every once in a while to check it out. Then, once it is ready, they can trigger a pipeline
that deploys a hub in production. This hub would be configured to spawn instances of that
notebook document, and the url would go straight to the appmode view of the document. The
hub can be configured to clean up instances when the browser is closed to conserve
resources.
We're still exploring the different ways to bring notebooks to production, this is
just one idea for doing that.
If this is relevant to your work I would love to discuss that with you.
Thanks,
Alex
> On Wed, Mar 13, 2019 at 8:49 AM Václav Pavlín <vasek(a)redhat.com> wrote:
> > Resending - somehow I was subscribed with wrong email:)
> >
> > HI Alex,
> >
> > It seems like that is a just a notebook extension - so yes, we can easily add
that to the image(s) and enable it.
> >
> > To try that, I'd recommend forking this repository and adding the install
commands in the linked file below the location:
> >
> >
https://github.com/vpavlin/jupyter-notebooks/blob/master/minimal-notebook...
> >
> > You can add the "appmode" Python package to the
requirements.txt: https://github.com/vpavlin/jupyter-notebooks/blob/maste...
> >
> > You can then build the image from the minimal-notebook/ folder with
> >
> > s2i build --copy . centos/python-36-centos7 s2i-appmode-minimal-notebook
> >
> > Then push it to your Nexus and create an image stream. Restart JupyterHub pod
and you should see it in the list.
> >
> > If all went well, you should see the appmode extension - try it out and let me
know:)
> >
> > I might be able to get to this next week - I am in Boston this week and in
meetings most of the day(s)
> >
> > Hope it helps,
> > Vašek
> >
> >
> > > On Tue, Mar 12, 2019 at 6:02 PM Alexander Feiszli
<afeiszli(a)redhat.com> wrote:
> > > > Hi All,
> > > >
> > > > Any Chance we can integrate something like this in
ODH? https://github.com/oschuett/appmode
> > > >
> > > > Basically, it runs your cells and displays widgets, so that the
Notebook functions more as an application than a notebook.
> > > >
> > > > Use case: Data scientists would like to be able to create
quick-and-dirty applications, based on their work in Jupyter Notebooks, that can be
quickly distributed to small groups of end users. In cases of only several end users.
> > > >
> > > > I'm currently trying to get this working with an existing ODH
deployment.
> > > >
> > > > Thanks,
> > > > Alex
> > > >
> > > > _______________________________________________
> > > > Contributors mailing list -- contributors(a)lists.opendatahub.io
> > > > To unsubscribe send an email
to contributors-leave(a)lists.opendatahub.io
> >
> >
> > --
> > AI CoE, Office of CTO, Red Hat
> > Brno, Czech Republic
> > Phone: +420 739 666 824
>
On 13 Mar 2019, 15:21 +0100, Alexander Feiszli , wrote:
@Vaclav Pavlin I tried this out last night and I think it works well
:)
@Marek Cermak this is for teams of data scientists at this client that want to
production-ize their research. Jupyter has been provided as a way to work on their
research in the cloud, and to share their work with other researchers. However, after
their work is completed, the question is how do we quickly turn this around into
production apps?
The number of end users can range from a few people to a few dozen people to potentially
large numbers of people depending on the app. I think for use cases with large numbers of
end users, we will make a custom interface and a python api backend from the notebook.
However, for many cases, I think we would like a more streamlined, automated way to
production, and have a pipeline that goes straight from notebook -> production app. For
instance, a researcher may come up with a tool that can be used by 3 people in the field
for analysis, but those 3 people would be the only people to use it, so bringing in app
developers is not an efficient use of time. Currently they use low-code solutions like
QuickApps and MatLab App Designer for these purposes.
Almost all the apps follow this pattern:
1. End user provides or chooses input data
- can be many different data sources, from local files to enterprise DB's to web
scraping
2. Some data processing is run
3. Output data is provided to the end user
- this will often include visualization
Given this consistent pattern we can probably come up with some templates for going from
notebook to web app quickly as well, or get some other low-code solution that is
OpenShift-compatible.
My thought with the "appmode" plugin is that the researcher can work on
something in non-prod until it looks good. They can switch to the "app" view
every once in a while to check it out. Then, once it is ready, they can trigger a pipeline
that deploys a hub in production. This hub would be configured to spawn instances of that
notebook document, and the url would go straight to the appmode view of the document. The
hub can be configured to clean up instances when the browser is closed to conserve
resources.
We're still exploring the different ways to bring notebooks to production, this is
just one idea for doing that.
If this is relevant to your work I would love to discuss that with you.
Thanks,
Alex
> On Wed, Mar 13, 2019 at 8:49 AM Václav Pavlín <vasek(a)redhat.com> wrote:
> > Resending - somehow I was subscribed with wrong email:)
> >
> > HI Alex,
> >
> > It seems like that is a just a notebook extension - so yes, we can easily add
that to the image(s) and enable it.
> >
> > To try that, I'd recommend forking this repository and adding the install
commands in the linked file below the location:
> >
> >
https://github.com/vpavlin/jupyter-notebooks/blob/master/minimal-notebook...
> >
> > You can add the "appmode" Python package to the
requirements.txt: https://github.com/vpavlin/jupyter-notebooks/blob/maste...
> >
> > You can then build the image from the minimal-notebook/ folder with
> >
> > s2i build --copy . centos/python-36-centos7 s2i-appmode-minimal-notebook
> >
> > Then push it to your Nexus and create an image stream. Restart JupyterHub pod
and you should see it in the list.
> >
> > If all went well, you should see the appmode extension - try it out and let me
know:)
> >
> > I might be able to get to this next week - I am in Boston this week and in
meetings most of the day(s)
> >
> > Hope it helps,
> > Vašek
> >
> >
> > > On Tue, Mar 12, 2019 at 6:02 PM Alexander Feiszli
<afeiszli(a)redhat.com> wrote:
> > > > Hi All,
> > > >
> > > > Any Chance we can integrate something like this in
ODH? https://github.com/oschuett/appmode
> > > >
> > > > Basically, it runs your cells and displays widgets, so that the
Notebook functions more as an application than a notebook.
> > > >
> > > > Use case: Data scientists would like to be able to create
quick-and-dirty applications, based on their work in Jupyter Notebooks, that can be
quickly distributed to small groups of end users. In cases of only several end users.
> > > >
> > > > I'm currently trying to get this working with an existing ODH
deployment.
> > > >
> > > > Thanks,
> > > > Alex
> > > >
> > > > _______________________________________________
> > > > Contributors mailing list -- contributors(a)lists.opendatahub.io
> > > > To unsubscribe send an email to
contributors-leave(a)lists.opendatahub.io
> >
> >
> > --
> > AI CoE, Office of CTO, Red Hat
> > Brno, Czech Republic
> > Phone: +420 739 666 824
> >