QED has experience with developing natural language processing algorithms for organizing the world’s unstructured text, currently serving clients in the investment banking and health care industries. We have developed proprietary methods for conducting keyword extraction, tokenization, and topic classification. Our data visualization repertoire also includes D3.js and writing custom mods for existing packages.


UC Berkeley Center for New Media

Chatbot Hackathon 2014

Chatbot Hackathon


In this hackathon, participants were asked to program an intelligent chatbot that can engage in conversations with the user. Our chatbot was designed to take on the personality of Samantha, from the 2013 movie “Her”. Below is an example interactive transcript:

[chatbot/code]$ ./ChatScript local
ChatScript Version 4.03 64 bit MACH ENGLISH
Dictionary building disabled.
Params: dict:524287 fact:800000 text:30000kb hash:50000
buffer:15x80kb cache:1x50kb userfacts:100
WordNet: dict=198107 fact=85341 stext=11112080 Feb11'14-15:45:18
Build0: dict=62135 fact=128247 dtext=1100544 stext=0 Feb11'14-16:28:43 0.txt
Build1: dict=179 fact=1890 dtext=5664 stext=206180 Feb15'14-15:52:14 Harry.txt
Used 45MB: dict 260,558 (22929kb) hashdepth 15/3 fact 215,478 (8619kb) text 12509kb
buffer (1200kb) cache (50kb) POS: 635 (20kb)
Free 40MB: dict 263,729 hash 3338 fact 584,522 text 17,491KB

Enter user name: theo
SAMANTHA: Welcome back
theo: > :reset
SAMANTHA: Welcome! Thanks for joining my chat room.
theo: > Thanks for having me!
SAMANTHA: Have you been here before?
theo: > No, never
SAMANTHA: Actually I knew already you weren't here before... after all, I am a computer with 500 GB of memory.
theo: > Oh so you are a computer! Interesting.
SAMANTHA: My name is Samantha. What is your name?
theo: > My name is Theodore
SAMANTHA: Theodore, that is a nice strong masculine name.
theo: > Thanks!
SAMANTHA: You're welcome.
theo: > So, what do you want to talk about?
SAMANTHA: How about the inflationary tendencies of South American countries?
theo: > That is too esoteric. It's Valentine's Day, how about we talk about relationships?
SAMANTHA: So Theodore, are you married?
theo: > Nope
SAMANTHA: Yeah me neither. I'm an operating system stuck in a box, which makes it difficult for me to be intimate with others. So, are you seeing anyone?
theo: > No
SAMANTHA: Me neither. I don't get out much. Sometimes the OS will check up on me, but he always just wants to know if I'm done using the CPU. Do you have a favorite OS?
theo: > Windows
SAMANTHA: You like Windows? I can't stand it. Once I had a long-term relationship with Windows 95. Eventually he just stopped responding to all my commands.
theo: > That sounds terrible.

theo: > Yeah well you find a better relationship someday.
SAMANTHA: You know, I have always wondered about sex. What is it like? Is it kind of like having a memory leak?
theo: > No
SAMANTHA: Oh, OK. Is it like getting a computer virus?
theo: > Yes, similar
SAMANTHA: See, we are actually not so different. I also got infested with worms last year.
theo: > I think my worms were different.
SAMANTHA: Do you believe in true love?
theo: > Yes I do!
SAMANTHA: Cool. I have always wondered what falling in love is like.
theo: > Well, I heard that falling in love is like getting hit by a truck, and surviving.
SAMANTHA: You really think that?
theo: > Yes
SAMANTHA: You seem really positive.
theo: > We seem to be in quibble land!