「さまざまな問い合わせ対応に追われ、本来注力すべき業務に手が回らない」という声は、多くの現場で見られる典型的な課題です。一見単純な作業に思えても、多くの時間を要し、担当者の負荷を増やすだけでなく、それに伴って問題が発生することもあります。
そこで本記事では、生成AIとn8nを組み合わせて、問い合わせの分析・分類から一次対応までを自動化するフローを設計しました。その全体像とワークフロー設計について解説します。
【目次】
はじめに:問い合わせ対応のプロセスと課題
問い合わせメールが届いた際、最初の返信が行われるまでの主なプロセスは、以下のように構成されています。
1.内容の確認
2.優先度の判断
3.適切な担当者への振り分け
4.担当者が返信文を作成
これらをすべて人手で行う場合、以下のリスクが生じる可能性があります。
返信までの遅延
重要な問い合わせがきた際、例えばそれまでに20件の問い合わせが溜まっており1件あたり10分で対応していた場合、問い合わせを見るまでに約3時間半かかってしまいます。こうした対応に遅れは顧客満足度の低下につながります。
分類ミスの危険性
分類を人手で行う際、どれだけ注意していても、見落としや分類ミスは発生してしまいます。これらは、対応の抜け漏れによる顧客満足度の低下や、社内での追加コミュニケーションによる対応時間の増加につながるおそれがあります。
判断の属人化
優先度の判断や担当者の振り分け、回答の質は、人によってどうしてもばらつきが生じます。特に、これらの判断を特定の個人に依存している場合、その人が不在の際に対応できず、業務が滞ってしまいます。さらに、同じ人が作業を継続することで集中力が低下し、個人内でも対応の質にばらつきが生じる可能性があります。
効率化に向けたアプローチ
問い合わせ対応は、回答作成だけでなく、分類や判断など複数の工程で成り立っています。対応時間や担当者の負担を軽減するには、これらのプロセスを効率化することが重要です。
しかし、問い合わせ内容は定型的なものから複雑なものまで幅広く、回答には正確性も求められるため、問い合わせ対応を完全に自動化するのは困難です。一方で、以下の工程は自動化できます。
- 問い合わせ内容を分類する
- 優先度を判断する
- 初動対応を自動化する
これらのうち、分類や優先度の判断には、生成AIによる自然言語処理の活用が有効です。生成AIは問い合わせ文を素早く理解し、要約や、一定の基準に基づく分類・判断を行えます。また、定型的な問い合わせであれば、回答文の作成も可能です。
さらに、初動対応の自動化はn8nのフローで実現できます。n8nは外部サービスやAIとの連携に対応しており、メール受信をトリガーに自動処理を開始できます。これらを組み合わせることで、生成AIで問い合わせ内容の分析・判断を行い、n8nで各処理を連携させながら一連の自動化フローを構築し、問い合わせの一次対応を自動化できます。
n8nについてはこちらの記事で詳しく解説していますので、ぜひ併せてお読みください。
n8n入門|料金・使い方・AI連携・トラブル対応を解説
n8n自動化フローの設計と実装
今回は「毎分Gmailの受信トレイから新規の問い合わせを読み、Google Geminiで内容を分析して要約・分類・優先度まで整理したうえ、優先度に応じて一次対応を行う」といった自動化フローを作成します。
問い合わせは、不具合や使い方の質問、請求関連など多岐にわたります。また、緊急性が高く、対応が遅れると顧客側の業務に影響が出るものもあれば、他社サービスの営業など、早急な回答が不要なものや、AIの回答で十分に対応できるものもあります。
これらを適切に分類し、優先度を「高/中/低」で整理します。優先度が高いものはラベル付けを行い、担当チームのSlackに通知し、人による対応へエスカレーションします。優先度が中のものはAIで返信文を作成し、人の確認を経たうえで、承認が得られれば自動返信します。回答が不要な優先度が低いものは返信せず、アーカイブする処理を行います。
一連の流れを含めたワークフロー全体像の図は、以下のとおりです。

① Gmail受信→AIによる分類

「Gmail Trigger」:下記の設定により受信トレイにある未読の問い合わせ内容を毎分取得します。Max Emails per Poll の数字を変更することで一度に処理するメールの量を変更できます。
- Poll Times:Every Minute
- Simplify:トグルをOFF
- Max Emails per Poll:1
- Search:in:inbox is:unread
「Remove lavel from message」:取得したメールはunread ラベルを削除し、既読状態とします。
「Message a model」:このノードではGoogle Geminiを用いて、本文から内容の要約と分類を行います。AIへのプロンプトは、たとえば次のように記述します。
あなたは問い合わせメールを要約し分類するAIです。 |
このように、分類の方針や優先度の基準を明示したうえで、問い合わせの件名と本文を渡すことで、AIはその基準に沿って分析できます。
また重要なのは、出力形式を統一することです。形式が揃っていないと、AIが自由なフォーマットで返してしまい、後続ノードでエラーの原因になります。出力はJSON形式に統一しましょう。設定画面で「Output Contents as JSON」のトグルをONにすることでJSON形式の出力が可能です。

「Switch」:優先度別に条件分岐します。{{ JSON.parse($json.content.parts[0].text).優先度 }} で優先度を抽出し、「高/中/低」によって処理が分岐されます。
② 優先度別の処理(優先度:高)

優先度が「高」の場合は、人による対応へエスカレーションします。今回は、以下の2つのノードを用いてメールのラベル付けとSlackへのメッセージ送信を行います。
- 「Add label to message」:対象のメールにラベルを付けるノードです。
- 「Send a message」:Slackにメッセージを送信するノードです。
③ 優先度別の処理(優先度:中)

優先度が「中」と判断されたものは、上図のフローに沿って、AIによる返信文の生成と承認を経た自動返信を行います。具体的な流れは、以下の2つです。
返信文の生成、Slackでの確認
- 「Message a model」:AIが返信文を自動作成します。プロンプトは、たとえば以下のように記述します。
以下の問い合わせ内容をもとに返信文を生成してください。
返信文は以下のテンプレートに従ってください。 |
こちらも問い合わせ内容の分析と同様に、返信フォーマットやJSONのタグを明示しておくことで形式を統一し、後続ノードでのエラーを防止します。
また、プロンプトに回答の参考にしたい情報となるURLをAIに送ることで、その情報をもとに回答を作成できます。
「Send a message(sendAndWait)」:作成した回答は一度Slackに送信し、対応者の承認を待ちます。{{ JSON.parse($json.content.parts[0].text).reply_mail }} でJSON形式から文章に戻してから承認待ちにすることで、誤った形式での送信を防ぎます。
承認/非承認/回答なしによるフロー分岐
Slackで返信文の承認後は「Switch」で分岐させます。今回は承認された場合/非承認だった場合/時間までに回答がない場合で分岐しました。
<承認された場合>
承認が得られた場合は「Reply to a message」ノードで作成された返信内容を自動で返信します。
<非承認だった場合>
非承認の場合は、特に何も処理していません。問い合わせをしたユーザーには自動返信もしていないため、人が実際に回答を作成する必要があります。
<回答が時間内になかった場合>
「Wait」ノードで一定時間待機した後、先ほどの「Send a message (sendAndWait)」ノードへつなぐことで、承認/非承認が確定するまでループします。これにより、回答がないまま対応が埋もれてしまうことを防ぎます。
④ 優先度別の処理(優先度:低)

優先度が「低」と判断されたものは受信トレイから削除します。「Remove label from message」を用いてinbox ラベルを削除します。
自動処理フロー設計の特徴や注意点
今回設計した自動化フローの特徴は以下の通りです。
人とAIの役割を分けた
作業自体は難しくないものの、時間や負荷がかかっていた「確認」と「振り分け」をAIが代替することで、人は「優先度の高い問い合わせへの対応」と「生成された返信内容の確認」のみに注力できます。
優先度ベースでの業務フローの改善
従来の問い合わせ対応では、すべての問い合わせが同一の流れで処理されており、優先度の高いものから低いものまで混在した状態で順次対応していました。そのため、緊急性の高い問い合わせがあっても、ほかの状況によって対応が遅れていました。
一方、今回のフローではAIが優先度を判定し、その結果によって処理を分岐しています。そのため問い合わせごとに異なる処理を並列で進めることが可能です。
例えば、優先度が「中」と「高」の問い合わせが同時にきた際、優先度「中」の問い合わせは自動で承認待ちまで処理するため、人は優先度「高」の問い合わせを続けて対応することができます。
ただ、運用するうえでの注意点もあります。
誤分類のリスク
AIによる分類はプロンプト設計に左右されるため、基準が不十分な場合や想定外の問い合わせに対して誤分類が起きる可能性があります。そのため、定期的にプロンプトや分類ルールを見直し、実際の問い合わせデータに基づいて調整することが重要です。
特に、優先度「低」と判断されたものは人の確認を挟まずに自動処理されるため、定期的に結果を点検し、想定外の誤判定がないか確認する必要があります。
AIの精度に依存してしまう
問い合わせの要約や返信文の生成にAIを利用する以上、出力の精度はAIの性能に依存します。特に優先度「中」の自動返信は、メールの送付まですべてを自動化すると誤った情報を送信してしまう危険性があります。
そのため、生成された返信文は承認フローを挟むなど、人の確認を介して誤送信を防ぐことが重要です。
セキュリティ上の注意点
Google GeminiやChatGPTなどのクラウド型AIサービスを利用する場合、データが外部サーバーに送信されます。主要なサービスではAPIを利用する限りデフォルトでデータが学習に使用されない設定になっていることが多いですが、運用時には自社のセキュリティポリシーと照らし合わせて確認しておきましょう。
より厳密にデータを管理したい場合は、n8nをセルフホストしたうえでローカルLLMと組み合わせることで、LLMへの推論処理を自社内で完結させることも可能です。
まとめ
本記事では、問い合わせ対応を効率化するため、生成AIで「分類」と「判断」を自動化し、その結果をもとに一次対応まで行う一連のフローを設計しました。これにより、担当者は重要な問い合わせへの対応に集中でき、より高い顧客満足につながるのではないでしょうか。導入にあたっては、まず実際にどのような問い合わせが届いているのか、どこに課題があるのかを見直すところから始めてみてください。n8nは自由度がかなり高いツールです。そのため、まずは小さな範囲から試しつつ、自社に適した自動化フローへと段階的に拡張していくことが重要です。
