[alicebot-developer] proactive alice (was: alicebot-developer digest, Vol 1 #471 - 2 msgs)

Helio Perroni Filho alicebot-developer@list.alicebot.org
Wed, 25 May 2005 22:14:15 -0300 (ART)


--- Dave Sienkiewicz <daves1@ptd.net> escreveu:

> Nor am I frustrated because, as I said, I have
> written an ALICE interpreter in REXX that expounds
> the idea and let me just reiterate it changes the
> quality of the conversation raising it to a new
> level.

Oh, I have no doubts the idea you exposed has the
potential to greatly improve the quality of a
human/bot conversation. I only disagree that it has
anything to do with changing AIML; instead, the way I
see it, it's exclusively a matter of AIML interpreter
features.

> What you did not consider is that in my example, the
> oopic controller is a device which can function
> somewhat independently of the stimulus of being
> passed an AIML template. First, I should have made
> you aware there can be latency between the time a
> command is passed off to it, and the time needed
> for the mechanism to service the request. The
> interpreter can continue chatting and not have to
> wait for the mechanism to complete its operation.

So it's just another instance of my second
implementation suggestion, where a backdoor input
channel allows other processes to stimulate the AIML
interpreter, which in turns responds to the human user
interface.

Now I hope you don't use HTML mail, because it would
mess my diagrams up. Usual bot operation would go like
this, with the bot and the human user exchanging
messages:

+-----+ ---> +------+
| BOT |      | USER |
+-----+ <--- +------+

Occasionaly, however, an external application (like
your OOPIC controler) would send the bot a message
through a backdoor channel. The bot treats it just
like it received an input to the user, so it sends the
response to the user:

+-------+      +-----+      +------+
| OOPIC | ---> | BOT | ---> | USER |
+-------+      +-----+      +------+

My point is, this design is completely external to the
AIML language. It could easily be implemented around
the AIML interpreter, so not even it would know that
some of its stimuli comes from an actor other than the
user.

> I agree that very little new language specification
> is required, but seeing that the title of this list
> is "alicebot-developer" not "AIML-standard", gave me
> a distinct impression the topic was entirely
> appropriate and open for discussion.

Neither I argued against it. Just because I don't see
any need of changing the AIML language to make a more
proactive AliceBot doesn't mean I am against the
discussion itself.

> I have to say I enjoyed reading your sweeping
> generalizations used to try to strengthen your
> technical points of view. You must hail from an
> academic environment.

Stereotypes make for good start points when dealing
with people, but just as generalizations, they can be
misleading. So far my graduation course on computer
science accounts for all my academic experience; I am
very much an inhabitant of the private sector, where I
work since my early college days.

Yes, I did push a little too hard when doing that
wrap-up. But my point remains: why demand AIML to do
everything you want, when you can leave it at doing
what it does best and build the rest around it? It's
like the UNIX guys say: "be small, focus on what
you're supposed to do, know how to talk with other
applications".

AIML is simple for a reason -- so common people can
use it. It seems many people with a technical
background fail to realize that, because I often see
they bashing AIML or proposing ways to "fix" it. While
I don't believe AIML to be perfect, I don't see much
good in bloating it with stuff that could well be
built on top of it.

-- 
Ja mata ne.
Helio Perroni Filho


__________________________________________________
Converse com seus amigos em tempo real com o Yahoo! Messenger 
http://br.download.yahoo.com/messenger/