我正在开发一个小型AIML引擎,我很难理解<learn>
标记的用途。
如果我理解正确,那只是指向可以集成到当前规则集中的外部AIML资源?
答案 0 :(得分:4)
是的,这是正确的。
答案 1 :(得分:2)
learn标记会重新加载指定的AIML文件。例如,如果开发人员在执行chatterbot时更改了某些AIML文件,那么开发人员可以告诉chatterbot重新加载。只有拥有以下行时才会重新加载文件:
<category>
<pattern>RELOAD AIML FILES</pattern>
<template>
Okay.
<think>
<learn>./aiml/*.aiml</learn>
</think>
</template>
</category>
可以使机器人重新加载特定的AIML文件,所有文件或一组AIML文件。学习标记通常放在思考标记内。
答案 2 :(得分:0)
<learn>
标签经历了一些演变。最初它意味着“加载AIML文件”。后来Pandorabots使用了<learn>
标签,因此可以通过对话动态地教授机器人新的类别。 <learn>
标记及其随附<learnf>
已合并到AIML 2.0规范中。见https://docs.google.com/document/d/1wNT25hJRyupcG51aO89UcQEiG-HkXRXusukADpFnDs4/pub