Authentification :

Connexion
Pas encore de compte ? Enregistrez-vous
 
Accueil arrow Articles

Moteur de recherche

Affichage type blog de toutes les sections sans images
srai Convertir en PDF Version imprimable Suggérer par mail
Appréciation des utilisateurs: / 0
Écrit par Philippe YONNET   
17-11-2007

Syntaxe

<srai>...</srai>
autre forme (forme atomique): <sr/>
<sr/> = <srai><star/><srai>

Description
La balise <srai> commande à l’interpréteur AIML de passer le résultat du traitement du contenu de l’élément srai à la boucle de correspondance AIML, comme si l’entrée avait été produite sous cette forme par l’utilisateur (en incluant le processus complet de normalisation de l’entrée). La balise srai n’a pas d’attributs, et peut contenir n’importe quelle balise AIML utilisable dans un template.

L’acronyme "srai" signifie "Stimulus-Response Artificial Intelligence" (Intelligence Artificielle par Stimulus-Réponses).

Les balises AIML sont parsées de l’intérieur vers l’extérieur, ce qui signifie que l’on peut imbriquer des balises srai dans d’autres balises srai.

Exemple

L’application la plus fréquente de la balise <srai> est la "réduction symbolique" d’une phrase complexe en éléments plus simples, pour la ramener à une forme correspondant à un gabarit d’entrée existant.


<category>
<pattern>PEUX TU ME DIRE CE QU'EST *</pattern>
<template><srai>KESKE<star/></srai></template>
</category>

Remarque sur le KESKE : si l’auteur d’un fichier AIML sait à l’avance qu’un gabarit d’entrée ne sera utilisé que suite à des réductions symboliques, il peut très bien utiliser une forme atomique originale, qui ne correspond à aucune entrée connue, ce n’est pas grave. Certains auteurs ne s’en privent pas...

La réponse est donnée par une autre catégorie (atomique celle là) :


<category>
<pattern>KESKE LINUX</pattern>
<template><set_it>Linux</set_it> est l'un des meilleurs systèmes d'exploitation.</template>
</category>

En multipliant les catégories de "réduction symbolique" utilisant

<srai><code>, le robot peut donner la même réponse à toutes ces formes de question :

"Peux-tu me dire ce qu'est Linux ?"
"Sais-tu ce qu'est Linux ?"
"Donnes moi la définition de Linux"
"Alice s'il te plait dis moi tout de suite ce que veut dire Linux "

La réponse peut-être aussi la combinaison de deux réductions symboliques accolées (on peut donc placer plusieurs srai dans le même template) :

<code>
<category>
<pattern>OUI *</pattern>
<template><srai>OUI</srai> <sr/></template>
</category>

Avec une catégorie écrite ainsi, le robot répondra à toutes les entrées de type "Oui quelque chose" en combinant la réponse prévue pour "OUI" avec la réponse prévue pour "QUELQUE CHOSE" (attention, ceci peut produire des surprises, bonnes ou mauvaises).

Rappel : <sr/> est la forme abrégée de <srai><star/></srai>.

La balise <srai> est également la solution au problème souvent posé : puis-je avoir plus d’un gabarit d’entrée dans la même catégorie ? La réponse est : NON. Mais <srai> permet de contourner le problème élégamment.

Admettons que je souhaite que deux entrées différentes aboutissent à la même réponse (par exemple, que l’on dise "Ciao" ou "Au revoir", le robot répondra "A bientôt) :

Voila ce que cela donne avec


<category>
<pattern>CIAO</pattern>
<template><srai>AU REVOIR</srai></template>
</category>

<category>
<pattern>AU REVOIR</pattern> <template>A bientôt.</template>
</category>
Compatibilité
Balise utilisable dans : Modèles de réponse
Conforme AIML 1.0.1 : Oui
Pandorabot : Oui
Référence doc : 7.5.1.
Dernière mise à jour : ( 17-11-2007 )
 
person2 Convertir en PDF Version imprimable Suggérer par mail
Appréciation des utilisateurs: / 0
Écrit par Philippe YONNET   
17-11-2007

Syntaxe

<person2>...</person2>
autre syntaxe : <person2/>
<person2/>=<person2><star/></person2>

Description
La balise <person2> donne pour instruction à l’interpreteur AIML de :
-  remplacer les mots correspondant grammaticalement à la première personne du singulier/pluriel, par des mots correspondants à la troisième personne du singulier/pluriel
-  et l’inverse... (remplacer les mots correspondant à la troisième personne par les mots correspondant à la première personne)

La table de correspondance grammaticale n’est pas contenue dans l’interpréteur, mais dans un fichier à part (baptisé startup.xml dans program_E). Ce qui veut dire que la manière dont cette balise fonctionne dépend de ce qui est prévu par l’auteur du fichier AIML.

Historiquement, person2 a servi au départ uniquement pour les pronoms, probablement parce que la plupart des fichiers AIML ont été écrits en anglais. Quoi qu’il en soit, il est tout à fait possible de transformer la personne d’autres éléments si l’application AIML le demande.

exemple


<person>Je suis timide..</person>
_ produira  : "Il est timide".

Remarque : en français, le changement de personne affecte de nombreux mots dans la phrase, et notamment les formes verbales. Ce changement de personne est assez difficile à reproduire correctement, d’autant que le moindre oubli produit une phrase boîteuse grammaticalement, ce qui tranche avec les réponses habituelles du robot, bien formées par construction.

Compatibilité
Balise utilisable dans : Modèles de réponse
Conforme AIML 1.0.1 : Oui
Pandorabot : Oui, mais ne fonctionne qu’en anglais... Impossible d’accéder au fichier implémentant le paramétrage de cette balise
Référence doc : 7.6.1.
Dernière mise à jour : ( 17-11-2007 )
 
person Convertir en PDF Version imprimable Suggérer par mail
Appréciation des utilisateurs: / 0
Écrit par Philippe YONNET   
17-11-2007

Syntaxe

<person>...</person>
autre syntaxe : <person/>
<person/> = <person><star/></person>

Description

La balise <person> donne pour instruction à l’interpreteur AIML de :
-  remplacer les mots correspondant grammaticalement à la première personne du singulier/pluriel, par des mots correspondants à la seconde personne du singulier/pluriel
-  et l’inverse... (remplacer les mots correspondant à la deuxième personne par les mots correspondant à la première personne)

La table de correspondance grammaticale n’est pas contenue dans l’interpréteur, mais dans un fichier à part (baptisé startup.xml dans program_E) ce qui veut dire que la manière dont cette balise fonctionne dépend de ce qui est prévu par l’auteur du fichier AIML.

Historiquement, person a servi au départ uniquement pour les pronoms, probablement parce que la plupart des fichiers AIML ont été écrits en anglais. Quoi qu’il en soit, il est tout à fait possible de transformer la personne d’autres éléments si l’application AIML le demande.

Exemple


<person>Je suis timide..</person>
_ produira  : "Tu es timide".

Remarque : en français, le changement de personne affecte de nombreux mots dans la phrase, et notamment les formes verbales. Ce changement de personne est assez difficile à reproduire correctement, d’autant que le moindre oubli produit une phrase boîteuse grammaticalement, ce qui tranche avec les réponses habituelles du robot, bien formées par construction.

Compatibilité
Balise utilisable dans : Modèles de réponse
Conforme AIML 1.0.1 : Oui
Pandorabot : Oui, mais ne fonctionne qu’en anglais... Impossible d’accéder au fichier implémentant le paramétrage de cette balise
Référence doc : 7.6.2.
Dernière mise à jour : ( 17-11-2007 )
 
gender Convertir en PDF Version imprimable Suggérer par mail
Appréciation des utilisateurs: / 0
Écrit par Philippe YONNET   
17-11-2007

Syntaxe
<gender>...<gender>

Description
La balise <gender> donne pour instruction à l’interpreteur AIML de :
-  remplacer les mots de genre masculin contenus entre balise ouvrante et fermante par leur forme féminine grammaticalement correspondante.
-  ou l’inverse (remplacer les mots féminins par leur équivalent masculin)

La définition de "grammatiquement correspondante" dépend de l’implémentation. La table de correspondance grammaticale n’est pas contenue dans l’interpréteur, mais dans un fichier à part (baptisé startup.xml dans program_E), ce qui veut dire que la manière dont cette balise fonctionne dépend de ce qui est prévu par l’auteur du fichier AIML.

Historiquement, gender a servi au départ uniquement pour les pronoms, probablement parce que la plupart des fichiers AIML ont été écrits en anglais. Quoi qu’il en soit, il est tout à fait possible de transformer le genre d’autres mots si l’application AIML le demande.

Exemple


<gender>Il m'a dit de venir te parler..</gender>
_ produira  : "Elle m'a dit de venir te parler".

Remarque : en français, le passage du masculin au féminin demande souvent plus qu’une simple modification de la forme d’un seul mot... Beaucoup d’éléments grammaticaux ont une forme féminine et masculine. Ce qui veut dire que la substitution d’une forme à l’autre n’est pas toujours très aisée à réaliser.

Compatibilité
Balise utilisable dans : Modèles de réponse
Conforme AIML 1.0.1 : Oui
Pandorabot : Oui, mais ne fonctionne qu’en anglais... Impossible d’accéder au fichier implémentant le paramétrage de cette balise
Référence doc : 7.6.3.
Dernière mise à jour : ( 17-11-2007 )
 
think Convertir en PDF Version imprimable Suggérer par mail
Appréciation des utilisateurs: / 0
Écrit par Philippe YONNET   
01-11-2007

 

Syntaxe
<think>...</think>

Description :
La balise <think> sert à masquer, dans un template, l’affichage du texte en sortie produit par une autre balise.

Exemple


<category>
<pattern>Je suis une femme</pattern>
<template>Merci de m'avoir indiqué quel était votre sexe.<think><set_gender>femme</set_gender></think>
</template>
</category>

La balise <set_gender>femme</set_gender> renvoie normalement la chaine de caractères "femme". Mais comme la balise <think> cache le texte produit par <set_gender>female</set_gender> dans la réponse, celle ci devient :

Merci de m’avoir indiqué quel était votre sexe

Compatibilité
Balise utilisable dans : Modèles de réponse
Conforme AIML 1.0.1 : Oui
Pandorabot : Oui
Référence doc : 7.7.1.
Dernière mise à jour : ( 17-11-2007 )
 
Balises spécifiques à Pandorabots Convertir en PDF Version imprimable Suggérer par mail
Appréciation des utilisateurs: / 0
Écrit par Philippe YONNET   
01-11-2007

<condition name="X" value="*">

<li name="X3 value="*">

<li value="*">

<date locale="X" timezone="Y" format="Z"/>

<that index="M,*"/>

<request index="N"/>

<response index="N"/>

<learn>

<eval>

Dernière mise à jour : ( 17-11-2007 )
 
<< Début < Précédente 1 2 3 4 5 Suivante > Fin >>

Résultats 41 - 47 sur 47