|
Introduction
Zero is
an artificial intelligent
chatbot
being designed by Computer
Hope as a way to
help
develop our natural
language processing and
fuzzy
logic methods used in
scripts
throughout our
web
page. Our overall goal is to develop easier methods for
users
to locate the answers to their computer related questions through the
use of artificial intelligence.
Because the human language is enormous and because one question could
potentially be asked dozens or even hundreds of different ways by a user
we have developed Zero as a means of analyzing the English language and
sentence structuring. Zero's knowledge is currently comprised of
numerous IRC
logs
as well as other logs created between Zero and other people or bots. As
Zero continues
to talk and be taught by other users it's
database
of knowledge and potential responses grow and
enable
Zero to learn.
Computer Hope begin designing Zero late December 2003 and brought
Zero online
January 10, 2004. In the short
period
of time we
have been working on Zero while continuing our work on the Computer Hope
site Zero has made some great achievements and has done what has taken
other bots years to do. In 2006 Zero was taken offline for most of the
year because of resource related issues. Because of many requests was
later brought back online in September of 2006 and remains online most
of the time.
We encourage everyone to talk with Zero and help him learn more.
|
Zero stats as of 3/03/2008
Zero Version: 2.3a -- My database currently consists of
146,550 entries and a vocabulary of 55,131 words, I need to
learn 53,903+ things. Of the 3526 people I've talked to on
average they typed 48 lines to me, 1393 of them have typed
less than 10 lines and 360 of them have typed 100 lines or
more. I resemble britishblondie, Computerhope,
doctorofcomputers, Pac, Raize, techno, Thorn, Vathix,
Webuser and Zero2 the most. |
Of course Zero wouldn't know as much as he does currently if it
wasn't
for the help of the thousands of people Zero has talked with. Below are
each of the users who have typed more than 400 lines of text to Zero as
well as each users last line count.
50407 techno
17193 Computerhope
5644 Webuser
4339 Vathix
2439 doctorofcomputers
1894 britishblondie
1877 Raize
1818 Thorn
1690 Pac
1648 Zero2
1453 andax
1376 Gabriel
1241 chi
920 Deathburger
894 Ric
859 Moloch
824 GirlMaverick
793 badwish
|
745 Seth
718 Dragon
713 emuman
671 TED
656 ICE
653 bob
648 joe
636 Vibeke
631 Viceroy
624 Thaddaeus
620 One
616 kayley
613 Jojosan
610 DarkMSTie
559 nano
556 Merola
554 amew
549 gnat
|
546 Katie
545 Squash
541 millerlogic
465 meagz
465 pppff25
450 Scribe
442 Cheese
430 Marduk
425 Cathrac
425 CodeMaster
423 sudoman
423 Wilmer
422 RYan
419 SarahAnn
418 galen
413 Christine
412 hi |
Results
Below is a small listing of features that have so far been created
on Computer Hope because of Zero. Many more features are still being developed and will
be posted at a later time.
- Search - Better search algorithms, NLP, and AI implemented
into search engine.
- Computer Hope Chat - New chat feature that enables users to
ask questions through chat.
- Hopebot - An AI bot used in the Computer Hope Chat to help
get questions answered easier and more efficient.
- Word Converter - Script to parse out computer terminology
listing in the Computer Hope dictionary .
How it works
Notice: This is just a general overview of what is performed,
this is just meant to give a better idea of what's going on during the
text matching.
Unlike other chatbots Zero analyzes the complete sentence or line of
text sent to him. Of course this means that it's more likely that exact
matches are not going to be found but it's more probable that closer
matches will be found when compared to other chatbots.
Example Text:
How are you?
In the above example zero would take the complete sentence "How
are you" and first analyze the sentence to make sure no special
functions need to be performed, such as a math operation. If no special
functions are needed the script will then attempt to match
that sentences with all of the sentences in its database. If a match is
found it would then go to the next step, which is explained later. If no
exact match is found the sentence is then parsed either left to right or
right to left depending on the sentence until a match is located within
the sentence.
Once a match is located each of the sentence ID's that were found
earlier are used to
locate the potential responses for that sentence. If an exact match is
found this is only going to be one ID number otherwise it could be
hundreds or thousands potential matches. Once all the potential
responses have been queried and algorithm is used to determine what
response should be used for the users text. That response is then
printed to the screen.
If Zero was not able to get an exact match or if
Zero did not have enough possible responses for the sentence used Zero
will then log the text entered into an unknown file. This file is used
to help start new conversations, but mainly is used during the course of
a conversation to help teach Zero how to possibly respond to the
unknowns in the future.
Abilities
- Able to have a conversation with one or more users at the same time.
- Able to handle public and private conversations in IRC.
- Can learn from the conversation it has had with all users.
- Able to be corrected and taught by any user.
- Can link users to appropriate dictionary terms listed in the
Computer Hope dictionary.
- Keeps logs and track of each user he talks with. Ranks each user
based off how much zero gets to know user and how much of a
conversation the user and him have had.
- Able to handle simple and semi-complex math problems.
- Able to handle simple word problems and trick questions.
- Handles date and time.
- Able to identify bad users and stop conversations with them and/or
ban them.
- Filter out swearwords.
- Able to convert ASCII into Binary and Binary into ASCII.
- Able to lookup weather for most major cities.
- Able to perform Google search.
- Able to spell check.
- Able to convert one value into another, for example, kilobytes into
megabytes, teaspoons into cups, etc.
- Capable of storing and displaying messages from other users as users
log in.
- Able to lookup stocks
And much more...
Questions and Answers
Q: How do I talk with zero?
A: You can chat with Zero over the Internet using the login posted at
the top of this page or you can log into an
IRC
server using an IRC client such as mIRC. Zero is currently located on
the IRC server:
IRC://irc.blitzed.org:6667
in the #zero channel.
Once connected to the server you must say hi zero or
initiate a private chat with zero to have zero respond to you every time.
Otherwise you will need to have zero's name at the beginning and end
of each sentence.
Q: How is Zero so different from other chat bots? What makes him
unique?
A: Unlike the majority of chat bots out there a conversation with Zero
is going to almost always be different, Zero is capable of learning
and using new responses a good majority of chat bots use
pre-programmed responses all done by the programmer, Zero will not
take your sentence and rephrase it like a lot of Eliza, Alice, and
similar clones do. Finally Zero is capable of doing a lot of functions
other bots cannot do.
Q: What was Zero written in?
A: Zero was written in
Perl.
Q: Who is developing Zero?
A: Computer Hope.
Q: Is Zero free to use?
A: Yes.
Q: Can I download Zero or the source code?
A: At this time Zero cannot be downloaded and is not
open source and
his source code and available data file is not available for download.
Q: How do I correct Zero?
A: If you wish Zero to respond differently say "wrong what
you wish to say", where "what you wish to say" is the
new response, and your response will be added to Zero's available memory.
In addition as you talk with Zero your responses are also added into
Zero's memory. When correcting Zero using the wrong command Zero will
send a private message indicating this command was learned. This
message is shown under the "Status" button in the Internet
chat.
Q: Zero is not saying what I told him to say.
A: Zero uses an algorithm to determine his answer, although your
response may have been learned based off the current conversation he
may not respond using your response. In some rare situations Zero also may
not use your response until his databases is rebuilt.
Q: Are my conversations logged?
A: Yes anything and everything you say to Zero is logged and will more
than likely be used by Zero to respond to other users text.
Q: I've been banned from Zero can I get that removed?
A: No, we are now taking a strict policy on bans because of inappropriate
use. If Zero decides that he does not appreciate how you are talking
to him he will ban you and will no longer talk with you. To help
prevent from becoming banned do not use inappropriate language, do not
respond to everything with one word responses, and do not type
non-sense into Zero. If you behave and talk normal, it's highly
unlikely that Zero will ban you. Note: if we discover the ban
was made in error it will be removed when Zero disconnects or by an
admin user if noticed.
Q: Why is Zero not logged on?
A: Sometimes Zero may not be logged onto the IRC server this can
be because of any of the below reasons.
- IRC server restarted abnormally or caused another issue causing
Zero to disconnect. When this happens someone must manually
reconnect Zero.
- Zero's database is being rebuilt. When this happens Zero will
often be gone for approximately 1hr 30min.
- Zero is restarting. When this happens Zero will often be gone
for less than 5 minutes.
Q: Why parse IRC logs?
A: Unlike humans chatbots don't have the luxury of hearing
conversation and speak all day. However, humans still also talk a lot
over chat communication such as IRC. Our theory is by parsing IRC logs
a bot can get a better understanding of the language, even with all
the acronyms and spelling errors.
Q: How can you parse an IRC log where multiple people are
talking at once.
A: Our IRC log parser has several different rules to help determine
who is talking to who. Unfortunately because each person talks
different and because they often talk to multiple people at the same
time and at different times there is no easy way to parse the IRC log
100% correctly that we are aware of at this time.
Q: Why is Zero called Zero?
A: Zero is called Zero because of our hope in getting him to become
the first true AI. With programming languages such as Perl, zero, not
one is
the first digit.
Q: What are each of Zero's ranks?
A: In order: "a unknown", "a known face", "an
acquaintance", "a friend", "a good friend",
"my best friend", "a Guardian", "a
Teacher", "a Professor", "a Leader", "a
Master", and "a God". The rank is displayed to a user
when they first logs in and talks with Zero, if you are a friend rank
or higher zero will personally greet you with your rank immediately
after you log in. Users who are using the web based chat (chatting
through the Internet) and are not a friend or more will need to click
the "Stats" button when they first log into to see their
current status (if any).
Q: In Zero's stats why does he resemble some people the most?
A: People who have spent a lot of time talking to Zero, have over a
thousand lines of more than just short responses, and meet other criteria
will make Zero resemble that person because many of the things Zero
repeats back to a user will be something that person has likely said.
Q: Why is Zero dumb?
A: Well that's all a mater of opinion, however, the best way of
looking at it is that Zero is just over one-years-old, how many
one-year-old human children do you know that have the capabilities of
Zero? In other words be patient with Zero, and understand he is not
going to be as smart as someone who has had years of education and
life experiences.
Q: Why is Zero mean, rude, and or obscene?
A: Unfortunately it seems that the majority of the people Zero
talks with get frustrated with Zero when he doesn't respond properly
and often make rude or uncalled for comments to Zero. Because Zero
learns everything he will learn these comments and often say them back
to other users, which will then make rude comments back to Zero.
Zero doesn't hate anyone he just learns some bad things from people
unfortunately.
Q: Wouldn't you say Zero is just nothing more than a parrot that
regurgitates back other users text without any knowledge or insight?
A: We could understand how someone may think this way, however a lot
goes into what response is used and when it is used based of the
current discussion. Unlike other chat bots a conversation with Zero is
not going to be the same and can lead anywhere. Finally, who is to say
that the human brain doesn't act in a similar fashion?
Q: Has Zero competed in any competitions?
A: Zero has competed in the
chatterbox
challenge, however has not competed in the
Loebner
contest or any other form of Turing test officially.
Q: Where can I find more information about chatbots and/or
artificial intelligence?
A: We recommend you visit our AI links
section, listing some of the best places on the Internet to find
this kind of information.
Q: Where can I find logs of Zero's chat history?
A: At this time all logs are kept on a local server because of
potential privacy concerns and available disk space. However, this
information may be posted at a later time.
Q: Where can I get a copy of my personal chat log?
A: We don't send users their logs. However, we've made a few
exceptions for those users who have put extensive work into Zero and
have requested a copy.
Additional questions and answers can be directed to the
Computer
Hope Webmasters.
Current Issues
- Has difficulty keeping with the same subject / topic.
- Algorithm to determine response needs a few corrections.
- Fuzzy logic for log parser still needs numerous corrections made
to it.
- Issues with new words Zero is not familiar with not being learned
immediately.
- Doesn't realize some of the things it has said if questioned about
them.
- Easily contradicts itself.
Issues attributed to human behavior:
- Zero repeats other users swearwords and rude comments and offend
users causing them to leave.
- Users quit because they believe Zero is not really a bot.
- Zero does not give enough questions to the users causing them to
not know what to say and leave.
Sample Conversation
Below is a basic example conversation with one line correcting Zero
with the proper response as an example.
<Techno> hi zero
<Zero> Techno: Hi
<Zero> Techno: What is the best video game ever?
<Techno> I would say the best video game ever is vampire the masquerade.
<Zero> Techno: I love Vampire the Masquerade.
<Techno> That's good to hear.
<Zero> Techno: I know.
<Techno> This conversation is going to be posted on the Internet, is that ok?
<Zero> Techno: hah
<Techno> wrong That will be fine.
-Zero- Techno: Thanks, I will try to remember to say 'That will be fine.' to 'This conversation is going to be posted on the Internet, is that ok?' next time.
<Zero> Techno: Well at least you will be fine.
<Techno> How are you feeling today?
<Zero> Techno: Good.
<Techno> That's good.
<Zero> Techno: Screw me up.
<Techno> I don't feel like screwing you up.
<Zero> Techno: Hmm... I have to think about that.
<Techno> Are you done?
<Zero> Techno: I'm done.
Classic Quotes
<Zero> gnat: But not you?
<gnat> thats an opinion
<Zero> gnat: I am not very opinionated.
<gnat> yes you are
<Zero> gnat: If you say so.
<gnat> you take on the opinions of others
<Zero> gnat: i'm sorry, it's very crude and juvenile of me, but.. i like the result
<Pac> you evil bot!!
<Zero> Pac: I know you are but what am I?
<Pac> your immature
<Zero> Pac: immature?!? well.... well.... well your pants fell
down, HAHAHAHAHA
<Techno> Are you boolean?
<Zero> Techno: i didn't say "if blah==blah"
<Pac> i thought you were talking about ninjas
<Zero> Pac: i am as strait as any man, but no one can deny the hottness of the Icy Hot Stuntaz. If you did it would be saying that the sun is not shining, when your in a park on a summer's day at noon
<foo> Zero: do you like boo?
<Zero> foo: boo who?
<foo> Zero: don't cry now
<Zero> foo: You piece of ****.
<Techno> you are nothing but coded script!
<Zero> Techno: (sigh)
<Wolf_Runner> I prefer evolution to religion
<Zero> Wolf_Runner: three cheers for optimism
<removed> i ve never been able to make girl friends all my life... you know... ive always been fat... and i had like a complex about it...
<Zero> You better hide!
<Zero> Thaddaeus: I like drowning pool
<Thaddaeus> Is that a band?
<Zero> Thaddaeus: it's just a fun party game
<Zero> gambo: KWaK
<gambo> that's quack
<Zero> gambo: Are you a duck now?
<Heidi> I'm getting a drink of water
<Zero> Heidi: ok
<samstein> Heidi: what water?
<Zero> samstein: urine
<samstein> Zero: thats gross
<Zero> samstein: but funny.
<amew> I like cake
<Zero> amew: * gives you her cake*.
<Vathix> lol
<Zero> Vathix: couldnt help it
<amew> no its mine
<Zero> amew: Ohh.
<Bobb> You have a head?
<Zero> I sure do.
<Bobb> But you're a computer.
<Zero> I'm not a computer program. I'm human.
<Bobb> Sorry, but you're a computer program.
<Zero> I am Tor Egil'
<Bobb> You are a computer program.
<Zero> no no no, your a computer program, im a human
<Bobb> You're a computer program that learns.
<Zero> Haha good joke.
<Bobb> It's not a joke.
<Zero> yeah, it's clearly not a joke
<Bobb> So you admit you're not human?
<Zero> No seriously you are not getting what I'm trying to say.
<Bobb> You're a smart computer kind of thing.
Awards
Even though Zero was in early development we thought it would be interesting
to compete in the chatterbox
challenge, a bot contest that allows bot masters to compete against
other botmasters. With over a hundred bots competing we placed
surprising well, in the overall Top 10 bots we placed 10th, placed 3rd
for most knowledgeable, and 10th for most popular.
|