手順により、Finは破損した注文のクレームやアカウントのトラブルシューティングなどの複雑な問い合わせを最初から最後まで解決できます。自然言語の指示と決定論的な制御を組み合わせて、会話の変化に応じてFinを柔軟に保ちつつ、ルールやポリシーを遵守し、システム全体で安全な操作を行い、正確で信頼性の高い回答を提供します。
この記事では、すぐに始められる方法と最初の簡単な手順の作り方を紹介します。
ヒント:
このビデオでProceduresの始め方を確認してください。
コミュニティの専門家やIntercomソリューションアーキテクトと交流できるProcedures Meetup Office Hoursを開催しています。2週間ごとに実施されるこのセッションでは、Fin ProceduresやData connectorsの設定と最適化を支援するライブQ&Aなど、実践的なリアルタイムサポートを提供します。
始める
Fin AI Agent > Train > Proceduresに移動し、+ 新しい手順をクリックします。
手順の作成方法を選択する
Fin Procedureを作成する方法は2つあります。AIを使ってプロセスを高速化するか、完全なコントロールのために手動で構築するかです。
オプション1(推奨): AIでドラフトを使うことで、プロセスを英語で説明します。Finはhelp center、data connectors、過去の会話から情報を活用し、レビューと修正が可能な手順の完全なドラフトを生成します。
オプション2: 最初から構築する場合は、ロジックとステップの構成方法が明確な場合に選択します。
オプション1:AIにドラフトを任せる(推奨)
最速で始めるには、Finに手順を作成させましょう。
Fin AI Agent > Train > Proceduresに移動し、+新しい手順をクリックしてAIに手順のドラフトを作成させるを選択します。
プロセスを説明する:手順に何をさせたいかを自然言語で書きます。
例のプロンプト:「顧客がミーティングを予約できるように手伝う。希望日を尋ねる。過去の日付なら時間を戻せないと説明する。7日以上先ならまだ予約枠が開いていないと言う。そうでなければ、このcalendlyリンクを渡す:[link]。」
明確化の質問に答える:Finは曖昧さを解消するためにいくつか短い質問をすることがあります。これは任意ですが、回答するとより明確な初稿作成に役立ちます。
Finがドラフトを生成するとフィードバックモーダルが表示されます。保持を選択してドラフトを承認、クリアで破棄してやり直し、または再試行で再生成します。
注意:「AIに手順のドラフトを作成させる」の説明欄は5,000文字制限があります。
オプション2:最初から構築する(例:通話予約)
この例では、顧客の希望日を確認し、その日付が有効(次の7営業日以内)であれば予約リンクを提供する手順を作成します。
1. 手順を使うタイミングを定義する
「この手順を使うタイミング」セクションで、手順の開始条件と対象顧客を定義します。
説明:この手順を起動するタイミングや起動しない場合の詳細な説明を追加します。
Finに例を学習させる:手順開始の適切なタイミングをFinが認識できるように、例を追加する方法は2つあります。
顧客との過去の会話を検索:実際の過去の会話から例を選択し、この手順を起動すべきか否かを判断します。実際の顧客の表現を使うため、手動で書いた例より現実的です。
手動で追加:顧客がよく使う表現や関連する会話履歴がない場合に、自分で例文を入力します。
手動で追加を使う場合は、複数の質問を一度に貼り付け可能で、1行ごとに1つの例となり、一つずつ追加するより速くなります。
注意:各リストは20例までの制限があります。「使う時」と「使わない時」それぞれ20例ずつです。追加時に制限を超える場合は削除数が表示されます。20例に達すると追加できません。既に20例以上ある手順は編集可能ですが、新規追加は制限内に戻るまでできません。
対象者の絞り込み:チャネルや対象顧客グループをカスタマイズして、この手順を実行する顧客を限定できます。例えば、メールのみや特定のメールアドレスdomainの顧客だけに設定可能です。これらの設定は手順実行前に評価され、条件に合わない会話では手順は開始されません。
注意:説明欄は256文字制限です。保存失敗を防ぐため簡潔にし、手順タイトルに特殊文字(例:'|')を使わないでください。バックエンドエラーの原因になります。
2. 指示を書く
まず、Finに顧客にいつ会いたいか尋ねるよう指示します。これは簡単な指示を書くだけです。
最初のステップに次を入力してください:顧客にデモ予約希望日を尋ねる。
効果的な指示の書き方
指示を書く際は、簡潔で明確にしてください。抽象的・形式的な言葉(例:検証する、確認する、実行する、促進する)よりも、一般的な動詞(例:尋ねる、確認する、送る、更新する、エスカレートする)を使いましょう。
指示内でツールを使う
指示内でツールを使い、Finの機能を拡張できます。
例えば、次のことができます:
外部システムにアクセスして情報を読み取ったり操作したりするためにData Connectorsを使う。
より良い報告のために会話に自動でタグ付けする。
顧客データを最新に保つために属性を更新する。
💡 プロのコツ:Finに対しては、人間のチームメイトに書くように指示を書いてください。人が理解しにくい指示は、Finも正確に解釈できません。
3. 条件を使って異なるシナリオに対応する
自然言語の指示を強化し、条件ステップを使って異なるシナリオでFinに何をすべきか指示できます。条件ステップで分岐を追加し、シナリオごとに処理を分けます。
条件ステップは、明確に分かれる主要なロジックの分岐に使うのが最適で、単純な判断には向きません。
@を入力して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日に到着予定です。」
手順をテストする
手順をFin Mainに公開する前に、シミュレーションを利用して動作を確認してください。
エディター上部のテストボタンをクリックします。
FinのAIが自動的にテストシナリオを提案します。これはシミュレーションの機能を体験するのに役立ちます。
シミュレーションを実行して、Finがステップを実行し、モックAPIをトリガーし、ロジックに従う様子を確認します。
緑色の成功メッセージが表示されたら、Fin Mainに切り替えて公開する準備ができています!
よくある質問
プロシージャを作成するのにData Connectorは必要ですか?
プロシージャを作成するのにData Connectorは必要ですか?
いいえ、プロシージャを作成するのにData Connectorsは必要ありません。Data ConnectorsはFinが外部システムからリアルタイムデータを必要とする場合のみ必要です。
どの作成方法を選べばよいですか?
どの作成方法を選べばよいですか?
プロセスを平易な言葉で説明できる場合は、Let AIにプロシージャの草案を作成させてください。これが最も早く動作する初稿を得る方法です。最初からステップ構造とロジックを完全に制御したい場合は、Build from scratchを使用してください。
プロシージャを公開前にテストできますか?
プロシージャを公開前にテストできますか?
はい、シミュレーションを使ってサンドボックス環境でプロシージャを検証できます。Finは自動的にテストシナリオを提案し、各ステップの実行をリアルタイムで確認できます。






