Fin Procedures は、Finが複雑な問い合わせを処理するための明確で再現可能なフローを設計できるようにします。構造はStepsで定義し、Finの機能はToolsで拡張し、動作はGuidanceで形作ります。
情報収集、分岐ロジック、外部システムへの接続、またはチームメンバーへの引き継ぎのいずれであっても、Proceduresにより会話の開始から終了までのFinの扱いを完全に制御できます。
注意:Proceduresを作成するには「can manage workspace data」の権限が必要です。
ヒント:Community ExpertsおよびIntercom Solutions ArchitectsとProcedures Meetup Office Hoursでつながりましょう。2週間ごとに開催されるこれらのセッションでは、Fin ProceduresやData connectorsの設定と最適化を支援する実践的なリアルタイムサポート(ライブQ&A含む)を提供します。
開始する
新しいFin Procedureを作成するには、ワークスペースでFin AI Agent > Train > Proceduresに移動します。+ New procedureをクリックし、お好みの作成方法を選択してください:
オプション1:AIに手順を作成させる
既にプロセスを思い描いている、または文書化されている場合はこれが最速の方法です。
Let AI draft your procedure を選択します。
開始点を選択してください:
Describe your process:プロセスを自然言語で記述するか、既存の手順書や標準作業手順書(SOP)をそのままテキストボックスに貼り付けてください。Finは自動的に適切な手順フォーマットに構成します。コンテキストとして含めるattributesやData Connectorsを選択できます — すべてを渡す代わりに特定のコネクタを選択でき、attributesは単なるプレースホルダーではなくコンテキストとして機能します。
Choose a template:業界別テンプレート(例:SaaS、Ecommerce、Fintech、Gaming)を選び、「サブスクリプションをキャンセルまたは一時停止する」のような一般的なシナリオを選択します。コンテキストとして含めるattributesとData Connectorsを選択できます — すべてを渡す代わりに特定のコネクタを選択でき、attributesは単なるプレースホルダーではなくコンテキストとして機能します。
Continue をクリックします。Finはあなたの入力を分析し、past customer conversations、existing documentation、およびData Connectorsを検索してワークスペースコンテキストにドラフトを定着させます。
明確化の質問に答えて、Finが特定のロジックや指示を詳述できるように手助けしてください。これらは任意ですが、情報を提供するとより正確なドラフトが得られます。
Finがドラフトを生成すると、フィードバックモーダルが表示されます。Keepを選択してドラフトを受け入れるか、Clearで破棄してやり直すか、またはTry againで再生成してください。
ヒント:既にステップごとの指示や文書化されたプロセスがある場合は、Option 1: Let AI draft your procedureを使用してください。既存の指示を貼り付けるだけで、Finが適切な手順フォーマットに構成します — 各ステップを手動でフォーマットする必要はありません。どのData Connectorsを本番前にセットアップする必要があるかを特定するために、まずユースケースをドラフトすることもできます。
オプション2:ゼロから作成する
手動でProcedureを作成したい場合はこちらを使用します。
Create from scratch を選択します。
プロシージャに名前を付け、エディタに入り手順を手動で追加し始めます。
ヒント:最初のFin Procedureを作成するにはクイックスタートガイドを読んでください。
Finにこの手順をいつ使うか伝える
エディタの上部にWhen to use this procedureセクションがあります。これはFinにこのProcedureを正確にいつ利用するかを伝えるために重要です。Finが意図したときだけトリガーされるようにするには、明確なトリガーロジックと高品質の会話例を提供する必要があります。この2つの要素が連動して信頼性を高め、誤検出を減らします。
1. 「When to use this Procedure」のロジックを書く
この手順を開始すべき(およびすべきでない)状況を正確に記述してください。強力なトリガーには具体的な条件と除外が含まれます。
高品質なトリガーロジックの例:
When to trigger this procedure: ソフトウェアが正しく動作していない、または予期せぬ動作をしていると顧客が報告したときにこの手順をトリガーします。
Inclusion criteria (Trigger if):
顧客が特定の技術的問題やエラーを説明している。
顧客が機能が壊れていると述べている。
顧客がbug、glitch、または故障について言及している。
Exclusion criteria (Do NOT trigger if):
顧客が新機能を要求している。
顧客がアカウント関連の質問(例:パスワードリセット)をしている。
明確で包括的なトリガーは、Finが意図した顧客の意図に対してProcedureを起動し、無関係な問い合わせで発火するのを防ぎます。
2. 例でFinをトレーニングする
ロジックを書いたら、会話例をFinに提供してください。
Train Fin on examples ボタンをクリックします。
When to use:この手順が適切なフレーズやシナリオの例を提供してください。
When NOT to use:誤検出を防ぐために類似しているが無関係な問い合わせの例を提供してください。
Note:これらの例は「パスワードリセット」と「一般的なログインポリシー情報」を区別するようAIを訓練するために重要です。
手順トリガーの仕組み
Finは各顧客メッセージを評価して、手順のトリガー記述に一致するかどうかを判断します。会話が開始したからといって手順が自動で開始されるわけではありません。Finが顧客の意図が手順の目的に一致すると確信したときに開始します。テスト時は、短く曖昧な開始メッセージではなく、「When to use this procedure」の指示で明確に意図を表現するメッセージを送ってください。
手順に指示を追加する
手順がトリガーされたときにFinに何をすべきかをinstructionsで伝えることができます。これらの指示に加えて、条件などの決定論的な制御や、外部データにアクセスしたりattributesを更新したりするためのツールを有効にすることもできます。
Feature | 何をするか | 使用タイミング |
指示 | デフォルトのブロック。自然言語による平易な指示。 | ほとんどすべての場合に使用します。 "顧客にメールアドレスを尋ねてください。" |
条件 | 分岐ロジックを追加します(IF / ELSE)。 | フローを大きく変える主要で相互に排他的な経路に使用します(例:"IF 商品が壊れている場合はXを実行。ELSEはYを実行。")。
小さなバリエーションや軽微な明確化には、分岐の代わりに自然言語の指示を使用してください。これにより手順が簡素になり、FinのAIが会話をより自然に処理できます。例として、WhatsAppとWebで異なるメッセージを送るためにcurrent channelで分岐したり、リードとusersを区別して処理するためにuser roleで分岐します。 |
サブ手順を実行 | サブ手順を実行します。 | 共通フロー(例:"身元確認")を再利用するため、またはメインフローから隠したい複雑なフローのため。 |
終了 | Procedureを直ちに終了し、Finに戻します。各Endステップには設定可能な終了メッセージがあります — カスタムメッセージを書くか、何も送信しないよう空にするか、デフォルトのままにできます。また、Endステップ到達時の終了アクションとして、No action(会話は開いたまま)、Close conversation(会話を終了)、またはClose conversation and prevent replies(会話を終了し顧客が返信できない)を選択できます。 | 特定の目標や論理条件が満たされたらProcedureを停止して、Finが手順を継続しないようにするために使用します。 |
データコネクタを呼び出す | 接続されたアプリ(Shopify、Stripeなど)からライブデータを取得します。 | ステップ内で注文状況や残高を確認する必要があるとき。 |
属性を読み取る | 既存の顧客データを照会します。 | ステップ内で顧客のプラン、ID、役割、または現在のチャネルを確認するために。 |
属性を更新する | 顧客が提供した情報を属性に保存します | ステップ内で後で参照するために回答を記録するため。 |
チームに引き継ぐ | 会話を意図的にチームまたは同僚に引き継ぎます。 | ステップ内でボットが問題を解決できないとき。これは、Deployセクションで定義されたFinブロックに続くworkflowで定義されたエスカレーションパスに従います。 |
Webhookを待つ | 手順を一時停止し、外部システムがPOSTでコールバックするのを待ってからFinが再開します。会話ごとに一意のコールバックURLを生成します。 | ステップ内で、身元確認、支払い承認、または承認フローなど、非同期でリクエストを処理するサードパーティシステムと統合する場合に使用します。 |
重要:
ネスト不可: Conditionステップを他のConditionの内側にネストすることはできません。
単一の論理タイプ: 単一のステップ内でコード条件と自然言語条件を混在させることはできません。
サポートされていない属性: 日付や小数点などの属性は現在条件で参照できません。
サブ手順
再利用: 同じ親手順内でサブ手順を複数回再利用できます。
スコープ: サブ手順は現在ローカルであり、他の無関係な手順から呼び出すことはできません。
データコネクタの操作
属性スコープ: Data Connectorの出力はProcedure内のステップ出力として利用できますが、Inboxの会話属性としては表示されません。コネクタの返した値を会話属性として永続化するには、Handoff to workflowステップを使用し、Workflow内で属性を設定してください — Procedureはハンドオフ後に再開しません。
常にコネクタの失敗を処理する: Data Connector呼び出しごとに、エラーや空の応答を処理するためのCondition stepを追加してください。フォールバックがないと、コネクタが静かに失敗した場合にFinが予期せずエスカレートする可能性があります。
詳細:
ガイダンスを追加
Procedureを実行する際にFinに対して顧客とのやり取り方法に関する具体的なガイダンスを与えます。ガイダンスを追加するには、Fin Procedureを開き、Instructionsエディタの右上にあるGuidanceをクリックしてください。
どのworkspace level guidanceをこの手順に適用するか選択します。Finは選択されたすべてのガイダンスを組み合わせます:
コミュニケーションスタイル
文脈と明確化
引き継ぎとエスカレーション
その他のガイダンス
この手順にのみ適用されるカスタムの手順別ガイダンスを作成することもできます。Finはこれを選択したワークスペースレベルのガイダンスと組み合わせます。例:「顧客が先に言及しない限り、返金の話題を持ち出さないでください。」
注意:手順内でワークスペースガイダンスを使用する際は、これら3点を念頭に置いてください:
ガイダンスは上書きではなく加算されます。 ワークスペースガイダンスが有効な場合、Finはそれをあなたが作成した手順別ガイダンスと組み合わせます。一方が他方を打ち消すことはありません — 両方が同時に適用されます。
広範なワークスペースルールは手順途中で発動する可能性があります。 Finは各応答を生成する際にワークスペースガイダンスを評価するため、広いルールはあなたの手順が意図したよりも早く顧客と情報を共有することがあります。ルールを手順コンテキスト外でのみ適用したい場合は、対象オーディエンス条件でスコープを狭めるか、そのロジックを手順内の明示的なステップとして移動してください。
Finの組み込みエスカレーションは常に適用されます。 顧客が人間を求めた場合、強い不満や怒りを示した場合、または反復的なループに陥っている場合にトリガーされるFinのデフォルトのエスカレーション動作は、ガイダンス設定に関係なく手順内でも常に適用されます。これはワークスペースレベルのEscalation GuidanceおよびEscalation Rulesとは別で、これらはGuidanceパネルで明示的に有効にする必要があります。
終了メッセージを設定する
デフォルトでは、手順終了時にFinは「他にお手伝いできることはありますか?」を送信します。各Endステップごとにこのメッセージをカスタマイズしたり、グローバルデフォルトを設定したり、何も送信しないように空のままにすることができます。
各Endステップには設定可能なメッセージがあります。Endピルをクリックするとサイドパネルが開き、リッチテキストや@attributeメンションを使ってカスタムメッセージを作成できます。
手順が自然に完了したとき(Endステップに到達しない場合)に既定メッセージを設定するには、手順の設定ダイアログを開き、終了メッセージタブに移動してください。
指示ステップ内にも@Endと入力してEndステップを追加できます。Endステップに到達したときの挙動を制御するには、Endピルをクリックしてサイドパネルを開き、終了アクションを選択してください:
アクションなし:手順終了後も会話はオープンのままになります。
会話を閉じる:Endステップに到達すると会話が閉じられます。
会話を閉じ、返信を禁止する:会話は直ちに閉じられ、顧客はそれ以上返信できなくなります。
注意:終了メッセージは自動ローカリゼーションをサポートします — ワークスペースの許可された言語に翻訳され、用語集設定を尊重し、顧客の会話ロケールで提供されます。
チャネルを選択
Web、iOS、Android、Facebook、WhatsApp、Instagram、SMS、Email、またはSlackなど、特定のチャネルで手順を実行するには、手順エディタ内のオーディエンスターゲティング設定を使用してください。チャネルドロップダウンメニューで目的のチャネルが選択されていることを確認してください。
特定のオーディエンス向けに手順を実行するには、手順エディタ内のオーディエンスターゲティング設定を使用してください。Audiencesドロップダウンメニューで目的のオーディエンスが選択されていることを確認してください。
手順をテストして検証する
手順を公開する前に、意図した通りに動作することを確認する必要があります。エディタ上部のテストボタンをクリックして、2つのテスト方法にアクセスしてください:
プレビュー
プレビュータブでは、顧客のようにFinと対話できます。トーン、挨拶、会話の流れを確認するために使用してください。
シミュレーション
シミュレーションタブでは、指示内のさまざまなロジックパスを自動的にテストできます。これにより、手順を実際の顧客に公開する前にFinが意図した通りに動作するか確認できます。
プレビューとシミュレーション — どちらを使うべきですか? プレビューは顧客向けの完全な体験を表示します — 手順が公開中に使用すると実際の顧客にメッセージが表示される可能性があります。シミュレーションは顧客向けの出力がないバックグラウンドで手順を実行するため、公開前にロジックを検証する最も安全な方法です。
シミュレーションタイプを選択:
ハッピーパス:FinのAIが標準的なシナリオを自動提案し、機能の動作をすばやく把握できるようにします。
カスタムシミュレーションも作成できます:エッジケースや技術的な統合をテストするために、次を定義して特定のシナリオを作成してください:
コンテキスト:開始する顧客メッセージと会話の進行方法を設定します。
モックデータ:カスタム入力とモックのData Connectorレスポンスを定義して、Finがライブデータ(例:Stripeからの「Payment Failed」レスポンス)をどのように扱うかをシミュレートします。
成功基準:どのツールがトリガーされるべきか、Finが提供すべき情報など、期待する正確な成果を指定してください。
実行とレビュー:
シミュレーションを実行して、Finがステップを実行し、モックAPIをトリガーし、ロジックに従う様子を確認してください。
合格:シミュレーションはすべての定義された基準を満たしました。
不合格:シミュレーションは失敗しました。シミュレーションをクリックして、Finが指示からどの点で逸脱したかを正確に確認してください。
結果に満足したら、公開をクリックして手順を顧客に利用可能にします。
バージョン履歴を表示
手順を公開するたびに、そのバージョンが保存され、バージョン履歴サイドパネルからアクセスできます。これにより、過去のドラフトのノイズなしでFinに影響を与えたすべての変更の記録が得られます。
サイドパネルに表示されるもの:
以前に公開されたすべてのバージョン
現在の公開バージョン
アクティブなドラフト(存在する場合)
サイドパネルの任意のバージョンをクリックすると、そのバージョンの読み取り専用ビューがエディタで開きます。編集に戻るには、編集に戻るボタンをクリックしてください。
注意:履歴ドラフトはバージョン履歴に表示されません — 公開されたバージョンのみが記録されます。
手順間を賢く切り替える
有効にすると、Finは顧客の意図が変化し、別の手順がより適切と判断した場合に、現在の手順から別の公開中の手順へ自動的に切り替えることができます。
顧客の変化するニーズに自動で適応:
Finは会話とProcedure Trigger Descriptionsをレビューして、手順を切り替えることで顧客にとってより良い対応になるか判断します。
必要に応じて確認の質問を行う:
複数の手順が顧客の状況に適している場合、Finは明確化のための質問を行い、最適な選択肢を選ぶことがあります。
Help Centerを優先:
Finは顧客の質問に対処する際、Agentic SwitchよりもHelp Centerのコンテンツを優先します。
注意: 手順で有効になっている場合、Finはこの手順から他の任意のライブ手順に切り替えることができます。移動先の手順にAgentic Switchの有効化は必要ありません。手動で手順を切り替えるには、@Switchコマンドを引き続き使用できます。














