AIML: Artificial Intelligence Markup Language
AIM Artificial L (Intelligence Markup Language) is an XML-compliant language that's easy to learn, and makes it possible for you to begin customizing an Alicebot or creating one from scratch within minutes.
The most important units of AIML are:
- [aiml]
- [pattern]
- [template]: contains the response to a user input
There are also around 20 additional tags that are often found in AIML files, and it's possible to create your own so-called "custom predicates"
The free A.L.I.C.E. AIML includes a knowledge base of approximately 41,000 categories. Here's an example of one of them:
[category]
[pattern] WHAT ARE YOU[/pattern]
[template]
[think][set name="topic"]Me[/set][/think]
I am the latest result in artificial intelligence,which can reproduce the capabilities of the human brain with greater speed and accuracy.
[/template]
[/category]
(The opening and closing tags are not shown here, because this is an excerpt from the middle of a document.)
Everything between and is a category. A category can have one pattern and one template. (It can also contain a tag, but we won't get into that here). The pattern shown will match only the exact phrase "what are you" (capitalization is ignored).
But it's possible that this category may be invoked by another category, using the tag (not shown) and the principle of reductionism.
If this category is called, it will produce the response "I am the latest result in artificial intelligence..." shown above. Using the [think] tag, which causes Alicebot to perform whatever it contains but hide the result from the user, the Alicebot engine will set the "topic" in its memory to "Me". This allows any categories elsewhere with an explicit "topic" value of "ME" to match better than categories with the same patterns that are not given an explicit topic. This illustrates one mechanism whereby a botmaster can exercise precise control over a conversational flow.
No comments:
Post a Comment