But now, some researchers in China are moving one step closer, after creating a chatbot with five different mood types.
The moods include happiness, sadness, anger, disgust and loving. The bot can reply to people's words differently, according to the mood it has been set on.
A leader of the project, Professor Huang Minlie at Tsinghua University, calls the bot an "Emotional Chatting Machine" (ECM).
He typed a critical comment about Valentine's Day into the machine as a test. The machine replied "Happy Valentines Day!" when set on a happy mood, and complained "you're just showing off!" when set to angry mode.
"It's still an initial exploration in the area, as ECMs can only talk in text. It doesn't have a voice output or facial expressions," Huang told Xinhua.
"But researches are moving rapidly on creating human emotions," he added.
So how do ECMs work? The research team created an emotion classification algorithm, and used it to classify all kinds of comments on social media websites.
So words from an ECM could be lifted from something you said online last week, and that's why their reactions sound so much more human-like than other bots.