Chatbots are the latest trend in digital newsrooms employed by CNN to provide personalised news experiences and by El Español to engage with audiences about the Spanish general election. Beyond newsrooms, chatbots could change the way we interact with technology.
Why point and type when you can chat? There is a trend in place that says that the way we have used our computers, and even how we have completed day-to-day tasks needs to change. The chat bot fashion is not necessarily new, and it's not been all that successful in the past. With improved computer understanding of text, and with a more digitally-aware populace, are we at the point where the click gives way to the chat?
Chatbots differ from conventional GUI (Graphical User Interfaces) in that they imagine human-computer interaction as a conversation, rather than a set of controls and gauges. There has long been a vision of a virtual personal assistant, and science fiction such as 2001, Star Trek: The Next Generation, Her, and Ex Machina all present this idea of social, rather than technical interaction. The embodiment of this assistant can take many forms, in fiction it sometimes is represented by a robot, or other anthropomorphic avatar. However, in the practice we increasingly are seeing bot interactions take the forms that are most popular for human digital interaction: by voice or by text message.
Text messaging has proven extraordinarily popular medium for human interaction, leading to 60 Billion daily messages on platforms like WhatsApp. This has led to the idea that such interactions can be digitally enhanced, not just by providing better predictive text (for example, see Google's automatic email reply generation), but most interestingly in the form of bots attached to the messaging channels users use to engage with their human social network. The Facebook M product is the most prominent of these initiatives, and the company clearly sees its future including more companies using more automatic messages in everyone's life. (For a view of what Facebook's CEO thinks, see the 2016 F8 developer's keynote, starting at the 11 minute mark.)
What is a chatbot and how is one built? There are a number of technical challenges to be considered. The first one is a need to understand the user's query. Humans are often highly inconsistent in their phrasing, it's possible to think of countless ways to ask 'What time is it?' and context is often important. The meaning of 'What''s the weather like tomorrow?' depends on where you are, and whether you're a skier or a commuter that day. The second challenge is to fulfill that query: it's relatively easy to see how tools such as Apple's Siri can answer mathematical queries, perhaps with the assistance of Wolfram Alpha. The Viv team however have demonstrated something more complex: while their test case of ordering a pizza online might seem trivial (and arguably culturally narrow), it demonstrates a key property of moving from a virtual intent to physical action.
Designing a chatbot's actions involves complex 'trees' of decisions: once you've decoded the natural language query, your assistant may need to ask follow up questions ('what colour flowers? / where would you like to fly to?'), or might need to get additional external information (such as ticket availability). How much automation is possible, desirable, or feasible remains an open question. For example, it seems that Facebook M is employing some hidden human assistance in completing tasks. This approach can indeed scale to a global service, through crowd-sourcing such as Mechanical Turk or Cloud Factory, or specialised services like Uber.
Another question that emerges is: one or many? The Facebook model seems to be to have individual chat bots for different companies, services, or products. Siri, for example, integrates them behind a single avatar who 'knows' you. The Amazon Alexa/Echo platform is the personal assistant for your home. Alexa can now order from a list of millions of products from the Amazon Prime marketplace.
There are a number of recurring themes to consider: the first is the obviously commercial nature of these bots. The tasks which seem of most interest to the providers are ones which include sales. There are obvious reasons for this, one is that there is a fear that advertising-driven free services are not sustainable as we move into the future, and another is that they make us all the more likely to remain with a service if it also is our main way of conducting commercial activity.
The second thing to consider is the question of how we anthropomorphise our computers, and de-humanise the people completing the tasks. There is a strong tendency towards female avatars (Cortana, for example, is from a computer game), which some regard as a negative cultural bias. While fears of HAL 9000-style malevolence are overblown, there remain questions to be answered about a future of fully dis-intermediated working conditions.
With all that said, if you are interested in building your own chat bot, there are numerous resources which facilitate it with relative ease. One tutorial, based on Javascript and Amazon cloud services, can be accessed here. Numerous other toolkits exist, but one word of warning: don't just let the system learn from the crowd, as Microsoft learned to their cost with theTay project which ended up trained by the mob to use some highly offensive language.
In the final analysis, the move towards chat bots is part of the general move away from keyboards, screens and even phones. Interacting with our devices might ultimately disappear into the perhaps literal fabric of our environment as wearables take over. There remain numerous challenges of design and functionality, as well as social norms, to be overcome, but it seems likely that the days of the GUI, or the solely-human support and sales desk, are behind us.
With thanks to http://www.twitter.com/
Subscribe to FuJo's newsletter.