トピック毎に対話シナリオをまとめたい

ユーザとの話題によって、利用できるカテゴリーを制限する方法をご紹介します。

  • 同一の<pattern>を持つカテゴリーが複数存在しても、話題毎に利用するカテゴリーを制御することができます。
  • 話題が限定されるため、カテゴリーの<pattern>を簡略化することができます。
    (例:「晩御飯は*が食べたいな」 → 話題が晩御飯の場合は「*が食べたいな」)

実装方法

話題毎に<topic name="(任意の名称)">を作成し、カテゴリーをその配下に移動してください。
話題が決定、または切り替わる段階で、<template>内で<set name="topic">(存在する名称)</set>を記述します。

xAIML

実行結果

また、<srai>を使用して、<topic>を跨いで発話を生成することができます。

xAIML

実行結果