The ALICE A.I. Foundation has released a draft specification of a major uprgade to AIML (Artificial Intelligence Markup Language), version 2.0 of the language. AIML is a widely adopted standard for creating chat bots and mobile virtual assistants like ALICE, Mitsuku, English Tutor, The Professor and many more. A decade or more of experience building AIML bots has informed the need for new features in the language. The need for new features however is tempered by the goal of keeping AIML as simple as possible, especially for non-programmers.
AIML 2.0 combines Pandorabots extensions to the language, the Out-of-Band (OOB) tags that implement actions on mobile devices, and a collection of new AIML features. AIML 2.0 includes a new
The AI Foundation will shortly be releasing a new open source AIML interpreter in Java to serve as a reference implementation of AIML 2.0. To join the discussion about AIML 2.0 please visit forum.alicebot.org and the chatbots.org forum.
What’s new in AIML 2.0?
- Zero+ wildcards: new wildcards that match 0 or more words.
- Highest priority matching: select certain words to have top matching priority.
- Migrating from attributes to tags: more dynamic control of attribute values.
- AIML Sets: match inputs with sets of words and phrases.
- AIML Maps: map set elements to members of other sets.
- Loops: Iterations in conditional expressions.
- Local variables: variables with scope limited to one category.
- Sraix: access external web services and other Pandorabots.
- Pandorabots extensions
- date: formatted date and time.
- request: access previous input request history.
- response: access previous bot response history.
- unbound predicates: check if a predicate has been set or not.
- learn: learn new AIML categories.
- learnf: learn new AIML categories and save in a file.
- explode: split words and phrases into individual characters.
- OOB (Out of Band) Tags: AIML extension for mobile device control