Advertisement

extendable chatbot ( ? opensource ? )

Started by June 12, 2005 02:25 PM
7 comments, last by Helter Skelter 19 years, 7 months ago
hi im looking for an extendible chatbot that i could use to make bots ( for games like counter-strike ) more useful. for example you could ask, " how many guys round that corner?" and they would reply with an appropriate answer ( NOT like alice bot, with some pointless sircastic answer ). I realise i would have to send events to the chatbot module thing like when an enemy is spotted or when he has to reload or whatever. so, does anyone know a chatbot that would fit my needs? ( i will be able to extend quite a bit :) )
-www.freewebs.com/tm1rbrt -> check out my gameboy emulator ( worklog updated regularly )
ok has anyone got any information about parsing commands?

like "go over there"

or whatever
-www.freewebs.com/tm1rbrt -> check out my gameboy emulator ( worklog updated regularly )
Advertisement
That's a pretty tall order. You could do what NiceCoder did with his MatrixBot and compare input/events to a user-editable database. Adding weights to each keyword of input could come up with a more 'right' answer. The only problem is that you would have to input/train the bot to a reasonable degree. well, thats my 2c.
-------------------------------------------"Oh no! It's a Parabola of Mystery!!" - RvB | Blog
You might find some of the discusion going on within the alpa project interesting.
OR you might have some ideas we might find interesting.

Either way, goodness will ensue.

From,
Nice coder
Click here to patch the mozilla IDN exploit, or click Here then type in Network.enableidn and set its value to false. Restart the browser for the patches to work.
hi guys, thanks for help.

NiceCoder: i didnt find anything on google about 'alpa project', do you have a url or something?
-www.freewebs.com/tm1rbrt -> check out my gameboy emulator ( worklog updated regularly )
Sorry, its the alpha project.

We do have a url, but our website is pretty sparse atm.


From,
Nice coder
Click here to patch the mozilla IDN exploit, or click Here then type in Network.enableidn and set its value to false. Restart the browser for the patches to work.
Advertisement
what does alpha bot do?

is it going to be a chatbot?

i did download it btw.
-www.freewebs.com/tm1rbrt -> check out my gameboy emulator ( worklog updated regularly )
Yep its a chatbot/infobot.

(the version up on the site is just a gui demo, were going to be putting up v1, once we've finished it).

From,
Nice coder
Click here to patch the mozilla IDN exploit, or click Here then type in Network.enableidn and set its value to false. Restart the browser for the patches to work.
Quote:
Original post by ErUs
ok has anyone got any information about parsing commands?

like "go over there"

or whatever



You can probably get by with most of the available chat bots, even for dealing with text input like "go over there". Unfortunately most chat bots are based on AIML (a markup language) that allows you to group input and responses and has some support for placing things in context. Unfortunately you have to create a very large set of scripts in order for the bot to "appear" intelligent. That doesn't mean they aren't useful as they can be used to monitor, record, and later analyze interactions with real people. This can be very beneficial but you are still limited in what can be done with the bot.

The suggestion to put a certain amount of 'weight' on particular words is a good start but not necessarily the best approach. If you are wanting to parse text and as a result put it into some sort of contextual representation you will want to do look over some of the research in Natural Language Processing (NLP). The approaches in NLP are vastly different from chat bots using AIML in that many NLP systems use parts of speech (PoS) dictionaries and (for English) parses input in a way similar diagramming sentences. Each word in the dictionary is tagged as a verb, adjective, noun, etc. and usually also have additional attributes such as transitive and intransitive. The advantage is that you can deconstruct a particular sentence into context which gives you a better chance of accurately acting on it. Consider the following:

"he kicked the dog"
"he kicked the bucket"

If you don't put it into context all you may know is that "someone kicked something". With systems such as AIML it would be trivial to continue adding rule sets but it doesn't necessarily mean it will present or determine the context. On the other hand NLP systems can be (and usually are) more difficult to implement. The good thing though is that there are a considerable number of existing PoS dictionaries, parsers, research, and papers so the information is there.

Regardless of whether you choose an AIML based bot or take an NLP approach you may have to deal with spelling issues. With AIML based systems it's usually much harder because everything is based on predefined sets of rules (made of up input and response). You can of course convert those rules during initialization but I haven't seen anyone take that approach. For either system if you encounter a word that is not in the dictionary or rule set you have the option of converting the word into a phonetical representation and finding the best match in the dictionary or word set. You will certainly run into situations where a word is misspelled and there are several words to choose from (ambiguities). In AIML you just pick one and hope it's the correct one. In NLP you have a better chance of picking the correct word if you can determine the context in which it is used.

Each approach has it's own advantages and disadvantages. NLP can be more complex and usually is - it's definitely uses a lot more CPU resources.


If you're interested in researching NLP here are a couple of links to get you started:

http://www-nlp.stanford.edu/links/statnlp.html
http://www-a2k.is.tokushima-u.ac.jp/member/kita/NLP/nlp_tools.html


You can also do a google or wikipedia search on the following:

natural language processing
NLP
computational linguistics
parts of speech tagging
statistical speech analysis
morphological analyzer
natural language tools

You'll probable get better results if you enclose the above phrases in quotes.

This topic is closed to new replies.

Advertisement