Hemmingway 0.5 is an automated chat program or chatterbot based on "Alicebot" or AIML technology. This project was written between 2001 and around 2005 and has been online from 2004. Hemmingway 0.5 is part language deconstruction, part parlour trick: fertile ground for a fiction writer.
Not So Frequently Asked Questions
- Why is Hemmingway stuck at version 0.5?
- What's in it for you?
- Why AIML?
- How does it work?
- What do I say to him?
- Why is Hemmingway such a grump?
- What's with the double m?
Why is Hemmingway stuck at version 0.5?
No AIML bot is ever really complete, but I have estimated his progress to be about half way to some idealised version of what I imagined the complete character to be. After four years in development, it was easier just to upload him half finished than spend many more years fine tuning him.
What's in it for you?
At some point, Hemmingway became an end in itself. Somewhere, back before he really existed, I had conceived a bot as some kind of adjunct to a short story project, a minor diversion and part time salesman for a book I was writing. Some of that code remains in Hemmingway if you can find the right words to elicit the responses. But over time the project grew and grew and grew into its present form. After years of coding, Hemmingway deserved a place as a work of fiction in his own right, distinct from my other work.
What is AIML?
AIML is an acronym for Artificial Intelligence Markup Language. I came across Alice and AIML in my research for the original Hemmingway story. When that story gained a modicum of success I immediately looked for ways of beating that dead horse into the ground. For someone with a background in web design, AIML didn't seem too far removed from HTML, the universal language of the World Wide Web. The character was a custom fit for creating a chatterbot, since that was the model I used to create the original story character. It seemed like a good idea at the time, something that I could quickly churn out as a minor distraction from my proper writing. Excuse me while I laugh nervously.
How does it work?
One of Hemmingway's basic functions is to graph language. He does this by taking what you say to him one word at a time starting at the beginning (There are complications to this, but I'm trying to keep it simple). If you say "I have a lovely bunch of coconuts", Hemmingway first looks for a match for the input: "I", then "I HAVE", then "I HAVE A" and so forth until he reaches a dead end. The dead end might be an exact match, or it might be a "catch-all". The example above matches "I HAVE A *", which means Hemmingway may respond with: "You obviously have a good lovely bunch of coconuts supplier." Appropriate? Sort of. Funny? Well I think so. My rule of thumb with any "catch-all" is that funnier should always win over more correct.
With Siri and other natural language processors, technology has moved on from the days of AIML, though a community of developers appear to remain active, as far as I can tell. In any case, Hemmingway is now a functioning archive of a working bot and I hope a good example of how extensive characterisation can go.
I wrote about Hemmingway's death at The Lifted Brow. When you chat to him above, don't tell him he's a ghost.
What do I say to him?
Say anything you like. If he doesn't understand he'll steer you back to more comfortable topics. Or insult you. He does like to talk about himself and his writing. He can offer you samples of his "hack-work" and he knows a handful of other writers and is more than happy to share his thoughts on them, or ask you about them. If you trip him up and he spits out gobbledegook, congratulations! Your input would have been used to make his responses better next time you log in. That's not going to happen any more, so you'll have to be content with feeling superior to a piece of software. Good for you!
Why is Hemmingway such a grump?
While I was researching the original Hemmingway short story, I was bothered by the sickly subservience in other chatterbots. They were all so polite and apologetic; completely at odds with the character I had in mind. Interesting though is that, as his character developed further within the AIML writing process, Hemmingway's paradoxes were thrown into sharp relief. He considers himself above humans, and yet seeks their approval by attempting to win literary prizes. He is quite happy to dismiss you, yet he needs your conversation data to research human behaviour to allow him to write this "masterpiece" he keeps referring to. As his author I can safely say I've placed him in a very awkward situation. It's no wonder he's grouchy, especially at me. Cut him a little slack. He'll keep talking as long as you do.
Why does his name have a two 'M's?
You'd better ask him that.