Tips

SUNABA TIPS

SUNABAに関するTIPSをご確認いただけます。

 

xAIML基本編

内容 キーワード
基本の対話シナリオ <pattern><template><that>
システムから話しかける <pattern>init</pattern>
ユーザ発話の曖昧な表現をマッチングさせるには <pattern level="...">
<pattern partial="true">
ユーザ発話がどこにもマッチしない場合 <pattern>*</pattern>
対話中に一時的に値を保持・参照したい <set name="_var_...">
<get name="_var_...">
対話が終わった後も値を保持して、次の対話でも使いたい <set name="...">
<get name="...">
あらかじめ定義してあるボットの情報を使いたい ボットプロパティ、<bot name="...">
ユーザ発話から情報を抜き出す <star>
システム発話には表示させずに処理したい <think>
条件によって処理を分岐させたい <condition>
ランダムに返答したい <random><li>
条件によってランダム返答の内容を制限したい <conditional_random><li>
繰り返し処理をしたい <loop><condition>
よく使う処理をまとめたい <srai>
トピック毎に対話シナリオをまとめたい <topic name="...">
<set name="topic">...</set>
コメントをいれたい <!-- ... -->
システム発話の表示を整えたい <br>
ボット間でデータを共有したい <predstore>
xAIMLの体裁を整えたい インデント、タブ文字

xAIML応用編

内容 キーワード
どんな発話でも必ず通る前処理を用意したい <topic name="_">
<pattern name="_">
時間に応じた挨拶をしたい <condition name="time_period">
乱数を作りたい <date><calc>
マッチングに優先度をつけたい <topic>
<srai>による関数的な使い方 <srai>
動的に変数を作成したい <set>
レスポンスにコマンド情報を含めたい <command>
外部データを使用して、値を置換したい <map>
保存したデータに有効期限を設定したい <date_span><predstore>
少しでも処理時間を短くしたい <srai> <sraix>
<set name="_var_...">
<template> <li>
小数点以下を切り捨てたい <calc>
システムが自動設定した変数を使用したい システムPredicate
意図しないパターンにマッチしてしまう <pattern level="...">
計算したい <calc>
現在日時を取得したい <date>
日時の計算をしたい <date_add> <date_span>
一つ前の発話内容を利用したい システムPredicate(that
読みと表示文を出しわけたい <utterance> <ub> <ut>
出力制限を行いたい <template max_output="...">
<template suppression_period="...">
<li max_output="..."> 
<li suppression_period="...">
タイムアウト時間をクライアントに伝えたい <template timeout="...">
レスポンスに発話終了フラグを付与したい <template talkend="...">
分岐処理の条件式で正規表現を使いたい <li regex="...">
Yes No 診断のようなシナリオを作りたい <pattern>
発話を厳密にマッチングしたい <pattern level="exact">
xAIMLの拡張内容を知りたい 独自拡張
ボット同士で連携したい <sraix>