予約サイト経由で届く外国語の宿泊客のメッセージを訳して内容で仕分け、日本語で書いた返事を相手の言語に直して返す
海外の予約サイトから届く宿泊客のメッセージを日本語に訳し、用件で仕分けて担当へ回します。スタッフが日本語で書いた返事は相手の言語に訳し、日時や金額のずれを点検してから返します。
- 生成AI
- ChatGPT/Claude/Gemini
- 連携・自動化
- Make/n8n/Power Automate/Zapier
- 対象業界
- 宿泊
- 対象部門
- カスタマーサポート
- 対象業務
- 分類・仕分け/問い合わせ対応
- 主な課題
- 問い合わせが多い/属人化している/確認ミスが多い
- AIで行う処理
- 翻訳
- 主な効果
- 対応スピード向上/属人化解消/工数削減
- 導入難易度
- ★★☆☆☆
- 実装レベル
- 本格構成
- 費用感
- API連携(中)
- 人間の確認
- 条件付き
01導入前 / 導入後の業務フロー
- 予約サイトからの通知のメールが共有の受信箱に届く
- スタッフが本文を開き、英語以外なら翻訳サイトに貼って日本語で読む
- 客室管理システムで予約を引き、予約の内容(日付・人数・プラン)を確かめる
- 返事を英語で考えて書く。英語以外の宿泊客には、日本語で書いて翻訳サイトで相手の言語に直す
- 訳した文を予約サイトの管理画面のメッセージの欄に貼り、送る
- 到着時刻や要望は、客室管理システムの備考に書き写す
- 予約の変更や取消の相談は、予約課に口頭か付箋で伝える
- 自動予約サイトからの通知のメールが届くと、ワークフローが動き、本文から宿泊客のメッセージの部分を取り出す
- 自動機械翻訳がメッセージを日本語に訳し、元の言語を判定する
- 自動AIが訳文を読み、用件(到着・送迎・食事とアレルギー・変更と取消・支払い・苦情・その他)と急ぎ具合を付ける
- 自動予約番号でメッセージの一覧の行を作り、用件に応じてフロントか予約課に通知する
- 人担当のスタッフが日本語の訳を読み、客室管理システムで予約を確かめ、返事を日本語で一覧の欄に書く
- 自動機械翻訳が日本語の返事を相手の言語に訳し、さらに日本語へ訳し戻す
- 自動AIが日本語の返事と訳し戻した文を比べ、日時・時刻・金額・人数・部屋数のずれを点検する
- 人スタッフが点検の結果を見て、訳文を予約サイトの管理画面に貼って送る
- 人到着時刻や要望を、客室管理システムの備考に書く
各工程の詳しい説明を読む
- 予約サイトからの通知のメールが共有の受信箱に届く
- スタッフが本文を開き、英語以外なら翻訳サイトに貼って日本語で読む
- 客室管理システムで予約を引き、予約の内容(日付・人数・プラン)を確かめる
- 返事を英語で考えて書く。英語以外の宿泊客には、日本語で書いて翻訳サイトで相手の言語に直す
- 訳した文を予約サイトの管理画面のメッセージの欄に貼り、送る
- 到着時刻や要望は、客室管理システムの備考に書き写す
- 予約の変更や取消の相談は、予約課に口頭か付箋で伝える
(a)返事を書ける人が限られる。 英語で返事を書けるスタッフと、書けないスタッフがいます。書けない人は通知を開いても、そのまま閉じて次のシフトの人に任せます。 結果として、同じメッセージを何人もが開いて閉じています。
(b)訳した返事を確かめる手段がない。 中国語やタイ語に訳した返事が正しいかを、送る前に確かめられる人がいません。日本語で「15時以降」と書いたのに、訳文では時刻の表し方が変わっていても気づけません。
(c)用件の重さが、開くまで分からない。 「到着が遅れます」と「アレルギーがあります」と「予約を取り消したい」が、同じ受信箱に同じ形で並んでいます。急ぐべきものが、届いた順の後ろに埋もれます。
(d)変更と取消を、フロントが答えてしまう。 「1泊減らせますか」に、フロントが空室を見て「大丈夫です」と返すことがあります。予約サイトの規定や予約の条件では手数料がかかる場合でも、約束した後では取り消せません。
- 【自動】 予約サイトからの通知のメールが届くと、ワークフローが動き、本文から宿泊客のメッセージの部分を取り出す
- 【自動】 機械翻訳がメッセージを日本語に訳し、元の言語を判定する
- 【自動】 AIが訳文を読み、用件(到着・送迎・食事とアレルギー・変更と取消・支払い・苦情・その他)と急ぎ具合を付ける
- 【自動】 予約番号でメッセージの一覧の行を作り、用件に応じてフロントか予約課に通知する
- 【人】 担当のスタッフが日本語の訳を読み、客室管理システムで予約を確かめ、返事を日本語で一覧の欄に書く
- 【自動】 機械翻訳が日本語の返事を相手の言語に訳し、さらに日本語へ訳し戻す
- 【自動】 AIが日本語の返事と訳し戻した文を比べ、日時・時刻・金額・人数・部屋数のずれを点検する
- 【人】 スタッフが点検の結果を見て、訳文を予約サイトの管理画面に貼って送る
- 【人】 到着時刻や要望を、客室管理システムの備考に書く
5番目が、この設計の分かれ目です。返事を書くのは人で、書く言葉は日本語です。 外国語ができないスタッフでも、日本語の訳を読んで日本語で書けば返事ができます。返事を書ける人が3名から8名に広がることが、たまる時間を減らします。
8番目で、送る操作を人に残しているのも意図してのことです。 予約サイトのメッセージの欄に貼る手間は残りますが、点検の結果を見ないまま送られることがありません。
02今回想定するシステム構成
予約サイトからの通知のメール(本文付き) ▼【トリガー①】新しいメール(Watch emails/ラベル「OTAメッセージ」) Make ├──▶ 本文から宿泊客のメッセージと予約番号を取り出す ▼ DeepL API ── 日本語へ翻訳(元の言語を自動で判定) ▼ Claude API ── 用件と急ぎ具合の仕分け、フロントで答えてよいかの印 ▼ ルーター ├─ 苦情・急ぎ ─────▶ 当番の責任者へ通知 ├─ 変更・取消・支払い ▶ 予約課へ通知 └─ フォールバック ───▶ フロントへ通知 ▼ メッセージの一覧(Google スプレッドシート)に1行追加 【人】日本語で返事を書き、状態を「返事あり」に ▼【トリガー②】5分ごと(Search Rows:状態が「返事あり」) DeepL API ── 日本語の返事を相手の言語へ(用語集を当てる) ├──▶ DeepL API ── 訳文を日本語へ訳し戻す ▼ Claude API ── 日本語の返事と訳し戻しを比べ、数・日付・単位のずれを点検 ▼ 一覧に訳文と点検の結果を書き、状態を「送信待ち」に ▼【人が確かめて、予約サイトの管理画面から送る】
| 役割 | 想定する製品 | 代替候補 |
|---|---|---|
| ワークフロー | Make | Zapier、n8n、Power Automate |
| 生成AI | Claude API(用件の仕分けと、訳文の数・日付の点検) | OpenAI API、Gemini API |
| 翻訳 | DeepL API | Google Cloud Translation |
| 台帳 | Google スプレッドシート(メッセージの一覧) | Microsoft Lists |
| メール | Gmail(共有の受信箱) | Outlook |
新しく足すのは、Make のシナリオ2本と、メッセージの一覧のスプレッドシートだけです。 客室管理システムにも予約サイトにも書き込みません。最初の準備作業は、予約サイトごとの通知のメールの形を集め、どこからどこまでが宿泊客のメッセージかを決めることです。
予約サイトとの直接の接続は使いません。 Booking.com のメッセージの API は、メッセージや会話の取得と、テキストのメッセージの送信と返信ができるものですが、対象は Booking.com の接続パートナー(Connectivity Partner)の開発者とされています。 ホテルが自分で組む構成では、通知のメールを起点にし、送信は管理画面から人が行います。
翻訳は、DeepL API の翻訳の機能で行います。 元の言語の指定を省くと自動で判定し、応答に判定した言語(detected_source_language)が入ります。用語集を使うときは元の言語の指定が必要で、 1回の依頼に用語集を5つまで指定できます。訳す文とは別に context を渡すと、訳に影響するが訳されない文脈として扱われ、その文字数は料金の計算に入らないとされています。
Make には DeepL のアプリがあり、 文を選んだ言語に訳す Translate a Text と、任意の API を呼ぶ Make an API Call があります。用語集や context を使う依頼は、Make an API Call で組みます。 接続には DeepL API のアカウントと API キーが要ります。
メールの受信は Gmail の Watch emails、一覧とのやり取りは Google Sheets の Search Rows と Update a Row で行います。 振り分けにはルーターを使い、経路は順に処理され、どの条件にも合わないものはフォールバックの経路で受けられます。生成AIの呼び出しは、Make の Anthropic Claude のアプリの Create a Prompt で行います。
03どうやって実装するのか
処理の起点を決める
トリガーは2つです。 届いたメッセージを訳して仕分けるもの(①)と、人が書いた返事を訳して点検するもの(②)です。
| トリガー | きっかけ | すること |
|---|---|---|
| ① 受信 | 新しいメール(Watch emails) | 訳す、仕分ける、一覧に載せる、通知する |
| ② 返事 | 5分ごと(一覧の状態が「返事あり」の行を探す) | 返事を訳す、訳し戻す、点検する |
①は、専用のラベルが付いたメールだけを見ます。 予約サイトの通知の送信元のアドレスでGmailのフィルタを作り、ラベルを付けます。予約の確定や取消の通知など、メッセージでないメールにはラベルを付けません。 件名で区別できる予約サイトが多いので、フィルタは予約サイトごとに作ります。
②を5分ごとにしているのは、人が書き終えたことを知る方法が一覧の状態の列しかないからです。 状態を「返事あり」に変えるのは、書いたスタッフ自身です。書きかけのまま訳されないよう、状態を変えるまでは訳しません。
入力データを集める
| データ | 中身 | 取得元 |
|---|---|---|
| 通知のメール | 予約サイト名、予約番号、宿泊客の名前、メッセージの本文、受信日時 | 共有の受信箱 |
| 日本語の返事 | スタッフが書いた返事、書いた人 | メッセージの一覧 |
| 用語集 | 館内の施設名・サービス名と、その言語ごとの決まった訳(大浴場、館内着、朝食会場、手荷物の預かりなど) | DeepL の用語集 |
| 返事の決まりごと | フロントで答えてよい用件と、予約課に回す用件の一覧 | 自社で用意する一覧 |
質を決めるのは、下の2つです。 用語集が無いと、「大浴場」が予約サイトの表記と違う訳になり、宿泊客が館内の案内と結び付けられません。 返事の決まりごとが無いと、仕分けの「予約課へ」が人によって変わります。
予約の内容(人数・日付・プラン)はAIに渡しません。 予約を確かめるのはスタッフで、客室管理システムを見ます。AIに渡すと、メッセージに書かれていない人数を予約から補って訳すことがあります。
データの取得方法を決める
通知のメールの本文から、宿泊客のメッセージの部分だけを取り出します。 通知のメールには、予約サイトの定型の文(ログインの案内、注意書き、フッター)が前後に付いています。予約サイトごとに、メッセージの始まりと終わりの目印の文字列を決めておき、その間を取ります。 目印が見つからないものは、本文全体を取って「抽出できず」の印を付けます。
| 取るもの | どこから | 何に使うか |
|---|---|---|
| メッセージの本文 | 通知のメールの本文(目印の間) | 翻訳の入力 |
| 予約番号 | 通知のメールの件名または本文 | 一覧の行と予約の紐付け |
| 予約サイト名 | 送信元のアドレス | 目印の切り替え、返事を送る先 |
| 元の言語 | DeepL の detected_source_language | 返事を訳す先の言語 |
元の言語は、一覧の列に必ず残します。 ②で返事を訳すとき、訳す先の言語はこの列から取ります。同じ宿泊客の2通目が英語で届いても、1通目の言語で返さないよう、メッセージごとに列を持ちます。
AIへ渡す前に整形する
- 定型の文の削除 … 予約サイトごとの目印の間だけを取り、前後の定型文を落とします
- 引用の削除 … 宿泊客の返信に、前のこちらの返事が引用されていれば落とします
- 予約番号の取り出し … 件名か本文から、予約サイトごとの形で取ります。取れなければ「予約番号なし」の印を付けます
- 個人情報の確認 … クレジットカードの番号や旅券の番号らしい数字の並びがあれば、翻訳に送る前に伏せ字にします
- 重複の検知 … 同じ予約番号・同じ本文のメールが直近にあれば、二度目は訳しません
- 返事の側の確認 … ②では、返事の欄が空でないこと、書いた人の欄が埋まっていることを確かめます
2番目を軽く見ないでください。 引用が残ったまま訳すと、こちらが前に送った返事まで「宿泊客のメッセージ」として仕分けられます。 前回の返事に「キャンセル料」と書いていれば、今回のメッセージが「取消」に仕分けられます。
4番目は、宿泊客が支払いの相談で番号を書いてくることがあるためです。 番号は返事を書くのに要りません。伏せた番号の本文は、予約サイトの管理画面で人が見ます。
AIに処理させる
させるのは2つです。 ①で、日本語に訳したメッセージを用件で仕分けること。②で、日本語の返事と訳し戻した文を比べ、数・日付・単位のずれを書き出すことです。翻訳そのものは DeepL に任せ、生成AIには訳させません。
①の仕分け
| 用件 | 例 | 回す先 |
|---|---|---|
arrival | 到着時刻、早いチェックイン、遅い到着 | フロント |
transport | 送迎、駐車場、行き方 | フロント |
meal_allergy | 朝食、食物アレルギー、食事の制限 | フロント(アレルギーは急ぎ) |
change_cancel | 日付の変更、泊数・人数の変更、取消 | 予約課 |
payment | 支払い方法、領収書、追加の料金 | 予約課 |
complaint | 不満、苦情、トラブル | 当番の責任者 |
other | 上のどれでもない | フロント |
急ぎ具合(urgent)は、到着が今日か明日のもの、アレルギー、苦情、体調や安全に関わる内容に付けます。 到着日は一覧の予約番号から人が見ますが、本文に「今日」「今夜」「明日」が書かれていれば、それも急ぎの材料にします。
②の点検
| 見るもの | 例 |
|---|---|
| 時刻 | 「15時」が「5 p.m.」になっていないか。午前と午後、24時間表記 |
| 日付 | 月と日の順、曜日 |
| 金額と通貨 | 桁、「円」が別の通貨になっていないか |
| 人数・部屋数・泊数 | 「2名」が「2部屋」になっていないか |
| 否定 | 「できません」が「できます」になっていないか |
| 用語集の語 | 館内の施設名が決まった訳になっているか |
| させないこと | 理由 |
|---|---|
| 返事の中身を書く・足す | 返事はスタッフが日本語で書く。AIが足した約束は誰も確かめていない |
| 訳文を直す | 直すのは人。直した文は点検の外に出る |
| 変更・取消・返金の可否を書く | 予約サイトの規定と予約の条件で、予約課が決める |
| 予約の内容で補う | メッセージに書かれていない人数や日付を足さない |
| 言葉の自然さの評価 | 点検は数と否定に絞る。文体の好みで差し戻しが増える |
最後の行を入れているのは、点検が広がりすぎると誰も見なくなるからです。 「より自然な表現があります」の指摘が毎回付くと、本当に危ない数のずれの指摘が埋もれます。
指示内容を固定する
①の仕分けの指示
あなたはホテルのフロントで、宿泊客から届いたメッセージを
用件ごとに仕分ける担当です。日本語に訳したメッセージだけを見て判断してください。
【メッセージ(日本語訳)】{message_ja}
【元の言語】{source_lang}
【用件(category)】
arrival / transport / meal_allergy / change_cancel / payment / complaint / other
複数の用件があれば、すべてを categories に入れてください。
【厳守事項】
- 日付・泊数・人数の変更、取消、返金、追加の料金に触れていれば、
他の用件があっても change_cancel か payment を必ず含めてください。
- 食物アレルギー、体調、けが、安全に触れていれば urgent を true にしてください。
- 本文に「今日」「今夜」「明日」があれば urgent を true にしてください。
- 返事の文を書かないでください。対応の可否も書かないでください。
- evidence には、仕分けの根拠にした文を訳文からそのまま写してください。
②の点検の指示
あなたはホテルで、スタッフが日本語で書いた返事と、
その訳文を日本語へ訳し戻した文を比べる担当です。
【スタッフの返事(日本語)】{reply_ja}
【訳文を日本語へ訳し戻した文】{back_translation_ja}
【用語集の語】{glossary_terms}
【点検すること】
1. 時刻、日付、曜日、金額と通貨、人数、部屋数、泊数が一致しているか
2. 否定(できない、ない、不可)が逆になっていないか
3. 用語集の語が、決まった語として戻っているか
4. 返事に無い内容(約束・条件・金額)が増えていないか
【厳守事項】
- 言い回しや自然さの違いは指摘しないでください。
- 一致していない箇所は、両方の文をそのまま写してください。
- 訳文の直し方を提案しないでください。
- 一致しているかどうか判断できない箇所は uncertain に入れてください。
①で「他の用件があっても change_cancel を含める」と書くのは、混ざったメッセージのためです。 「到着は20時です。それと、1泊減らせますか」は、前半だけ読めば arrival です。後半を落とすと、フロントが空室を見て答えてしまいます。
②で訳し戻しと比べるのは、相手の言語を読めるスタッフがいなくても点検できるようにするためです。 訳し戻しは完全ではありませんが、数と否定のずれは、訳し戻しでもそのまま残ることが多いので、この2つに絞って見ます。
出力形式を固定する
①の出力
{
"message_id": "",
"reservation_no": "",
"source_lang": "",
"categories": ["arrival", "change_cancel"],
"urgent": false,
"route": "front | reservation | manager",
"evidence": ""
}
②の出力
{
"message_id": "",
"target_lang": "",
"mismatches": [
{ "type": "time | date | amount | count | negation | glossary | added",
"reply_ja": "", "back_ja": "" }
],
"uncertain": [],
"check": "clear | needs_review"
}
1つ目の理由は、categories から route を規則で決められることです。 complaint があれば責任者、change_cancel か payment があれば予約課、それ以外はフロントです。ルーターの経路の順もこの順にし、 混ざったメッセージは上の経路で受けます。
2つ目は、mismatches が空かどうかで check を決められることです。 1つでもあれば needs_review にし、一覧の行の色を変えます。uncertain に何か入っているときも needs_review です。 判断できない箇所を、一致したことにしません。
3つ目は、type で月ごとに数えられることです。 time のずれが多ければ、返事の書き方(「15時」と書くか「午後3時」と書くか)を決め直す材料になります。ずれの多くは、日本語の返事の書き方で減らせます。
システムへ連携する
| つなぎ先 | 方式 | 内容 |
|---|---|---|
| 共有の受信箱 | Gmail の Watch emails | 通知のメールの受信 |
| DeepL API | Make の DeepL のアプリ(Make an API Call) | 日本語への翻訳、返事の翻訳、訳し戻し |
| Claude API | Make の Anthropic Claude のアプリ | 仕分けと点検 |
| メッセージの一覧 | Google Sheets の Add a Row/Search Rows/Update a Row | 1メッセージ1行。訳、仕分け、返事、訳文、点検、状態 |
| 予約サイトの管理画面 | 人が貼って送る | 送信は人 |
| 客室管理システム | 書き込まない | 到着時刻や要望は人が備考に書く |
一覧の状態の列は、「新着」「返事あり」「送信待ち」「送信済み」「対応不要」の5つです。 ②が書き換えるのは「返事あり」から「送信待ち」だけで、「送信済み」に変えるのは、管理画面から送ったスタッフです。
客室管理システムには書き込みません。 到着時刻を自動で備考に書くこともできそうに見えますが、メッセージの「20時ごろ」と「20時以降」を同じ値にしてしまいます。 人が読んで書きます。
人が確認する
- 通知を受けたら、日本語の訳と予約を見る …
urgentの行から読みます - 返事を日本語で書く … 一覧の返事の欄に書き、状態を「返事あり」にします。数字は「15時」「2名」のように、決めた書き方で書きます
- 点検の結果を見る …
clearなら訳文を管理画面に貼って送ります。needs_reviewなら、ずれの箇所を読み、日本語の返事を書き直して状態を戻します - 変更・取消・支払いは予約課が書く … 予約サイトの規定と予約の条件を見てから返事を書きます
- 送ったら状態を「送信済み」にする … 到着時刻や要望を客室管理システムの備考に書きます
3番目で、訳文を直接直さないでください。 訳文を手で直すと、点検を通っていない文が送られます。日本語の返事を直して、もう一度訳させます。
予約課に回った用件では、フロントが「担当から改めてご連絡します」とだけ返すことも決めておきます。 この一言も日本語で書いて訳させ、点検を通します。返事が来ないまま待たせる時間を作らないためです。
目標は、600件をならして1件3分です。 日本語の訳を読む、予約を見る、日本語で返事を書く、貼って送る、の4つが残ります。それより多い月は、needs_review が多いか、予約課に回るものが多いかです。
例外に対処する
| 起きること | 対応 |
|---|---|
| メッセージの目印が見つからない | 本文全体を訳し、「抽出できず」の印で人へ |
| 予約番号が取れない | 仕分けまでは行い、「予約番号なし」でフロントへ |
| 元の言語が日本語 | 訳さずに一覧に載せる。返事も訳さない |
| 1通に2つの言語が混ざる | 判定された言語で訳す。返事の言語は人が一覧で選び直せる |
| 用語集の無い言語 | 用語集なしで訳し、点検の「用語集の語」は見ない |
| カードの番号らしい数字がある | 伏せ字にしてから訳す。元の番号は管理画面で人が見る |
| 翻訳の応答が無い | 状態を変えずに残し、次の実行で拾い直す |
| 同じメッセージの通知が二度届く | 予約番号と本文で照合し、二度目は訳さない |
| 返事を送った後に宿泊客から追加の質問 | 新しい行として扱う。前の行とは予約番号でつながる |
| 「返事あり」のまま返事の欄が空 | 訳さずに状態を「新着」へ戻し、書いた人へ通知する |
| 到着の当日に届いた急ぎのメッセージ | urgent の通知に加え、フロントの電話の対象にも載せる。 返事を待たずに電話で確かめる |
4行目は、英語に母語の挨拶が混ざるメッセージで起きます。 判定された言語が宿泊客の読みたい言語とは限らないので、返事の言語の列は人が変えられるようにしておきます。
記録を残す
- 通知のメールの本文(伏せ字にする前のものは、受信箱の側にだけ残す)
- 取り出したメッセージ、判定された言語、日本語の訳
- 仕分けの結果(
categories、urgent、route、evidence) - スタッフが書いた日本語の返事と、書いた人
- 訳文、訳し戻し、点検の結果(
mismatches、check) needs_reviewから書き直した記録 … どのtypeのずれで、どう書き直したか- 送ったスタッフと送った日時
6つ目は、返事の書き方の決まりを作る材料です。 書き直しの多い type を月ごとに数え、「時刻は24時間表記で書く」「金額には必ず『円』を付ける」のような決まりにします。
メッセージの一覧は、宿泊が終わった予約の行を一定の期間で消す運用にします。 宿泊客の名前と要望が、いつまでも一覧に残らないようにします。
04実装レベルの3段階
半自動化で、1件9分が6分程度になります。 読むことと仕分けは自動になりますが、返事を訳して貼る作業が残ります。本格構成で3分になり、この段階が本記事の想定です。 差が大きいのは、返事を訳して確かめる作業が、外国語の得意な人にしかできなかったからです。 段階を飛ばさないでください。 半自動化を1か月回すと、目印で取り出せない予約サイトと、仕分けの迷う用件が先に分かります。そこを直してから返事の側を足すほうが、一覧が正しく回ります。 返事の側を足すときは、最初の2週間だけ、外国語の得意なスタッフに訳文と点検の結果を並べて見てもらい、点検が見落としたずれが無いかを確かめます。
05工数削減シミュレーション
導入後 600件 × 3分 ÷ 60 = 30 時間/月
自社条件で導入効果を整理したい方へ
このユースケースを自社に当てはめた場合の前提値と削減見込みを、業務ヒアリングをもとに整理します。
06向いている企業・向いていない企業
- 海外の予約サイトからの予約が多く、予約後の宿泊客とのメッセージのやり取りが英語以外の言語でも毎日届くホテル・旅館。返事を書けるのが外国語の得意な一部のスタッフに限られ、その人の勤務の日に返事がたまる場合。予約サイトからのメッセージの通知が、共有のメールの受信箱に本文付きで届く設定にできる場合。
- 海外からの予約が少なく、外国語のメッセージが月に数十件の場合。予約サイトとのメッセージのやり取りを、サイトコントローラーや客室管理システムの機能でまとめて扱っており、その中に翻訳の機能がある場合。メッセージの通知が本文を含まず、予約サイトの管理画面を開かないと内容が読めない場合。なお、返金や取消の可否の判断は、この構成では代替できません。
07最小構成で試す方法
- 先月のメッセージから、英語以外のものを30件選ぶ(変更・取消の相談と、到着時刻の連絡を必ず入れる)
- その30件に当時どう返事をしたかを、管理画面から写す
- メッセージを手元のAIサービスの画面に貼り、日本語に訳して用件で仕分けさせる
- 当時の返事を日本語で書き直し、相手の言語に訳させ、さらに日本語に訳し戻させる。「日本語の返事と訳し戻しで、時刻・日付・金額・人数・否定が一致しているかだけを見てください」と指示する
- 仕分けを当時の対応と、点検の結果を当時の返事と突き合わせる
30件は必ずやってください。 ワークフローを組む前に、「訳し戻しで数のずれが見つかるか」を確かめます。
| 出てきた内容 | 判断 |
|---|---|
| 当時の返事にあったずれが見つかった | ワークフローの連携に進む |
| 混ざった用件の後半を落とした | 指示の書き方で直る。構成は有効 |
| 自然さの指摘ばかりで、数のずれが埋もれた | 点検の範囲を絞る指示が要る。範囲を決めてから組む |
1行目が出ることは珍しくありません。 当時の返事に、時刻や金額の表し方のずれが見つかることがあります。それが、到着の当日にフロントで食い違った理由だったかもしれません。
08実装時につまずきやすいポイント
| 問題 | 対策 |
|---|---|
| 訳文の時刻・金額・人数がずれる | 訳し戻しと比べ、数と否定に絞って点検する |
| 混ざった用件の後半を落とす | 変更・取消に触れていれば必ず含めると指示する |
| 変更・取消にフロントが答える | 仕分けで予約課へ回す。返事の決まりごとを一覧にする |
| 訳文を手で直して送る | 直すのは日本語の返事。もう一度訳させる |
| 自然さの指摘で点検が埋もれる | 言い回しの指摘をしないと明記する |
| 引用された前の返事まで仕分ける | 前処理で引用を落とす |
| 用語集を使うと失敗する | 元の言語の指定が必要。 判定した言語を入れて依頼する |
| 予約サイトの定型文まで訳す | 予約サイトごとに目印を決めて取り出す |
| カードの番号を翻訳に送る | 伏せ字にしてから送る |
| 到着時刻を自動で備考に書く | 「ごろ」と「以降」を区別できない。人が書く |
上の3行が、この構成の失敗のほとんどです。 1行目は訳の側、2行目と3行目は仕分けの側の問題ですが、どれも「送った後に当日のフロントで食い違う」という同じ結果になります。
09セキュリティ・AIガバナンス上の注意点
この構成で扱うデータ: 宿泊客の名前、予約番号、到着日時、メッセージの本文(食物アレルギー、体調、同行者、記念日などに触れることがある)です。
- 外部へ渡す範囲を、訳と仕分けに必要なものに限る … 渡すのはメッセージの本文と返事だけで、予約の内容や宿泊客の連絡先は渡しません。 カードの番号らしい数字は伏せ字にします
- AIが返事の中身を足さない … 返事はスタッフが日本語で書いたものだけを訳します。AIが書き足した約束は、ホテルとして確かめていない約束です
- この構成は変更・取消・返金の判断を代替しません … 予約サイトの規定と予約の条件で、予約課が判断します。この構成が出すのは、その用件が届いたという仕分けだけです
- アレルギーと体調の連絡は、訳の点検だけで済ませない … 食物アレルギーの連絡は、訳文を読んだうえで、必要なら宿泊客に確かめてから厨房へ伝えます。 機械の訳だけで食材の判断をしないでください
- 一覧の行を残しすぎない … 宿泊が終わった予約の行は一定の期間で消し、要望や体調の記述が一覧に溜まらないようにします
誤りが起きた場合のリスクは、数のずれた返事を送ることと、フロントが答えてはいけない用件に答えることの2つです。 前者は訳し戻しの点検で、後者は仕分けで防ぎます。どちらも、送る操作を人に残してあることが最後の守りです。 送信まで自動にすると、点検の見落としがそのまま宿泊客に届きます。
10まず何から始めるか
1週目:通知のメールの形を集める
使っている予約サイトごとに、メッセージの通知のメールを5通ずつ集めます。本文が付いているか、メッセージの始まりと終わりの目印になる文字列は何かを確かめます。 本文が付かない予約サイトは、この構成の対象から外します。
2週目:30件で試す
英語以外のメッセージ30件で、訳と仕分けと、返事の訳し戻しの点検を手元のAIサービスで試します。混ざった用件の後半を落としていないかと、数のずれが見つかるかを最優先で見ます。
3週目:用語集と返事の決まりごとを作る
館内の施設名とサービス名の用語集を、ウェブサイトの各言語の表記に合わせて作ります。 あわせて、フロントで答えてよい用件と、予約課に回す用件の一覧を、予約課と決めます。
4週目:受信から一覧までをつなぐ
Make で通知のメールを受けて訳し、仕分けて一覧に載せるところまで作ります。この時点では返事の訳を作らず、仕分けが合っているかだけを見ます。
2か月目: 返事の訳と訳し戻し、点検を足し、needs_review の数を毎週数えます。3か月目以降: 書き直しの多いずれの種類から返事の書き方の決まりを作り、1件9分が何分になったかを実測します。外国語の得意なスタッフがいない日にも返事がたまらなくなった時点で、この構成は完成です。
11関連ユースケース
12この仕組みを理解するための記事
13技術仕様の確認日・参考情報
| 確認した内容 | 情報源 | 確認日 |
|---|---|---|
元の言語の指定を省くと自動で判定し、応答に detected_source_language が入ること。用語集を使うときは元の言語の指定が必要で、用語集を5つまで指定できること。context が訳に影響するが訳されず、その文字数が料金の計算に入らないこと。formality が一部の言語だけで使えること | DeepL API: Translate text | 2026-10-06 |
| Make の DeepL のアプリに Translate a Text と Make an API Call があり、接続に DeepL API のアカウントと API キーが要ること | Make: DeepL | 2026-10-06 |
| Gmail のモジュールの Watch emails が新しいメールの受信で動き、送信元・件名などや Gmail の検索の書き方で絞り込めること | Make: Gmail modules | 2026-10-06 |
| Google Sheets のモジュールに Add a Row、Search Rows、Update a Row があること | Make: Google Sheets modules | 2026-10-06 |
| ルーターの経路が順に処理され、どの条件にも合わないデータをフォールバックの経路で処理できること | Make Help: Router | 2026-10-06 |
| Anthropic Claude のアプリに Create a Prompt があり、接続に API キーを使うこと | Make: Anthropic Claude | 2026-10-06 |
| Booking.com のメッセージの API が、メッセージと会話の取得と、テキストのメッセージの送信・返信を扱い、接続パートナーの開発者を対象としていること | Booking.com Connectivity: Understanding the Messaging API | 2026-10-06 |
予約の変更・取消・返金の扱いは、各予約サイトの規定と自社の予約の条件を確かめてください。 本記事は上の公開情報で確認できた範囲だけを扱っています。
実装ステータス:構成例。 公開仕様に基づいて設計した構成であり、当社で実際に構築・検証したものではありません。工数の数値はモデル条件による試算です。
自社の業務に使えるAI活用候補を整理します
このユースケース(UC-0567)についてのご相談はこちらから。
