Jon Dehdari



Chatbots with Sequence-to-sequence Models



Sequence-to-sequence models can be used for dialogue systems (eg. chatbots). Instead of the MT usual source and target datasets, you simply interleave alternating statements, so you have utterance and response datasets. You can incorporate external data in the form of dummy tokens, prefixed to the input sentence, in alphabetical order. You can also have the decoder output dummy tokens that get interpreted as affecting the world, like hardware actions. Such actions are interpreted by post-processing.


Examples

User Input

<style="informal"> Hi!
	  

Chatbot Output

Hey! What's up?
	  

User Input

<userid="5"> I'm hungry. Gimme some tacos!
	  

Chatbot Output

<action="order"> <userid="5"> <place="taco hell"> <item="taco">
	<quantity="3"> I'm ordering three tacos for you.
	  


Then you just setup your data this way and train a subword NMT system.