Input-Output logs can be extremely useful in a number of ways.
input: hy
output: [unknown word error]
In this most simple example, the log file can be searched for “[unknown word error]” and all input not recognized can be examined and the appropriate action taken (in this case, maybe a spell check to convert “hy”->“hi”).
Once the log has a sufficient number of volleys, the log becomes invaluable for determining the frequency, and common variations, of specific input and for further automated analysis/learning.
recording meta data is really helpful too, depending on the sophistication of your bot you may also want to log:
-input
-output
-user id
-user ip
-user name (if they can tell your bot their name)
-state variables (session id; AIML type “topic”, “it”, “that”; POS “who/what/where/when”; bot “emotional” state; etc)
-bot version (since responses will vary with different versions as you modify the bot)
-any other meta data that shapes the bot response
A real example, we have trouble responding correctly to input “Some people *”, where “*” can be anything
A sampling of inputs in our db that match “Some people *”:
[ul]some people call themselves cracks[/ul]
[ul]Some people have had bad experiences.[/ul]
[ul]some people say many things, but only few speak the truth[/ul]
[ul]Some people on this site are bored, some are testing your logic.[/ul]
[ul]some people hate clowns[/ul]
[ul]some people are really weird[/ul]
[ul]some people want to become like them,others get along better with those types of people[/ul]
[ul]Some people like being slaves[/ul]
[ul]some people like darkness[/ul]
[ul]some people want to go to mars[/ul]
[ul]Some people find bellybuttons sexy.[/ul]
[ul]Some people are old.[/ul]
[ul]Some people make a living from playing chess.[/ul]
[ul]Some people have great breasts and some do not.[/ul]
[ul]Some people manage it.[/ul]
[ul]some people like it and some don’t, if you do not like it then do not do it you buffoon[/ul]
[ul]Some people think love is comfort, other people think love is sex[/ul]
[ul]Some people can do it.[/ul]
[ul]some people envy rich girls[/ul]
[ul]Some people say.[/ul]
[ul]Some people fool themselves into believing that they are something that they’re not.[/ul]
You can now try variations of parsing/responding to “some people *”, preferably automated. You could also use a corpus approach to get more context using fragments beginning with/containing “Some people”.