AIML - Etiquetas básicas

En este tutorial, discutiremos las etiquetas básicas de AIML.

  • <aiml> - define el comienzo y el final de un documento AIML.

  • <category> - define el unit of knowledge en la base de conocimientos de Alicebot.

  • <pattern> - define el patrón para que coincida con lo que un usuario puede ingresar a un Alicebot.

  • <template> - define la respuesta de un Alicebot a la entrada del usuario.

Los siguientes archivos AIML se han utilizado aquí como referencia.

<?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> etiqueta

La etiqueta <aiml> marca el inicio y el final de un documento AIML. Contiene información de versión y codificación bajo los atributos de versión y codificación. El atributo de versión almacena la versión AIML utilizada por la base de conocimientos de ALICE chatterbot, KB. Por ejemplo, hemos utilizado la versión 1.0.1. Este atributo es opcional.

Los atributos de codificación proporcionan los juegos de caracteres que se utilizarán en el documento. Por ejemplo, usamos UTF-8. Como requisito obligatorio, la etiqueta <aiml> debe contener al menos una etiqueta <category>. Podemos crear varios archivos AIML donde cada archivo AIML contiene una sola etiqueta <aiml>. El propósito de cada archivo AIML es agregar al menos una unidad de conocimiento única llamada categoría a ALICE chatterbot KB.

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

etiqueta <category>

La etiqueta <category> es la unidad de conocimiento fundamental de un bot de ALICE. Cada categoría contiene:

  • La entrada del usuario en forma de una oración que puede ser una afirmación, pregunta, exclamación, etc. La entrada del usuario puede contener caracteres comodín como * y _.

  • Respuesta a la entrada del usuario que presentará Alicebot.

  • Contexto opcional.

UN <category> la etiqueta debe tener <pattern> y <template> etiqueta. <pattern> representa la entrada del usuario y la plantilla representa la respuesta del bot.

<category>
   <pattern> HELLO ALICE </pattern>
   
   <template>
      Hello User
   </template>
   
</category>

Aquí, si el usuario entra Hello Alice entonces el bot responderá como Hello User.

etiqueta <patrón>

La etiqueta <pattern> representa la entrada de un usuario. Debe ser la primera etiqueta dentro de la etiqueta <category>. La etiqueta <pattern> puede contener comodines para que coincida con más de una oración como entrada del usuario. Por ejemplo, en nuestro ejemplo, <patrón> contiene HOLA ALICE.

AIML no distingue entre mayúsculas y minúsculas. Si un usuario ingresa Hello Alice, hello alice, HELLO ALICE, etc., todas las entradas son válidas y el bot las comparará con HELLO ALICE.

<category>
   <pattern> HELLO ALICE </pattern>
   
   <template>
      Hello User
   </template>
   
</category>

Aquí, la plantilla es "Hola usuario" y representa la respuesta de un robot a la entrada del usuario.

etiqueta <template>

La etiqueta <template> representa la respuesta del bot al usuario. Debe ser la segunda etiqueta dentro de la etiqueta <category>. Esta etiqueta <template> puede guardar datos, llamar a otro programa, dar respuestas condicionales o delegar en otras categorías.

<category>
   <pattern> HELLO ALICE </pattern>
   
   <template>
      Hello User
   </template>
   
</category>

Aquí, la plantilla es "Hola usuario" y representa la respuesta de un robot a la entrada del usuario.