Conversational Agents are one of the most impressive evidence of the recent resurgence of Artificial Intelligence. In fact, there is now a high expectation for a new generation of dialogue systems that are able to naturally interact and assist humans in a number of scenarios, including virtual coaches, personal assistants and automatic help desks.
This course introduces some of the main technological challenges behind the development of conversational agents, under the perspective of Computational Linguistics. We will address Human-to-Human dialogue phenomena, as well as methodologies to collect Human-to-Machine dialogues. We will introduce the characteristics of the components of a dialogue system, including the slot filling component, the dialogue manager and the generation component. Finally, we provide an overview of commercial tools for building chatbots as well as of evaluation methodologies for assessing the performance of a dialogue system.