Chatbot: generative model using Python framework deployed in Slack - tensorflow

Could somebody tell me whether it is possible to develop a chatbot using python ML frameworks such as tensorflow and deploy in Slack using Slack's apps?
As far as I have read we could develop some retrieval based model using node.js. But I'm looking for a generative model.
Anything to help me get started is much appreciated.
Thanks!

In order to use a generative model you have to use tensorflow sequence to sequence architecture . Here's the official TF tutorial from TF on sequence-to-sequence architecture .
So after training the model you can set this as an API which is easy. Then may be you can set it with the slack API for sure.

Related

To integrate a trained machine learning model with react native app

I have an FYP project (a social media app like Instagram) that requires me to create a simple recommendation system. I've trained my dataset on cosine similarity using Python, but I'm at a loss on what to do next. How can I integrate my trained ml model to React native or if there is a better and easier way to make a recommendation system?
I tried reading documentation and watching videos. But I still don't seem to be able to grasp some difficult concepts. I would greatly appreciate it if you could give me instructions or steps on what to learn after training my model. Or if I have to use some library or packages etc. [not sure if this is the appropriate forum for this inquiry]

How to deploy TensorFlow model to cloud?

I want to deploy my deep learning model to the cloud so that I can upload photos on an iPhone App and the model handles the detection and returns the output.
What would be the best way to do this?
Thank you!
There are multiple ways you can deploy a tensorflow model. Read through the following official documentation.
TensorFlow - Serving Models

How to use a custom model with Tensorflow Hub?

My goal is to test out Google's BERT algorithm in Google Colab.
I'd like to use a pre-trained custom model for Finnish (https://github.com/TurkuNLP/FinBERT). The model can not be found on TFHub library. I have not found a way to load model with Tensorflow Hub.
Is there a neat way to load and use a custom model with Tensorflow Hub?
Fundamentally: yes. Everyone can create the kind of models that TF Hub hosts, and I hope authors of interesting models do consider that.
For TF1 and the hub.Module format tailored to it, see
https://www.tensorflow.org/hub/tf1_hub_module#creating_a_new_module
For TF2 and its revised SavedModel format, see
https://www.tensorflow.org/hub/tf2_saved_model#creating_savedmodels_for_tf_hub
That said, a sophisticated model like BERT requires a bit of attention to export it with all bells and whistles, so it helps to have some tooling to build on. The BERT reference implementation for TF2 at https://github.com/tensorflow/models/tree/master/official/nlp/bert comes with an open-sourced export_tfhub.py script, and anyone can use that to export custom BERT instances created from that code base.
However, I understand from https://github.com/TurkuNLP/FinBERT/blob/master/nlpl_tutorial/training_bert.md#general-info that you are using Nvidia's fork of the original TF1 implementation of BERT. There are Hub modules created from the original research code, but the tooling to that end has not been open-sourced, and Nvidia doesn't seem to have added their own either.
If that's not changing, you'll probably have to resort to doing things the pedestrian way and get acquainted with their codebase and load their checkpoints into it.

Machine Learning Tensor flow and sentiment analysis

I'd like to make a machine learning with Tensorflow about sentiment analysis, I know it's possible to do machine learning with tensorflow but is it possible to make machine learning suited for sentiment analysis ? I know it's possible to do sentiment analysis with Convolutional Neuronal Network (Deep learning so) with Tensor flow but I'm looking for a solution that only uses Machine learning algorithm, not deep learning.
Would you know great tutorials to begin a GCP Machine Learning project ? Is it possible to begin a GCP Machine Learning Project without using google API or Tensorflow (just in "regular" python but which can be linked to other services like google big query, data prep) ?
Thank you very much for your answers :)
In general it wouldn't make much sense to use TensorFlow for non-deep learning solutions. You can always try scikit-learn for implementing other machine learning techniques with python, but I do not think that you could get far with sentiment analysis this way. For a nice introduction on sentiment analysis with TensorFlow I would suggest to go through this guide.
As for machine learning on google cloud platform: there is a number of APIs hosted in the platform which use pre-built models, including cloud natural language which has an analyzeSentiment method. Here you can find a python tutorial on how to do sentiment analysis using the python client library of the cloud natural language api.
If you still want to try and build your own model, you can train (with either scikit-learn or tensorflow), deploy and then use it for predictions on the cloud with the google cloud machine learning engine. As for tutorials, I would suggest that you visit the official documentations of any of the above products/services, you will find there comprehensive step-by-step guides for all levels.

how to serve pytorch or sklearn models using tensorflow serving

I have found tutorials and posts which only says to serve tensorflow models using tensor serving.
In model.conf file, there is a parameter model_platform in which tensorflow or any other platform can be mentioned. But how, do we export other platform models in tensorflow way so that it can be loaded by tensorflow serving.
I'm not sure if you can. The tensorflow platform is designed to be flexible, but if you really want to use it, you'd probably need to implement a C++ library to load your saved model (in protobuf) and give a serveable to tensorflow serving platform. Here's a similar question.
I haven't seen such an implementation, and the efforts I've seen usually go towards two other directions:
Pure python code serving a model over HTTP or GRPC for instance. Such as what's being developed in Pipeline.AI
Dump the model in PMML format, and serve it with a java code.
Not answering the question, but since no better answers exist yet: As an addition to the alternative directions by adrin, these might be helpful:
Clipper (Apache License 2.0) is able to serve PyTorch and scikit-learn models, among others
Further reading:
https://www.andrey-melentyev.com/model-interoperability.html
https://medium.com/#vikati/the-rise-of-the-model-servers-9395522b6c58
Now you can serve your scikit-learn model with Tensorflow Extended (TFX):
https://www.tensorflow.org/tfx/guide/non_tf