AIML - Tags básicas

Neste tutorial, discutiremos as tags básicas do AIML.

  • <aiml> - define o início e o fim de um documento AIML.

  • <category> - define o unit of knowledge na base de conhecimento da Alicebot.

  • <pattern> - define o padrão para corresponder ao que um usuário pode inserir em um Alicebot.

  • <template> - define a resposta de um Alicebot à entrada do usuário.

Os seguintes arquivos AIML foram usados ​​aqui como referência.

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

tag <aiml>

A tag <aiml> marca o início e o fim de um documento AIML. Ele contém informações de versão e codificação em atributos de versão e codificação. O atributo version armazena a versão AIML usada pelo ALICE chatterbot Knowledge Base, KB. Por exemplo, usamos a versão 1.0.1. Este atributo é opcional.

Os atributos de codificação fornecem os conjuntos de caracteres a serem usados ​​no documento. Por exemplo, usamos UTF-8. Como requisito obrigatório, a tag <aiml> deve conter pelo menos uma tag <category>. Podemos criar vários arquivos AIML onde cada arquivo AIML contém uma única tag <aiml>. O objetivo de cada arquivo AIML é adicionar pelo menos uma única unidade de conhecimento chamada categoria ao chatterbot KB do ALICE.

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

tag <category>

<category> tag é a unidade de conhecimento fundamental de um ALICE Bot. Cada categoria contém -

  • A entrada do usuário na forma de uma frase que pode ser uma asserção, pergunta e exclamação, etc. A entrada do usuário pode conter caracteres curinga como * e _.

  • Resposta à entrada do usuário a ser apresentada por Alicebot.

  • Contexto opcional.

UMA <category> tag deve ter <pattern> e <template> tag. <pattern> representa a entrada do usuário e o modelo representa a resposta do bot.

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

Aqui, se o usuário inserir Hello Alice então o bot responderá de volta como Hello User.

tag <pattern>

A tag <pattern> representa a entrada de um usuário. Deve ser a primeira tag dentro da tag <category>. A tag <pattern> pode conter curinga para corresponder a mais de uma frase como entrada do usuário. Por exemplo, em nosso exemplo, <padrão> contém HELLO ALICE.

AIML não diferencia maiúsculas de minúsculas. Se um usuário inserir Hello Alice, hello alice, HELLO ALICE etc., todas as entradas são válidas e o bot irá combiná-las com HELLO ALICE.

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

Aqui, o modelo é "Olá, usuário" e representa a resposta de um robô à entrada do usuário.

tag <template>

A tag <template> representa a resposta do bot ao usuário. Deve ser a segunda tag dentro da tag <category>. Esta tag <template> pode salvar dados, chamar outro programa, dar respostas condicionais ou delegar a outras categorias.

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

Aqui, o modelo é "Olá, usuário" e representa a resposta de um robô à entrada do usuário.