0

<srai>次のコードのように、 タグを使用して AIML で再帰を使用しています。

<category><pattern>I LIKE *</pattern>
 <think><set name="name"><star/></set>
 <set name="it">
 <set name="topic"><star/>
 </set>             
 </set>    
 </think>
 <template><srai>I DIG</srai></template>
 </category>



 <category><pattern>I DIG</pattern>       
 <template>
 <random>
 <li>If you dig <get name="name"/>, plant something in it</li>
 <li>I dig <get name="name"/> too.</li>
 <li>If you dig <get name="name"/> deep enough, rabbits will live in it.</li>
 </random>
 </template>
 </category>

数日前、このコードは機能していましたが、値が設定されていないため、現在は機能しています。私は得ています:

未知のものを掘る場合は、そこに何かを植えてください。

私も不明を掘ります。

未知なるものを深く掘ればウサギが住める。

私は何を間違っていますか?

4

3 に答える 3

0

AIML の形式が正しくありません。<think><set>タグをテンプレートの下に配置できます。したがって、AIML は次のようになります。

    <category>
      <pattern>I LIKE *</pattern>
      <template>
          <think>
             <set name="name"><star/></set>
             <set name="it">
                 <set name="topic"><star/></set>             
             </set>    
          </think>
          <srai>I DIG</srai>
     </template>
  </category>

  <category>
     <pattern>I DIG</pattern>       
     <template>
        <random>
           <li>If you dig <get name="name"/>, plant something in it</li>
           <li>I dig <get name="name"/> too.</li>
          <li>If you dig <get name="name"/> deep enough, rabbits will live in it.</li>
        </random>
     </template>
 </category>

This will return like following:
___________________________________________
Input:  I like Bird
Output: If you dig Bird, plant something in it

Input:  I like Bird
Output: If you dig Bird deep enough, rabbits will live in it.
于 2016-09-07T09:15:19.653 に答える