条件付きアクション

デフォルトでは、ハンドブックは LLM を使用して会話を制御し、アクションを実行してエンドユーザーに応答します。 エージェントの動作をより明示的に制御する必要がある場合は、 このガイドで説明する フロー または条件付きアクションを使用できます。

条件付きアクションは、ハンドブックのオプションの構成です。 特定のメッセージで応答する、外部ツールを呼び出す、別のハンドブックを呼び出す、その他の指定されたアクションを実行するなど、特定のアクションを呼び出す会話トリガーと条件を設定できます。

トリガー

条件付きアクションが適用可能かどうかを判断する最初のステップとなるトリガーを定義できます。 トリガーのタイプと、各タイプに固有のトリガーについて説明します。

  • ライフサイクル ステージ
    • ハンドブックの開始: ハンドブックが最初に開始されたときにトリガーされます。
    • LLM が次のアクションを決定する前: LLM が次のアクションを予測するたびにトリガーされます。
    • LLM が次のアクションを実行する前: LLM がアクションを実行するたびにトリガーされます。
  • イベント
    • カスタム イベント
    • ユーザーからの入力なし

条件

トリガーが発生したら、2 つ目の手順として、必要に応じて指定された条件を評価します。条件は、フロールートで使用される条件構文と同じ 条件構文 を使用して指定します。

条件が指定されていない場合、トリガーのみを使用してアクションを開始します。

次の構文を使用して、パラメータと最後のアクション/次のアクションを参照できます。

  • セッション パラメータ
    • $session.params.PARAMETER_NAME
  • ハンドブックの入力パラメータ
    • $playbook.input.INPUT_FIELD_NAME
  • 最後のアクション(以前に実行されたアクション)
    • $last-action.name
    • $last-action.input.INPUT_FIELD_NAME
    • $last-action.output.OUTPUT_FIELD_NAME
    • $last-action.status
  • 次のアクション(LLM が予測した次のアクション)
    • $next-action.name
    • $next-action.input.INPUT_FIELD_NAME

システム関数を使用することもできます

例:

  • $session.params.current_user = null
  • $last-action.name = "query_order"
  • $last-action.name = "query_order" AND $last-action.status != SUCCESS
  • $last-action.name = "query_order" AND $last-action.output.orders = null

操作

トリガーとオプションの条件評価が発生したら、次のアクションが実行されるように構成できます。

  • エンドユーザーにレスポンスを提供する: テキスト、条件付きレスポンス、カスタム ペイロード、 録音済み音声。 テキストを指定する場合は、[pause][pauseShort][pause long] を挿入して、エージェントの音声に一時停止を挿入できます。 例: How can I help you today? [pause long] I can help with...
  • 次の LLM アクションをオーバーライドする: ツールの使用、プレイブックの呼び出し、プレイブックの完了、フローの呼び出し、 プレイブックの遷移、フローの遷移。
  • 音声設定を変更する: モデル名、音声なしのタイムアウト、エンドポイントの感度、適応。
  • 割り込みを有効にする
  • 部分的な回答の再生をキャンセルできるようにする
  • Call Companion SMS を送信する
  • DTMF を有効にする: テレフォニー統合用の DTMF をご覧ください