Bob AI: How Computer Chips Have a Social Impact
Have you met Bob? Bob is an application created by my team and me at Bayes Impact to help job seekers orient themselves in a difficult period of their lives. It is helping more than 1000 people per week and has been used by over 220,000 French job seekers since its launch in 2016. To serve so many people efficiently, Bob is using AI, artificial intelligence. If this rings like a buzzword to you, then this article is exactly what you need: an explanation on how computer chips can actually have a social impact.
As many applications, Bob is built upon three main pillars: a smooth user interface, a database of resources on unemployment and the algorithm computing all the logic: the artificial intelligence. Let me make an analogy in the real world: a steward at a train station help desk. To be efficient or even useful the steward needs 3 main skills as well: interacting with customers, knowledge of the train timetable and being able to compute journeys and train connections.
The user interface, like the customer interaction, is key to understanding the user’s need and making them feel welcomed and cared for. My colleague John has written excellent articles to detail how we have built Bob’s user interface and experience with empathy.
Next, the resources and data about unemployment we have gathered for Bob is like the train directory: extensive, detailed and complete but, in its raw format, hard to understand or to navigate. A few months ago we released this data in OpenJobGroups.
Finally there is the brain, the logic that helps understand the user or customer’s need, navigate the data to pull out the right piece of information and deliver it quickly. This bit might look trivial but it makes all the difference. If you have ever run into a bad train steward, you know what I’m writing about: they’re nice, they have all the info at their fingertips but they seem unable to understand or help you and, in fine, useless. Fortunately most of them, like Bob, are pretty sharp, quick and can help you smooth your journey in a matter of minutes.
Bob AI is at the core of the application and is making all the app decisions that require logic. It can easily access unemployment stats and data, as well as the current user’s info, their profile and their project. It is setup as a computer program running on a server (a computer in the cloud) and has laid out a list of questions it can answer: we call them “entrypoints”. A simple entrypoint can answer a question like “Which are the organizations that could best provide human help for this user?”, and a more complex one can answer a question like “What is the main blocker for employment in this user’s situation?”. If you’re interested and feeling geeky you can take a look at all Bob entrypoints. These entrypoints are accessed by Bob’s user interface in your browser.
So let’s dive into Bob’s brain: how does Bob answer those simple or complex questions? This is where we get into the AI part: artificial intelligence is computer programs, algorithms, trying to replicate human intelligence. As you can guess the program is different for each question, but in Bob, each piece of logic applied by the algorithms is driven by a rule. Some rules are just common sense, others are way trickier and have been identified and discussed with employment experts, and some of them use data from external datasets.
Let’s see a simple rule to get more specific. To the question “What are the organizations that could best provide human help for this user?”, we have a rule that checks the age of the user: if they are 25 or below we suggest the “Mission Locales” (a network of local associations in charge of helping young people’s integration in society). In Python, the programmatic language that we use, this rule is expressed as:
if user.age() < 25:
return 'Mission Locales'
As you can read, this is quite simple and easy to understand. It’s also very useful for a young person who had never heard about Mission Locales without bothering other users for whom this info is irrelevant.
As of today we have more than 150 different rules that Bob AI uses and combines to answer questions. But I’ll keep this part for another article where I’ll dive deeper into Bob algorithm and its rule engine.
Phew! If you’ve read down to this paragraph I hope that you now have a better understanding of the three keys that make Bob successful: a smooth user interface, useful resources and data and finally, an AI engine. You should also have caught a glimpse of the basics of Bob AI and might be interested in my next article detailing the design and the algorithm that we use. If you’re in a hurry and very geeky, you can always jump to the code itself as it’s Open Source. As you can read, using AI for the common good is more than wishful thinking at Bayes Impact. We have been able to implement a real AI solution to help people in need with Bob, and we are just getting started.