Artificial Intelligence Markup Languageとは? わかりやすく解説

Weblio 辞書 > 固有名詞の種類 > 製品 > コンピュータ > ソフトウェア > オープンソース > Artificial Intelligence Markup Languageの意味・解説 

Artificial Intelligence Markup Language

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2025/01/13 16:11 UTC 版)

Artificial Intelligence Markup Language(アーティフィシャル・インテリジェンス・マークアップ・ランゲージ、AIML、エーアイエムエル)とは、自然言語ソフトウェアエージェント構築のための XML を応用したマークアップ言語である。

背景

AIML は Richard Wallece と世界的な自由ソフトウェア・コミュニティにより、1995年から2002年にかけて開発された。当初の目的はELIZAを高度に拡張した "A.L.I.C.E." と呼ばれるシステム向けであり、同システムはローブナー賞を3回受賞し、2004年にはChatterbox Challengeで優勝している。

A.L.I.C.E. のAIMLはGNU GPLライセンスでリリースされたため、多数のAIMLインタプリタが自由ソフトウェアまたはオープンソースで作られ、A.L.I.C.E. のクローンも多数作成された。いくつかの言語用のセット(Free AIML sets)も作られ、ユーザーコミュニティによって利用可能となっている。最近では、JavaベースのProgram DというAIMLインタプリタの開発が活発である。他にも、RubyPythonC++C#Pascalなどの言語向けにフリーまたはオープンソースのAIMLインタプリタが開発されている。

AIMLの要素

AIML はいくつかの要素からなる。以下にその主な部分の詳細を解説する。

カテゴリ

AIMLにおけるカテゴリは、知識の基本単位である。カテゴリには少なくとも、「パターン」と「テンプレート」という要素が含まれる。以下に単純なカテゴリの例を示す。

 <category>
   <pattern>WHAT IS YOUR NAME</pattern>
   <template>My name is John.</template>
 </category>

このカテゴリをロードすると、AIMLボットは "What is your name" という入力に対して "My name is John." と応答する。

パターン

パターンは、1つまたは複数のユーザー入力とマッチすることを意図した文字列である。以下のパターン

 WHAT IS YOUR NAME

は大文字/小文字を無視して、"what is your name" といった入力とマッチする。パターンにはワイルドカードを使用できる。例えば、次のパターン

 WHAT IS YOUR *

は、"what is your name" にも "what is your shoe size" にも "what is your purpose in life" にもマッチする。

AIMLのパターンの文法は非常に単純であり、正規表現のような複雑な表現はできない。対話用に特化した設計であり、省略表現への対応や誤記への対応は AMILインタプリタ側で対応することができる。

テンプレート

テンプレートはマッチしたパターンに対する応答を指定する。テンプレートには以下のような単純なテキストを使うこともできる。

  My name is John.

テンプレートには変数を使って以下のように表記することもできる。

 My name is <bot name="name"/>.

こうすると、ボット名が文の中に組み込まれる。

 You told me you are <get name="user-age"/> years old.

この場合、ユーザーの年齢が既にわかっていれば、それを応答の中で使うことができる。

テンプレートでは基本的なテキスト形式が使え、条件付応答(if-then/else)やランダムな応答も設定できる。

テンプレートで srai という要素を使って他のパターンにリダイレクトすることができる。これは、意味が同じで表現が異なる場合に対応する。以下に例を示す。

 <category>
   <pattern>WHAT IS YOUR NAME</pattern>
   <template>My name is <bot name="name"/>.</template>
 </category>
 <category>
   <pattern>WHAT ARE YOU CALLED</pattern>
   <template>
     <srai>what is your name</srai>
   </template>
 </category>

1つめのカテゴリは単に "what is your name" という質問に答えている。2番目のカテゴリでは "what are you called" と入力されたときに "what is your name" と入力されたときと同じ応答をするように指定している。つまり、この2つの文はこのシステムでは等価に扱われる。

テンプレートは応答を指定しているものであるため、表示形式などをHTMLで指定するといったことも可能である。

外部リンク

AIML実装(フリーまたはオープンソース)

開発進行中:

冬眠状態:

AIMLボット





固有名詞の分類


英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「Artificial Intelligence Markup Language」の関連用語

Artificial Intelligence Markup Languageのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



Artificial Intelligence Markup Languageのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
All text is available under the terms of the GNU Free Documentation License.
この記事は、ウィキペディアのArtificial Intelligence Markup Language (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。 Weblio辞書に掲載されているウィキペディアの記事も、全てGNU Free Documentation Licenseの元に提供されております。

©2025 GRAS Group, Inc.RSS