Monday, June 7, 2010

ChatterBean's Last Source Package

ChatterBean was my first personal, open-ended, open-source project. In 2006 I stopped working on it due to lack of time, dissatisfaction with the results of my own efforts, and a growing disillusionment with the chat bot paradigm as a whole (more about that in a future post). Then in 2007 I started my MSc course on artificial vision, prompting a change in research interests – from abstract rule-based to real-world statistical systems – that buried any lingering hopes that I would resume my work on chat bots.

ChatterBean was abandoned before it could stand on its own either as a user application or developer framework; despite that, to this day I receive requests from programmers intending to use it as a basis for their own projects. Since the original project page went away along with Geocities, there has been no way to get the project's code other than asking me directly, but now I have uploaded the last source package to Google Sites:

The package contains the Java sources, AIML scraps used in the automated tests, and a copy of the project page as way of documentation. ChatterBean is (was?) licensed under the GPL, so it's pretty much open for whatever you might want to do with it.

Have fun.


  1. Hey Helio, many thanks for posting the code!

    The Googledocs link seems a little bit spotty, sometimes it gives a "Not Found" error. After a couple of attempts I was able to download the package though.

  2. Hi,

    I was wondering if you would consider releasing this under the LGPL license so it could be used in commerical projects. LGPL would make sure improvements to chatterbean would still be available, but that it could be used as a component of a commercial project.


  3. Sorry for the delayed response; I thought the blog was configured to mail me notices for comments, but it actually turned out it wasn't.

    I agree the Google Docs link wasn't a very bright choice. I'll upload the package to Google Sites soon.

    As for licensing: to put it bluntly, if anyone thinks my code is good enough to make money on, then it's good enough to pay money for. I'll happily issue a commercial license if asked (and offered good enough terms), but no freebies.

  4. How to execute this source code in Terminal ? would appreciate it if you could please advice me on this.

  5. Hi, I'm trying to use ChatterBean in a huge personal project, but I'm stuck on implementing Learn. You've implemented it for single-tag use, do you remember if the project supports implementing categories in some way? I tried to implement it myself but with no true success.

  6. Hi Thord,

    I don't think there's any ready-made way in ChatterBean to extend Learn the way you want; however it shouldn't be too hard to look into the AIMLParser and lift the code it uses to process categories.