AIMLの学習

AIML(人工知能マークアップ言語)は、人工知能のマークアップ言語です。 AIML-XMLのサブセット(方言)、仮想対話者を作成することを目的としています。
これはボットの作成に使用された最初の言語の1つであり、彼は最も簡単だとも考えています。

AIMLファイル-カテゴリのセット(カテゴリ)が含まれています。 カテゴリは<category>タグで開き、</ category>タグで閉じますHTMLと同様に、各終了タグには終了タグが必要です。 そうしないと、AIML構造に違反し、ボットが発言できなくなりますカテゴリには、カテゴリ(パターン)とテンプレートが含まれます。 単語パターンと単語テンプレートは、サンプルまたはテンプレートとして同じ方法でロシア語に翻訳されます。 したがって、混乱しないように、パターンとテンプレートと呼びます。
パターンは大文字で書かれています。 任意の単語または単語のグループを定義するには、*
パターンの例:
<パターン>こんにちは</ /パターン>
<pattern> HELLO * </パターン>
<pattern> * HELLO * </パターン>
<pattern> * HELLO </ pattern>
</コード>
パターン1は、「Hello」という単語のみを含む着信レプリカにのみ適しています。他のレプリカには適していません。
パターン2は、「Hello」という単語で始まり、「Hello」という単語の後に他の単語、たとえば「Hello Bot!」を含む着信レプリカにのみ適しています。
パターン3は、1つ以上の単語で始まり、「Hello」という単語が続き、「Hello」という単語の後に他の単語、例えば「Hey、hey、handsome man!」が含まれる着信キューにのみ適しています。
パターン4は、1つ以上の単語で始まり、その後に「Hello」という単語が続く、たとえば「Bot、hello!」という着信行にのみ適しています。

テンプレートには、次のような1つのレプリカを含めることができます。

<template>こんにちは!</テンプレート>

またはいくつかのレプリカ。 この場合、オプションの<random>タグを使用する必要があります。 例:

<テンプレート>
<ランダム>
<li>こんにちは! </ li>
<li>こんにちは</ li>
<li>こんにちは... </ ii>
</ランダム>
</テンプレート>

この場合、<li> </ li>タグの間にあるレプリカの1つが応答レプリカとして任意に選択されます。
ランダムは、通常のレプリカと組み合わせることができます。 例:
<テンプレート>
<ランダム>
<li>こんにちは! </ li>
<li>こんにちは</ li>
<li>こんにちは... </ ii>
</ランダム>
お元気ですか?
</テンプレート>

この場合、ボットは「こんにちは! お元気ですか?「または」こんにちは、お元気ですか?「または」こんにちは...お元気ですか?」
だから、どんな文にも反応する愚かなボットを作りましょう: "hello":
<カテゴリ>
<パターン> * </パターン>
<template>こんにちは</ template>
</カテゴリ>
これらの最も単純なタグと、さらにいくつかの複雑なタグ(この投稿で良い点が出たら次のレッスンで説明します)を使用して、チューリングテストの受賞者であるALICEのようなボットを作成できます。
ありがとうございました。新しいレッスンが近日中に公開されます。このレッスンがあなたの興味を引く場合は... AIMLの歴史、チューリングテストについて詳しく説明します
PSテンプレートの前にはまだスペースがありません。他のタグの前にもスペースはありません。Habraエンコードでは(初心者として)正しいことをすることができません。 .whoは適切な方法でAIMLを必要とします-受信トレイに書き込み、喜んでtxtを送信します

Source: https://habr.com/ru/post/J69630/


All Articles