Who’s this class for?This course is for anyone who wants to write a chatbot that doesn’t suck.
What skills do I need at the start?You should have enough comfort with computers to do simple programming like tasks.
If you can do simple HTML, have tinkered with the scripts for a game, or built a Twine game this course should be accessible.
Our last project can be done either in chatscript or by programming in any environment that will put a small ‘game’ consisting of a few squares moving around on the web.
We’ll be talking about English grammar quite a bit, but if you passed high school English you should be fine.
Who We AreAnne Ogborn is your main instructor.
Anne has written chatbots professionally for the University of Houston and TrainingInThe21stCentury. She is a contributor to SWI-Prolog and well versed in symbolic AI.
Dan Hett will be available for the more ‘writing’ parts of the course. He’s a talented BAFTA winning creator of many interactive works.
Ian Andrich handles some of the administrative parts of the course.
Overall Course Organization
This course is organized around weekends.
There will be an interactive class lecture via Google Meet every saturday at 10am US Pacific time, 7pm CEST (the Netherlands).
Your first few days, you will join a bot writer’s group of 8 students.
This course is organized with one chatbot project each week.
Chatbot production usually proceeds in two phases - the initial construction, followed by humans interacting with the bot, then updating the bot in response to what people actually say to the bot.
So we’ll overlap - training last week’s bot and writing a new one. For example, our first week you’ll write the ‘Sullen Teenager’ bot. In week 2 you’ll write the ‘order taker’ bot, and train your sullen teenager. And so on.
To train your bot you’ll need other people to talk to it. In this case, ‘other people’ is other students. So our online system is fair - the more you talk to other bots, the more people are asked to talk to your bot.
We will write our bots using the ChatScript system. This system, used for several year’s Loebner Prize winning chatbot, is fairly easy to use but quite powerful.
The software can be run locally, but we’ll also have an online system called botbotbot where you can upload your bot and have others interact with it. You’ll need this to train your bot.
We’ll also maintain a course workspace on Slack. This will be your main contact point for the course.
We will send you emails reminding you of important events in the course. The emails, we’ve found, help keep everyone on track.
Course Schedule
Attend the lecture Welcome, Bot Basics - Sat, Aug 15, 1900 CEST on google meet.
Weekend of Aug 15-16, install ChatScript, following the document in the google drive folder. Watch the video ‘Bot Basics’
By Aug 18 every student should have joined a bot writer’s group.
By Friday, Aug 21, you should have the first chatbot, “Sullen Teenager” completed. Meet with your writer’s group on video conference, Review the bots and discuss each other’s work.
On saturday Aug 22 at 10am US Pacific time, 7pm CEST (the Netherlands) attend the lecture on Mental Models. Right after my lecture we’ll have Dan deal with some teenagers and talk about how to improve them, so this is effectively a 2 hour event.
During the week Aug 22-28, accumulate enough time training other bots to get training data for your own teenager bot. Take that training data and update your useless mopey kid.
Also during the week Aug 23-28, give your slacker kid a job by writing a Fast Food Order Taker bot.
On Friday, Aug 28, meet with your writer’s group and discuss your future minimum wage employees.
On Saturday Aug 29 at 10am US Pacific time, 7pm CEST (the Netherlands) attend the lecture on Bot Psychology. Right after my lecture we’ll have Dan talk about character development, so this is effectively a 2 hour event.
Starting Aug 30 we’ll all work together as a class to create a larger scale chatbot. I’ve been working on a robot snail for some time, and they will provide an opportunity to work on a larger bot. We’ll each submit a single topic for Pomatia.
I’ll provide a spreadsheet well ahead where you can sign up for topics on a first-come, first serve basis.
We’ll use Slack to refine ideas of Pomatia’s character and coordinate topics. The online chatscript tool knows that all the Pomatia bots are one big bot. Dan will be available on Slack for some coaching this week.
On friday Sept 4, meet with your writer’s group and review your topics.
On Saturday Sept 5 at 10am US Pacific time, 7pm CEST (the Netherlands) attend the lecture on Embodiment and Dialog management. This lecture will not be followed by Dan.
During the week of Sept 6- Sept 12, train your topic for Pomatia.
Also during that week, we’ll experiment with embodiment by making a nonverbal chatbot. Since this a bit of a different exercise, we’ll examine the embodied bots in writer’s groups on the 24th and that’s all the training they’ll get.
On Sept 12 at 10am US Pacific time, 7pm CEST (the Netherlands) we’ll have the concluding lecture, and that will conclude our course.