xEliza Docs Version 1.0
Latest released xEliza Version 1.0

Overview xEliza

A simple Litestep conversion of the Chatterbot Eliza 2.0 program by Gonzales Cenelia

ORIGINAL AUTHOR INFO

Program Name:
Chatterbot Eliza 2.0

Intro:
This version of the program is smarter than ever, more new features have been added since the last submission and also now the conversation log between the users and the chatbot is automaticaly saved into the file: log.txt And finaly the "script file" (script.txt) wich acts as a knowledge base for the chatbot has been totaly rewritten and it is definitly better than in the previous versions of the program.

Description:
These program is an Eliza like chatterbot,bots like Eliza are the results of researchs in Artificial Intelligence (more specificly: in NLP and NLU) NLP: Natural Language Processing, NLU: Natural Language Understanding
The first chatterbot was published in 1966 by Joseph Weizenbaum a professor of MIT. (http://i5.nyu.edu/~mm64/x52.9265/january1966.html)
And also,most of the chatterbots that have been written this days are largely based on the original chatterbot Eliza that was written by Joseph Weizenbaum which means that they use some appropriate keywords to select the responses to generate when they get new inputs from the users. More generaly,the technique that are in use in a "chatterbot database" or "script file" to represent the chatterbot knowledge is known as "Case Base Reasoning" or CBR. A very good example of an Eliza like chatterbot would be "Alice",these program has won the Loebner prize for most human chatterbot three times (www.alicebot.org). The goal of NLP and NLU is to create programs that are capable of understanding natural languages and also capable of processing it to get input from the user by "voice recognition" or to produce output by "text to speech". During the last decades there has been a lot of progress in the domains of "Voice Recognition" and "Text to Speech", however the goal of NLU that is to make software that are capable of showing a good level of understanding of "natural languages" in general seems quiet far to many A.I experts. The general view about this subject is that it would take at list many decades before any computer can begin to really understand "natural language" just as the humans do.
These code is Copyrighted and has limited warranty.

Features of the Program:
There are many interesting features in the current program,these chatterbot is capable of avoiding repetitions when selecting new responses,it can also follow the context of a conversation with a user. When the programs detect new keywords that are not part of the "script file", it saves it on the file "unknown.txt" and finaly it simulates a "human typist" when displaying responses on the screen. Actualy,there are many more features in the program, you will be capable of finding them by reading the "source code".

Changes Since Last Submission:
The implementation of the program has been improved, the repetitions made by the program are better handled, the context in a conversation is also better handled, the program can now correct grammatical errors that can occure after conjugating verbs. Finaly, the database is bigger than the last time, it includes some of the script that originaly was used in the first implementation of the chatterbot Eliza by Joseph Weizenbaum.

Author:
Gonzales Cenelia

Website:
www.ai-search.4t.com

Settings

xElizaScriptPath "Path to the script file"
The full path to a folder, which contains the script.txt as well as the other Eliza files.

xElizaRespondseBang !LitestepBang
Eliza's repondse to an Input via Bang, see Bangs!
Each found string "%[respondse]%" is replaced with "Eliza's respondse".

Bangs

!xElizaInput "Your Input to Eliza"
A simple text string, with your respondse to Eliza.

Setup Example for xLabel-4.0

1. Make a Label with a TexteditBox and a TextArea

*Label Eliza

Elizaautowidthmode .left
Elizaalwaysontop
Elizax 100
Elizay 100
Elizawidth 300
Elizaheight 50
Elizamoveable
Elizamovemodifierkey .none
ElizaPaintingMode .multicolor
ElizaBevels 1
ElizaColors c0c0c0 000000
ElizaGradientColors 222222
ElizaGradientType .vertical

Elizafontborders 5 5 0 20
Elizatexteditbox 5% 25 90% #
Elizatexteditboxpaintingmode .borderbutton
Elizatexteditboxbordermethod sunken
Elizatexteditboxpadding 5 2
ElizaTextEditBoxEnterAction !xElizaInput "%[textinput]%"

2. Setup xEliza-1.0

xElizaScriptPath "$themedir$eliza"
xElizaRepondseBang !execute [!labelsettext eliza "<b>Eliza:</b> %[respondse]%"][!labelsettext eliza .editbox ""]

The supplied script.txt is funny, but it actually hasn't anything useful for themers or litestep.
Therefore i add the script.txt at xdocs.ls-universe.info so that everyone (that means probably noone) can enhance it!

That's all :) Have fun!