How to develop a webapp interface?

Solved!
PK
Level 2
How to develop a webapp interface?

I am basically a data scientist but not good at developing APIs, Webapps . I would like to develop an interface that accepts text which I want to convert into a Dataiku dataset to feed to a ML model for scoring. I would then like to display the prediction on the same interface. How do I get started with this ? Thanks !

2 Solutions
VinceDS
Dataiker

Hi, 

Conceptually, you have 2 ways of going about this type of task - essentially real-time scoring of user input.

1) "Lightweight" scoring 

You can train a model using the DSS visual modeling features. Once your model is trained, you will need to develop a webapp (in python for instance) that creates a field for user input and then uses the DSS REST API to interact with your saved model, retrieve the predictor and score the user input.

> info on interacting with saved models, tutorial on creating your first python webapp

 

2) Production-level scoring

Within the scope of the DSS platform, we provide Entreprise-grade model deployment features, including deploying and managing API endpoints for real-time scoring. In this case, your webapp will not use the internal REST API to call your model endpoint but will send a http request with the user input to the API endpoint, score the payload with the model and retrieve the score. This is the more scalable, governed and secure way of making model predictions available to users, but requires and Entreprise licence.

> tutorial on deploying ML models on API endpoints

 

Hope this helps

 

View solution in original post

PK
Level 2
Author

Hi, 

I figured it out with some help. I am using a trial version so the API architecture was not available. I then wrote python code which took the input in a TextInput widget box in my Bokeh app code and then passed it to a function in the same code where it interacted with the model I had developed to produce the result which can then be showcased in another widgetbox on the same webapp.

View solution in original post

7 Replies
CoreyS
Dataiker Alumni

Hey @PK thank you for your question! We all start somewhere so no worries. In terms of learning how to use DSS I recommend watching and going through our tutorials. I hope this helps and please feel free to reply with any additional questions.

Looking for more resources to help you use Dataiku effectively and upskill your knowledge? Check out these great resources: Dataiku Academy | Documentation | Knowledge Base

A reply answered your question? Mark as โ€˜Accepted Solutionโ€™ to help others like you!
0 Kudos
PK
Level 2
Author

Hi,

Thanks, True !

 

VinceDS
Dataiker

Hi, 

Conceptually, you have 2 ways of going about this type of task - essentially real-time scoring of user input.

1) "Lightweight" scoring 

You can train a model using the DSS visual modeling features. Once your model is trained, you will need to develop a webapp (in python for instance) that creates a field for user input and then uses the DSS REST API to interact with your saved model, retrieve the predictor and score the user input.

> info on interacting with saved models, tutorial on creating your first python webapp

 

2) Production-level scoring

Within the scope of the DSS platform, we provide Entreprise-grade model deployment features, including deploying and managing API endpoints for real-time scoring. In this case, your webapp will not use the internal REST API to call your model endpoint but will send a http request with the user input to the API endpoint, score the payload with the model and retrieve the score. This is the more scalable, governed and secure way of making model predictions available to users, but requires and Entreprise licence.

> tutorial on deploying ML models on API endpoints

 

Hope this helps

 

PK
Level 2
Author

Thanks a lot ! apologies for the delayed response.

0 Kudos
PK
Level 2
Author

Hi ,

I went for the light version to try it out first. I was able to create an API with endpoint at the model and also used test queries to check the prediction. I was also able to create a webapp using python/bokeh with a textInput. My only problem is how do I connect the text box to this API now ?

0 Kudos
PK
Level 2
Author

Hi, 

I figured it out with some help. I am using a trial version so the API architecture was not available. I then wrote python code which took the input in a TextInput widget box in my Bokeh app code and then passed it to a function in the same code where it interacted with the model I had developed to produce the result which can then be showcased in another widgetbox on the same webapp.

VinceDS
Dataiker

@PK maybe consider updating your title to something that makes it easier to reference and search for others with similar topics ๐Ÿ™‚

0 Kudos