<learnf>
はユーザとの対話内容をもとに、自然対話プラットフォームのLearnボットを学習させることができます。学習が成功した場合は
TRUE
、何らかの理由で失敗した場合はFALSE
を出力します。
SUNABAでは<learnf>
をご利用になれません。
学習方法
学習は子要素の<category>
によって行い、シナリオ開発者は自由に学習内容を記述できます。
また、学習内容の<category>
において<learnf>
の外の値を<get>
<star>
などで引用した場合は、<eval>
で囲み学習時にリテラル化する必要があります。
学習内容を更新する場合は、更新対象と同じpattern
で初回と同様に学習してください。
学習内容をクリアする場合は、設計ツールの管理者ページにある「learnボット管理」でクリアしたいボットを削除してください。
※設計ツールにログインしているユーザの権限によって以下のとおり操作が制限されます。
- テナント管理者:
project
スコープのボットを削除できます。 - テナント管理者より下:ボットを削除できません。
使用方法
<sraix>
のname
属性に、<learnf>
で学習時に指定したname
を指定するとLearnボットを呼び出せます。
ポイント
- 複数のユーザでLearnボットを共有するため、ユーザ間で学習内容を共有できます。
- Learnボットはフロントボットではないため、システム応答に直接影響しません。
- Learnボットの予期せぬ応答を避けるため、フロントボットにNGワードを設定することをおすすめします。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
<category> <pattern>空は青い</pattern> <template> 私は空の色が青いことを覚えました。 <learnf name="skyBot"> <category> <pattern>空の色</pattern> <template> 空の色は青です。 </template> </category> </learnf> </template> </category> <category> <pattern>空の色</pattern> <template> <sraix botid="skyBot">空の色</sraix> </template> </category> |
対話例
1 2 3 4 |
user : 空は青い bot : 私は空の色が青いことを覚えました。 TRUE user : 空の色 bot : 空の色は青です。 |
属性
名称 | 型 | 必須 | デフォルト | 説明 |
---|---|---|---|---|
name |
string |
○ | – | 学習を行う対象のLearnボット名を指定します。 |
scope |
string |
– | project |
Learnボットのアクセススコープを設定します。 |
name
学習を行う対象のボット名(プロジェクトIDは含みません)を指定します。
すでに存在するLearnボットのIDを指定した場合は、そのボットの学習内容が追加されます。
また、存在しないボットIDを指定した場合は新たにLearnボットを作成します。
ご注意
scope
属性にproject
を指定した場合、プロジェクト内のボット(非Learnボット)と重複するボット名は指定できません。
scope
Learnボットのアクセススコープを設定します。
scope
属性には<learnf>
タグで生成・更新するLearnBotが持つアクセスレベルを指定します。
public
… すべてのプロジェクトのボットから<sraix>
でアクセス可能。project
… Learnボットを作成したBotが所属するプロジェクトのボットのみアクセス可能。
ご注意
scope
属性にproject
を指定した場合、プロジェクト内のボット(非Learnボット)と重複するボット名は指定できません。public
とproject
の2つのスコープでLearnボットを作成した場合、プロジェクト内からはproject
スコープ、プロジェクト外からはpublic
スコープのLearnボットにのみアクセスできます。(学習はプロジェクト内から両方に行えます)
子要素
名称 | 必須 | 説明 |
---|---|---|
category |
○ | シナリオの対話ルール1単位を定義します。 |