メインコンテンツにスキップ

Fin手順のシミュレーションを実行する

シミュレーションを使って手順の指示を検証し、自信を持ち、顧客に影響が出る前に問題を発見する方法を学びましょう。

シミュレーションはFin手順を検証し、自動化への自信を築き、顧客に影響が出る前に問題を発見することを可能にします。会話全体をモデル化することで、キャンセルや返金などの大量または複雑なシナリオを確実に処理できるようチームを支援します。

時間のかかる手動チェックに代わるよう設計されたシミュレーションは、ビジネスロジックの進化に伴うFinの挙動の問題や徐々の変化を特定するのに役立ちます。


シミュレーションへのアクセス

シミュレーションはProcedureのテストパネル内にあります。アクセス方法は以下の通りです。

  1. テストしたいProcedureを開きます。

  2. キャンバスの右上にあるテストをクリックします。

  3. 右側のパネルでシミュレーションタブを選択します。

    シミュレーションはインテントマッチングをバイパスします。プレビューやライブ会話とは異なり、シミュレーションは「このProcedureを使う時」の指示をチェックせず、Procedureが既にトリガーされていると仮定して直接実行します。これにより、シミュレーションは実行ロジックを単独でテストするのに最適です。

    重要:

    • プレビューはinbox内にテスト会話を作成し(レポートには含まれません)、実際の顧客には何も送信しません。デフォルトではData Connectorsはサンプルデータを返します。実際のAPI呼び出しは、特定のユーザーとしてテストし、プレビュー設定で「トリガー時に実際のユーザーデータにアクセス・更新」を選択した場合にのみ行われ、その場合Procedureが行うアクション(返金や記録更新など)はそのユーザーに対して実行されます。テストユーザーアカウントを使用してください。

    • シミュレーションは外部システムを呼び出しません。Finはあなたが定義したテスト値を使用するため、ライブ前にロジックを検証する最も安全な方法です。

    素早いスポットチェックにはプレビューを使用し、公開前には必ずシミュレーションを実行してください。


シミュレーションの作成

シミュレーションは、AI生成の提案を使って素早く開始する方法と、シナリオを手動で定義して完全にコントロールする方法の2通りで作成できます。

  • AI生成シミュレーション:指示に基づき、一般的または予想される顧客シナリオを素早くカバーするために使用します。Fin AIは時間を節約する「出来合い」のスターターテストを生成します。

  • 手動シミュレーション:データの正確な制御、特定のエッジケース、またはロジックの特定の分岐が必要な場合に使用します。

AI生成シミュレーション

指示に基づき、Fin AIは「出来合い」のシミュレーションを素早く作成するためのスターターテストを生成します。

  1. Procedureの右側パネルにあるシミュレーションタブを開きます。

  2. これらの指示に提案されたの下で、提案されたシナリオのリスト(例:「全キャンセルリクエスト」)を確認します。

  3. 提案の横にある再生アイコンをクリックして即座に実行します。

  4. シミュレーションが作成されるか提案から受け入れられると、リストに表示されます。その後、すべて実行をクリックして保存したすべてのシミュレーションを一度に実行できます。

手動作成シミュレーション

Procedureの指示に基づき、特定のエッジケースをテストするためにシミュレーションをゼロから作成することもできます。

  1. シミュレーションタブで+ 新規をクリックします。

  2. シミュレーション名:シミュレーションにわかりやすいタイトルを付けます。

  3. としてシミュレート:特定のユーザーまたはブランドを選択してパーソナライズをテストします。ワークスペース内の実際のusersのドロップダウンリストから選択できます。

  4. 顧客の最初のメッセージ:顧客が送信する最初のメッセージを入力します(例:「注文の助けが必要です」)。エラーのスクリーンショットなどの画像を添付して、Finが視覚的コンテキストをどのように処理するかをテストすることもできます。

  5. 追加の詳細:顧客の状況や取った特定の行動に関するガイダンスを提供します。

チャネルを選択

シミュレーションでは、Finがこのシミュレーションで使用するチャネルを選択できるため、Finの挙動をテストできます。シミュレーションを実行する前に、チャネルのドロップダウンでMessengerとEmailを切り替えてください。

注意:Finはチャネルによって挙動が異なります。Emailでは、複数の情報を1つの応答にまとめて送信し、複数のメッセージを送ることはありません。ガイダンスやコンテンツターゲティングもチャネルごとに設定可能で、例えばEmailの応答はよりフォーマルなトーンや特定の導入文を含めるよう設定できます。

利用可能なデータを定義

Finが利用可能な顧客データセクションでは、テスト中にFinがアクセスできるデータを定義できます。これにより、曖昧な説明に頼らず正確なデータ値でテストできます。

  • シミュレーション時間:シナリオが「いつ」起こっているかを定義します。特定の日付と時間を設定することで、顧客が30日間の返金期間内にいるかどうかなど、時間に敏感なロジックをテストできます。

  • 属性とData Connectors:このセクションはProcedureで参照されている属性で事前入力されます。これらの値を更新して(例:People.Planを「Pro」に設定)、異なる分岐結果をテストします。

注意:シミュレーションを正確に実行するには、Finが「知っている」べきタイミングに基づいてデータを配置してください。

  • 属性を使用:会話開始時にFinが既に情報を知っている場合(例:顧客の現在のPlanや登録日)。

  • 追加の詳細を使用:情報が会話の途中で顧客から提供される場合(例:顧客がフォローアップで「注文ID」を提供)。これにより、Finがそのデータを属性に正しくキャプチャし保存するかをテストできます。

重要:シミュレーション時間は自然言語の日付ロジックにのみ影響し、Pythonコードの条件には影響しません。Procedureが自然言語条件(例:ステップ指示に書かれた日付チェック)で日付を評価する場合、Finの推論は設定したシミュレーション時間を使用します。しかし、分岐条件がdatetime.datetime.now()などのPythonコードの場合、その呼び出しは常に実際の現在システム日付を返します。つまり、コードベースの日付分岐はシミュレーション時間の設定でテストできず、常に今日の実際の日付で評価されます。

コードベースの日付条件を異なる日付でテストするには、検証したい実際のカレンダー日付(例:4日、5日、6日)で別々にシミュレーションを実行するか、条件をPythonコードではなく自然言語の指示に書き換えてください。Finの推論はシミュレーション時間を尊重し、分岐を制御します。

注意:Finが利用可能な顧客データセクションは、Procedureの指示やコードブロックで明示的に参照されている属性のみを表示・保持します。+ 属性を追加ボタンで手動で属性を追加しても、その属性がProcedure内でどこにも参照されていなければ保存されず、保存後に消えます。カスタム値を永続化するには、まずその属性がProcedure内で使用されていることを確認してください。

Finの挙動を評価する

テストが合格するために満たすべき条件を定義します。+ 条件を追加をクリックして選択してください。

  • Finの応答:会話中にFinが言うべきこと(または言うべきでないこと)を指定します。

  • Data connector:コネクターがトリガーされたか、されなかったか、または正確にX回トリガーされたかを検証します。

  • 指示の結果:会話が特定の結論に達したか(終了、チームメイトへの引き継ぎ、別のProcedureへの切り替えなど)を確認します。

設定が完了したら、保存をクリックします。

注意: 保存をクリックすると、FinはAIを使ってシミュレーションフォームをレビューします。指示が不明確だったり成功基準が一貫していない場合、より正確な結果を得るための改善案が表示されます。

シミュレーションカバレッジのベストプラクティス

シミュレーションを最大限に活用するには、テストスイートを以下の原則に基づいて構成してください:

  • シミュレーションごとに1つの分岐をテストします。 手順に複数の経路を持つ条件やサブ手順がある場合は、それぞれの分岐ごとに別のシミュレーションを作成してください。これにより回帰安全網が構築され、将来の編集で特定の経路が壊れた場合にすぐに検出できます。

  • Data Connectorsの成功パスと失敗パスの両方をカバーします。 コネクターが有効なデータを返すシミュレーションと、何も返さないか失敗するシミュレーションをそれぞれ実行してください。これにより、フォールバックロジック(例:空の応答を処理する@Conditionステップ)が正しく機能することを検証します。

  • 変更を公開する前にすべてのシミュレーションを実行します。 手順を編集した後、すべて実行をクリックして全テストスイートを再実行してください。新たに失敗したシミュレーションは、編集による回帰を示します。

  • 説明的なシミュレーション名を使用します。 各シミュレーションには、そのシナリオを表す名前を付けてください(例:「全額返金 — 30日以内」や「キャンセル — 注文が見つかりません」)。これにより、結果を確認する際にどのテストがどの経路をカバーしているかがわかりやすくなります。


実行と結果の確認

テストを実行すると、右側のTestsパネルにステータスインジケーター付きで表示されます:

  • 実行中: テストが現在実行されています。

  • 合格: テストは実行され、すべての定義された成功基準を満たしました。

  • 失敗: テストは実行されましたが、定義された成功基準を満たしませんでした。

  • キュー待ち: テストは開始されましたが、前のシミュレーションの終了を待ってから実行されます。

結果を調査するには、会話を見るをクリックしてください。これにより、シミュレートされた顧客とFin間の完全なやり取りの記録が開き、フローの詳細やテストが合格または失敗した理由を簡単に確認できます。


シミュレーション使用制限

毎月実行できるシミュレーションの数には制限があります。この制限はワークスペース単位で適用され、毎月の初日にリセットされます。

各ワークスペースには月ごとのシミュレーション実行数の割り当てがあります。この割り当てはワークスペースの会話量セグメントに基づき、大規模なユーザーほど多くの割り当てを受けます。

シミュレーションの割り当てはワークスペースの会話量に基づいています。

  • ワークスペースは前月の会話数を使ってセグメントに割り当てられます。

  • セグメントは毎月再評価され、割り当ては最新の月の会話量を反映します。

  • 会話量が増減した場合、次の月次サイクルでシミュレーションの割り当てが変わることがあります。

会話量セグメント

月ごとのシミュレーション制限

1K未満

250

1K〜15K

1,000

15K〜100K

1,750

100K〜1M

5,000

1M以上

12,500

使用状況の監視

テスト管理を支援するため、FinはSimulationsタブ内に視覚的なインジケーターを提供します:

使用警告

ワークスペースが月間制限の80%に達すると、黄色の警告バナーが表示されます。現在の使用状況(例:「85/100」)とリセット日時が表示されます。

制限到達

月間制限の100%に達すると、赤いエラーメッセージが表示されます。次の月の開始までシミュレーションを実行できなくなります。

注意:制限に達しても、会話を見るをクリックすれば過去のシミュレーション結果や記録を確認できますが、実行およびすべて実行ボタンは無効になります。


よくある質問

なぜ手動テストではなくシミュレーションを使うのですか?

手動テストは迅速なスポットチェックや設定確認に適していますが、シミュレーションは大規模に手順を検証し、Finが複雑でリスクの高いシナリオでも確実に動作することを保証します。毎回のリリース前に実行することで予期せぬ動作を早期に発見できます。

シミュレーションが失敗したらどうなりますか?

シミュレーションされた会話全体を確認してFinが期待通りに動作しなかった理由を理解し、手順を調整してシミュレーションを再実行できます。顧客への影響はありません。

Finが問題を解決したのにシミュレーションが「失敗」と表示されるのはなぜですか?

これは通常、成功基準が厳しすぎる場合に起こります。例えば「注文IDを尋ねる」ことを要求しているのに、Finが自動的にIDを見つけて質問をスキップすると、テストは失敗します。最終結果(例:「手順完了」)に焦点を当て、中間ステップの指定は避けてください。

シミュレーションは手順とは別に課金されますか?

シミュレーションはProceduresに含まれており、別途課金されません。シミュレーション実行による追加料金は発生しません。

なぜシミュレーション実行に制限があるのですか?

すべてのシミュレーション実行には、正確なAI予測を生成するためのリソースが必要です。標準的なユースケースでProceduresを自由にテストできるように、月間の使用枠を提供し、過度の使用によるコストの暴走を防ぎます。

1か月に何回シミュレーションを実行できますか?

月間のシミュレーション実行枠は、前月のワークスペースのconversationボリュームに基づきます。制限はワークスペース単位で適用され、毎月1日にリセットされます。

Conversationボリュームセグメント

月間シミュレーション制限

1K未満

250

1K〜15K

1,000

15K〜100K

1,750

100K〜1M

5,000

1M以上

12,500

シミュレーション制限はいつリセットされますか?

シミュレーションの使用枠は、加入日や使用回数に関係なく、毎月のカレンダー月の初日にリセットされます。未使用の実行回数は繰り越されず、毎月新たに開始されます。

シミュレーション制限を増やせますか?

シミュレーション制限は、ワークスペースのconversationボリュームに基づいて自動設定され、毎月の初めに再評価されます。conversationボリュームが増加すれば、次の月間サイクルで使用枠が増えます。追加の実行回数を手動で購入したり、制限をこの階層システム外で増やすことはできません。月間制限に達した場合でも、過去のシミュレーション結果やトランスクリプトは閲覧可能ですが、RunおよびRun allボタンは使用枠がリセットされるまで無効になります。

こちらの回答で解決しましたか?