Я нашел bot.aiml
файл здесь, и в нем используются такие вещи, как <bot name="genus"/>
. Я предполагаю, что это работает аналогично чему-то вроде <get name="name"/>
, который получает имя клиента. Итак, как мне установить такие свойства, как genus
для бота, чтобы я мог получить его таким образом?
AIML - изменение свойств бота
Ответы (2)
Предположим, бот спрашивает ваше имя, и когда вы говорите «МОЕ ИМЯ - ДЖЕЙКОБ», вы хотите, чтобы бот сказал: «Я ПОМНЮ, ЧТО ВАШЕ ИМЯ - ДЖЕЙКОБ», и установил значение переменной «clientname» на «ДЖЕЙКОБ».
Добавьте эти строки в свой файл AIML:
<category>
<pattern>MY NAME IS *</pattern>
<template>I will remember that your name is </star><think><set name="clientname"></star></set></template>
</category>
В этом случае тег </star>
представляет все, что вы вводите вместо * (в данном случае JACOB).
Я думаю, что исходный вопрос касается свойств бота, а не свойств пользователя.
В AIML v1 (и v2) свойства бота извлекаются с использованием <bot name="name"/>
(например) для получения имени бота. Свойства пользователя извлекаются с помощью <get name="name"/>
и обновляются с помощью <set name="name">Fred</set>
(например). Я не думаю, что стандартный AIML имеет какие-либо средства для обновления свойств бота после его загрузки.