Email classification using ML

Hello everyone

Can anyone help me in understanding email classification using ML .
Note: Robot should classify the email based on content(body).
using NLP will work ?
Kindly help me guys …

Anush Nayak

If you need very much highly efficient robot, You have to think of ML.
In UiPath, you can try using outlook activities etc, to see if it fits your requirement.

1 Like

Hello Arun,

Thanks for the quick response, actually my requirement is to understand the content of email body and based on that it need to take up the call by moving into different folders .

Could you please let me know how can I achieve this with ML NLP or any other ?

Anush nayak

if its simple string manipulation for eg, if body contains certain keywords, then move to this folder, or else another folder → for this , you can go ahead with UiPahth activities and string manipulation itself.
ML will be required only if you want to create AI Based, complex model that is more or less working like human.
And for that, you have to write a algorithm, create a ML Model, train that model with n number of sample mails , and then use it.

Yours should fit into Classification Model.
Just google about Classification ML /Model, and you shall get more info.

Also, UiPath Itself is actually using ML, AI Etc in background. This tool is very efficient that, the user in front end, need not be aware of all those. Thats it! So you might not need to write tons of lines of ML Program for performing certain things that UiPath does. Its kind of a pre written package.

1 Like

Hi Anush,

In order to purpose the solution , it’s important for you to clarify what kind of classification in the mail are you looking at.

Give more info on the kind of classification please




Hello @MinalGupta and @ArunVelaayudhanG ,

Please find below details,

Bot should take care of understanding the email body and move it respective folders.
Example: If user gets any mail related to job portals(naukri,shine, LinkedIn) instead of checking from subject (by using string manipulation/contains or something) it should do understand the email body content and take up the call .

Requirement: Email classification using ML

Note: We are trying below requirement without using AI fabric ( only by ML )

I got one website called where we need to train our model with many sample data as @ArunVelaayudhanG suggested,

Not sure will it work for my case, please suggest if anyone has any idea regarding it

Anush Nayak


Hey @anush , this is an example where one needs to link the model in Orchestrator.

@cosminSimion - Can you help here ? I remember in October Forward , this example was shown , but at that time, there was no provision to link ML models into orchestrator . As this is something UiPath was working on. Can you please let me know if this is achievable now ? If yes, how .

@tarekmadkour - Tagging you , if you could look into this .

Many thanks

1 Like

@MinalGupta @anush - That’s precisely what AI Fabric would allow. I see that you’ve already looked at AI Fabric and decided to not go that direction. Why is that?

@AntonMcG fyi.

1 Like

That’s not the intention. The issue is we need more guidance on how to use ai fabric. Can you provide a link to any tutorial for step by step guidance ?

Got it. That makes sense. @AntonMcG should be able to help with that.

1 Like

Hello @tarekmadkour,
I heard for AI fabric we need to purchase seperate license , that’s the reason I was trying for some other approches.
Could you please guide me how can I achive that by using ML\python or any other methods.

Anush Nayak

Hello everyone,

Disclaimer: I’m PM on AI Fabric :slight_smile:

If your goal is to build a workflow including a call to a ML model built in Python (as this is the case for email classification workflow here), I see three way to do it:

  • the simplest and most reliable way is to use AI Fabric to easily deploy your ML model and make it accessible to your Robots through ML Skill activity. If you don’t have AI Fabric licenses today, your company can subscribe to the Cloud Enterprise trial here: UiPath 2 AI Robots (AI Fabric licenses) come with this trial. So you’ll be able to test it out. If you’re using community, AI Fabric is not yet accessible but we are working on it.

  • The second way would be to deploy your machine learning model “somewhere” and make it accessible through http calls. Then you can use http request activity to call your model and get response from it. At a high level this is what AI Fabric does for you (also adding other features like authentication, high availability, version management…).

  • The third way would be to use python activity to call your model and run it within your workflow. This implies that you model is available locally (with your robot) and that you have all python librairies you need installed locally. This can be a good solution for a PoC but will be hard to maintain on production (especially if you have multiple use cases of AI + RPA using different versions of same python librairies or if you want to update your model at some point because you’ll need to update all robots running the process). Also invoking Python activity will load the model each time so if the model is a bit heavy this can slow down you process (you’ll need to call the model in batch mode instead of online mode to limit this).

Hope this helps, let me know if you have more questions.


Thank you so much @Jeremy_Tederry for brief explanations, will try out either 2nd or 3rd method to classify emails. If I need anything will get back to you

Anush Nayak

Thanks @Jeremy_Tederry for a clear work around directions.!!

@Jeremy_Tederry Thank you. My requirement is a little different. It is a little more than a classification problem. We need to raise a ticket based on the email conent. Need to extract a set of specific fields to fill in while creating the staffware call and also decide on which queue it should be assigned to, based on the email body. So in short, before actually classifying to the specific queue. I need to get a set of values also from the email body for creating the call.

Can you please let us know if this is possible in AI Fabric. If not what can be the way forward

Hi @rahulraj987
Do you want to extact those values from free text or are you emails structured in specific way so you can easily identified the values that you want to extract?

It will be free text and we need to identify the key items/words

Do have E-mail classification dataset that was mentioned in the E-mail classification demo?