AIML - Thẻ <random>

<random>Thẻ được sử dụng để nhận phản hồi ngẫu nhiên. Thẻ này cho phép AIML phản hồi khác nhau cho cùng một đầu vào. Thẻ <random> được sử dụng cùng với các thẻ <li>. Thẻ <li> mang các phản hồi khác nhau sẽ được gửi đến người dùng một cách ngẫu nhiên.

Cú pháp

<random>
   <li> pattern1 </li>
   <li> pattern2 </li>
   ...
   <li> patternN </li>
</random>

Ví dụ, hãy xem xét cuộc trò chuyện sau đây.

Human: Hi
Robot: Hello!
Human: Hi
Robot: Hi! Nice to meet you!

Thí dụ

Tạo random.aiml bên trong C > ab > bots > test > aiml và random.aiml.csv bên trong C > ab > bots > test > aimlif các thư mục.

random.aiml

<?xml version = "1.0" encoding = "UTF-8"?>
<aiml version = "1.0.1" encoding ="UTF-8"?>
   <category>
      <pattern>HI</pattern>
      
      <template>
         <random>
            <li> Hello! </li>
            <li> Hi! Nice to meet you! </li>
         </random>
      </template>
      
   <category>      
</aiml>

random.aiml.csv

0,HI,*,*, <random><li> Hello! </li><li> Hi! Nice to meet you! </li></random>,random.aiml

Thực hiện chương trình

Mở dấu nhắc lệnh. Đi đếnC > ab > và gõ lệnh sau:

java -cp lib/Ab.jar Main bot = test action = chat trace = false

Xác minh kết quả

Bạn sẽ thấy kết quả sau:

Human: Hi
Robot: Hi! Nice to meet you!
Human: Hi
Robot: Hello!

Ở đây, câu trả lời có thể khác nhau khi xem xét các câu trả lời ngẫu nhiên.