Aiml-basic-tags

提供:Dev Guides
移動先:案内検索

AIML-基本タグ

このチュートリアルでは、AIMLの基本的なタグについて説明します。

  • <aiml> -AIMLドキュメントの始まりと終わりを定義します。
  • <category> -Alicebotのナレッジベースで*ナレッジユニット*を定義します。
  • <パターン> -ユーザーがAlicebotに入力するものと一致するパターンを定義します。
  • <template> -ユーザーの入力に対するAlicebotの応答を定義します。

ここでは、以下のAIMLファイルが参照として使用されています。

<?xml version = "1.0" encoding = "UTF-8"?>
<aiml version = "1.0.1" encoding = "UTF-8"?>
   <category>
      <pattern> HELLO ALICE </pattern>

      <template>
         Hello User
      </template>

   </category>
</aiml>

<aiml>タグ

<aiml>タグは、AIMLドキュメントの開始と終了を示します。 バージョンおよびエンコーディング属性の下に、バージョンおよびエンコーディング情報が含まれています。 version属性には、ALICE chatterbot Knowledge Base、KBで使用されるAIMLバージョンが格納されます。 たとえば、1.0.1バージョンを使用しました。 この属性はオプションです。

エンコード属性は、ドキュメントで使用される文字セットを提供します。 たとえば、UTF-8を使用しました。 必須要件として、<aiml>タグには少なくとも1つの<category>タグが含まれている必要があります。 各AIMLファイルに単一の<aiml>タグが含まれる複数のAIMLファイルを作成できます。 各AIMLファイルの目的は、categoryと呼ばれる少なくとも1つのナレッジユニットをALICE chatterbot KBに追加することです。

<aiml version = "1.0.1" encoding = "UTF-8"?>
   ...
</aiml>

<category>タグ

<category>タグは、ALICE Botの基本的な知識単位です。 各カテゴリに含まれるもの-

  • アサーション、質問、感嘆符などになりうる文の形式でのユーザー入力。 ユーザー入力には、**や *_ などのワイルドカード文字を含めることができます。

  • Alicebotによって提示されるユーザー入力への応答。

  • オプションのコンテキスト。

    *<category>* タグには、 *<pattern>* および *<template>* タグが必要です。 *<パターン>* はユーザー入力を表し、テンプレートはボットの応答を表します。
<category>
   <pattern> HELLO ALICE </pattern>

   <template>
      Hello User
   </template>

</category>

ここで、ユーザーが Hello Alice と入力すると、ボットは Hello User として応答します。

<pattern>タグ

<pattern>タグは、ユーザーの入力を表します。 <category>タグ内の最初のタグである必要があります。 <pattern>タグには、ユーザー入力として複数の文に一致するワイルドカードを含めることができます。 たとえば、この例では、<pattern>にHELLO ALICEが含まれています。

AIMLは大文字と小文字を区別しません。 ユーザーがHello Alice、hello alice、HELLO ALICEなどを入力すると、すべての入力が有効になり、ボットはそれらをHELLO ALICEと照合します。

<category>
   <pattern> HELLO ALICE </pattern>

   <template>
      Hello User
   </template>

</category>

ここでは、テンプレートは「Hello User」であり、ユーザー入力に対するロボットの応答を表しています。

<template>タグ

<template>タグは、ユーザーに対するボットの応答を表します。 <category>タグ内の2番目のタグである必要があります。 この<template>タグは、データの保存、別のプログラムの呼び出し、条件付き回答の提供、または他のカテゴリへの委任を行うことができます。

<category>
   <pattern> HELLO ALICE </pattern>

   <template>
      Hello User
   </template>

</category>

ここでは、テンプレートは「Hello User」であり、ユーザー入力に対するロボットの応答を表しています。