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ボット





固有名詞の分類


英和和英テキスト翻訳

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

辞書ショートカット

すべての辞書の索引

「Artificial_Intelligence_Markup_Language」の関連用語

Artificial_Intelligence_Markup_Languageのお隣キーワード
検索ランキング

   

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



Artificial_Intelligence_Markup_Languageのページの著作権

   
ウィキペディアウィキペディア
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の元に提供されております。

©2026 GRAS Group, Inc.RSS