learnf

<learnf>はユーザとの対話内容をもとに、自然対話プラットフォームのLearnボットを学習させることができます。
学習が成功した場合はTRUE、何らかの理由で失敗した場合はFALSEを出力します。

SUNABAでは<learnf>をご利用になれません。

学習方法

学習は子要素の<category>によって行い、シナリオ開発者は自由に学習内容を記述できます。
また、学習内容の<category>において<learnf>の外の値を<get><star>などで引用した場合は、<eval>で囲み学習時にリテラル化する必要があります。

学習内容を更新する場合は、更新対象と同じpatternで初回と同様に学習してください。

学習内容をクリアする場合は、設計ツールの管理者ページにある「learnボット管理」でクリアしたいボットを削除してください。
※設計ツールにログインしているユーザの権限によって以下のとおり操作が制限されます。

  • テナント管理者:projectスコープのボットを削除できます。
  • テナント管理者より下:ボットを削除できません。

使用方法

<sraix>name属性に、<learnf>で学習時に指定したnameを指定するとLearnボットを呼び出せます。

ポイント
  • 複数のユーザでLearnボットを共有するため、ユーザ間で学習内容を共有できます。
  • Learnボットはフロントボットではないため、システム応答に直接影響しません。
  • Learnボットの予期せぬ応答を避けるため、フロントボットにNGワードを設定することをおすすめします。

対話例

属性

名称 必須 デフォルト 説明
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ボット)と重複するボット名は指定できません。
  • publicprojectの2つのスコープでLearnボットを作成した場合、プロジェクト内からはprojectスコープ、プロジェクト外からはpublicスコープのLearnボットにのみアクセスできます。(学習はプロジェクト内から両方に行えます)

子要素

名称 必須 説明
category シナリオの対話ルール1単位を定義します。