Building Amy: The Email-based Virtual Assistant by

Amy is a digital personal assistant who schedules meetings for you. Amy understands your calendar-preferences and negotiates meeting times with other people on your behalf - through email. Your meeting guests talk to Amy as they would with a human.

The construction of an email-based virtual assistant involves several natural language processing tasks. For example, Amy needs to automatically detect email “intents” and resolve the relevant information within, while suppressing large amounts of noise characteristic of email text.

This involves both multi-label classification and information-extraction tasks, with a strong emphasis on named entity recognition. Detecting people, locations, and times in unstructured text is a necessary previous step to the more challenging task of “resolving” these entities into the relevant meeting data.

Marcos Jimenez Belenguer, chief data scientist and co-founder of, gives a conceptual intro to the architecture of Amy, the virtual Assistant by, which integrates both engineering and machine learning at production level. He describes their dataset and the sort of features that they extract from it to carry out various email classification tasks. Marcos then describes in some detail the way they detect and resolve time entities in unstructured text, and how living in a singular focus domain (meeting scheduler) provides a context in which this compounded problem can be solved with high accuracy.

This talk was presented at the NYC Machine Learning Meetup at Pivotal Labs.