Proceduresは、破損した注文のクレームやアカウントのトラブルシューティングなど、Finが複雑な問い合わせを最初から最後まで解決できるようにします。自然言語の指示と決定論的な制御を組み合わせて、会話の変化に応じてFinを柔軟に保ちつつ、ルールやポリシーを遵守し、システム全体で安全な操作を行い、正確で信頼性の高い回答を提供します。
この記事では、すばやく始めて最初のシンプルなprocedureを構築する方法を紹介します。
ヒント:
このビデオでProceduresの始め方を確認してください。
コミュニティの専門家やIntercomソリューションアーキテクトとProcedures Meetup Office Hoursでつながりましょう。隔週開催のこのセッションでは、実践的なリアルタイムサポートやライブQ&Aを提供し、Fin ProceduresとData connectorsの設定と最適化を支援します。
始める
Fin AI Agent > Train > Proceduresに移動し、+ New procedure.をクリックします。
procedureの作成方法を選択する
Fin Procedureを作成する方法は2つあります。AIを使ってプロセスを高速化するか、完全なコントロールのために手動で構築するかです。
オプション1(推奨): AIでドラフトを使うことで、プロセスを英語の自然な言葉で説明します。Finはhelp center、data connectors、過去の会話から情報を活用し、レビューと修正が可能なProcedureの完全なドラフトを生成します。
オプション2: 最初から構築する場合は、ロジックと手順の構成方法が明確な場合に選択します。
オプション1: AIにドラフトを任せる(推奨)
最速で始めるには、Finにprocedureの構築を任せましょう。
Fin AI Agent > Train > Proceduresに移動し、+ New procedureをクリックしてLet AI draft your procedure.を選択します。
プロセスの説明: procedureにしてほしいことを自然言語で書きます。
例のプロンプト: 「顧客がミーティングを予約できるように支援します。希望日を尋ねます。過去の日付なら、時間を戻せないことを説明します。7日以上先なら、そのスロットはまだ開いていないと伝えます。そうでなければ、このcalendlyリンクを渡します: [link].」
明確化の質問に答える: Finは曖昧さを解消するためにいくつかの短い質問をすることがあります。これは任意ですが、回答するとより明確な初稿作成に役立ちます。
Finがドラフトを生成すると、フィードバックモーダルが表示されます。Keepを選択してドラフトを受け入れ、Clearで破棄してやり直すか、Try againで再生成します。
注意: Let AI draft your procedureの説明欄は5,000文字の制限があります。
オプション2: 最初から構築する(例: コール予約)
この例では、顧客の希望日を確認し、その日が有効(次の7営業日以内)であれば予約リンクを提供するprocedureを作成します。
1. procedureを使うタイミングを定義する
「When to use this procedure」セクションで、procedureの開始タイミングと対象顧客を定義します。
説明: procedureを起動するタイミングや起動しない場合の詳細な説明を追加します。
Finを例でトレーニング: procedureを開始する適切なタイミングをFinに認識させるための例を追加する方法は2つあります。
顧客の会話を検索: 過去の実際の会話を検索し、このprocedureを起動すべき(または起動すべきでない)例を選択します。これは手動で書いた例よりも現実的な顧客の表現を引き出します。
手動で追加: 顧客がこのトピックについて尋ねる一般的な表現を知っている場合や、関連する会話履歴がまだない場合に、自分で例文を入力します。
手動で追加を使う場合は、複数の質問を一度に貼り付け可能で、1行ごとに1つの例となり、一度に追加するよりも速くなります。
注意: 各リストには20例の上限があります。Use whenとDo not use whenはそれぞれ20例まで追加可能です。追加時に制限を超えると、削除すべき例の数が表示されます。リストが満杯になると20例の上限に達したことが通知されます。20例を超えるprocedureは既存の例の編集や削除は可能ですが、新規追加は制限されます。
対象者のターゲティング: チャネルや対象者をカスタマイズして、このprocedureを実行する顧客グループを指定できます。例えば、メールのみや特定のメールアドレスdomainの顧客のみに設定可能です。これらの設定はprocedure実行前に評価され、選択されたチャネルや対象者に合わない会話ではprocedureは開始されません。
注意: 説明欄は256文字の制限があります。保存失敗を防ぐために説明は簡潔にし、procedureタイトルに「|」などの特殊文字は使わないでください。これらは保存時にバックエンドエラーを引き起こす可能性があります。
2. 指示を書く
まず、Finに顧客がいつ会いたいか尋ねるよう指示します。これは簡単な指示を書くことと同じです。
最初のステップで、顧客にデモ予約希望日を尋ねてください。と入力します。
効果的な指示の書き方
指示を書く際は、簡潔で明確にしてください。抽象的または形式的な言葉(例: validate, ascertain, perform, facilitate)ではなく、一般的な動詞(例: ask, check, send, update, escalate)を使いましょう。
指示でツールを使う
これらの指示内でツールを使い、Finの機能を拡張できます。
例えば、次のことができます:
外部システムにアクセスして情報を読み取ったり操作したりするためにData Connectorsを使います。
より良いレポートのために会話に自動でタグを付ける。
顧客データを最新に保つために属性を更新する。
💡 プロのヒント: Finに対しては、人間のチームメイトに書くように指示を書きましょう。人が理解しにくい指示は、Finも正確に解釈できません。
3. 条件を使って異なるシナリオに対応する
自然言語の指示を強化し、Conditionステップを使って異なるシナリオでFinに何をすべきか指示できます。Conditionステップで分岐を追加し、異なるシナリオに対応します。
Conditionステップは、単純な決定ではなく、明確に分かれたロジックの大きな分岐に使うのが最適です。
@を入力してConditionを選択します。
分岐A(IF): ボックスに
提供された日付が過去の場合と入力します。次に、インデントされたステップに以下の指示を追加します。
過去の予約はできないことをお客様に伝えてください。インデントされたステップ: @ を入力し、End を選択して手順を終了します。
ブランチ B (ELSE IF): 省略記号(...)をクリックし、Add else if condition を選択します。
条件: 次のように入力してください:
日付が今日を含まず、今日から7日以上先の場合。以下のインデントされたステップに入力してください
予約枠は1週間前からしか開放していないことをお客様に伝えてください。@ を入力し、End を選択して手順を終了します。
ブランチ C (ELSE): 省略記号(...)をクリックし、Add else condition を選択します。
インデントされたステップ: これは有効な「ハッピーパス」です。次のように入力してください:
お客様にリンクを送信し、予約を進めるためにクリックするよう伝えてください:calendly.com/demo-booking。インデントされたステップ: @ を入力し、End を選択します。
4. ハンドオフの設定(任意)
@Handoff コマンドを使って、Fin を特定のチームや再利用可能なワークフローにハンドオフする設定も任意で行えます。この例では、それを示す追加の指示を加えます。
プロのコツ: 条件はデータコネクターと組み合わせると効果的です。外部システムからのデータを統合することで、Fin に特定の出力に基づいて動作を分岐させる指示ができます。
自然言語でルールを作成することもできますが、コード条件を活用するとさらに制御と複雑さが増します。これにより、Fin は利用可能な正確な情報に基づいてプログラム的にデータを評価し、適切な対応が可能になります。
例:データコネクターを使った注文状況の照会
この例は、上記の予約手順にデータコネクターを追加したものです。リアルタイムのデータが必要な手順の参考にしてください。
ユースケース
お客様は注文の状況を問い合わせるために頻繁にサポートに連絡します。サポートチームは内部の注文管理システムを手動で確認し、状況をコピーして返信します。これは繰り返しで複雑さが低く、量が多い作業です。これが最初の手順に最適です。
手順
手順は、上記の予約例と同様に自然言語で書かれています:
注文番号がまだ提供されていない場合は、お客様に注文番号を尋ねてください。
注文状況ツールを使って注文を照会します。
注文が見つかった場合は、お客様に現在の状況と推定配達日を伝えてください。
注文が見つからない場合は、謝罪し、チームメンバーへのハンドオフを提案してください。
データコネクター
手順はデータコネクターを使って注文管理システムのAPIを呼び出します。エンジニアリングは以下の詳細でIntercomにコネクターを設定します:
フィールド | 値 |
エンドポイント | GET /orders/{order_id} |
認証 | AuthorizationヘッダーのBearerトークン |
リクエストパラメーター | order_id(文字列)、会話からFinが渡す |
許可された応答フィールド | order_id、status、estimated_delivery_date、carrier |
エンジニアリングはFinが使用できるフィールドを制御します。この例では、支払い情報や顧客のPIIなどの機密フィールドは許可された応答から除外されています。
APIレスポンスの例
Finがエンドポイントを呼び出すと、システムはJSONレスポンスを返します。エンジニアリングはセットアップ時にモック版を提供できるため、ライブAPI接続前に手順の構築とテストが可能です。
{
"order_id": "ORD-8821",
"status": "In transit",
"estimated_delivery_date": "March 24th, 2026",
"carrier": "FedEx"
}
Finは応答を読み取り、お客様にわかりやすく返信します:「ご注文のORD-8821は現在FedExで輸送中で、2026年3月24日に到着予定です。」
手順をテストする
手順を公開する前に、シミュレーションを利用して動作を確認してください。
エディター上部のTestボタンをクリックします。
FinのAIが自動的にテストシナリオを提案します。これはシミュレーションの機能を体験するのに役立ちます。
シミュレーションを実行して、Finがステップを実行し、モックAPIをトリガーし、ロジックに従う様子を確認します。
緑色の成功メッセージが表示されたら、公開の準備ができています!
よくある質問
プロシージャを作成するのにData Connectorは必要ですか?
プロシージャを作成するのにData Connectorは必要ですか?
いいえ、プロシージャを作成するのにData Connectorsは必要ありません。Data Connectorsは、Finが外部システムからリアルタイムデータを必要とする場合のみ必要です。
どの作成方法を選べばよいですか?
どの作成方法を選べばよいですか?
プロセスを平易な言葉で説明できる場合は、Let AIにプロシージャの草案を作成させてください。これが最も速く動作する初稿を得る方法です。ステップ構造とロジックを最初から完全に制御したい場合は、Build from scratchを使用してください。
プロシージャを公開前にテストできますか?
プロシージャを公開前にテストできますか?
はい、シミュレーションを使って、プロシージャがお客様に届く前にサンドボックス環境で検証してください。Finは自動的にテストシナリオを提案し、各ステップの実行をリアルタイムで確認できます。






