Media > AI活用ユースケース > カスタマーサポート > 旅館・ホテルが修学旅行の受入れの依頼を受けたときに、過去の受入れの記録と反省記録から規模と行程の近いものを探し、食事・部屋割り・夜間の注意点を根拠付きで返す

旅館・ホテルが修学旅行の受入れの依頼を受けたときに、過去の受入れの記録と反省記録から規模と行程の近いものを探し、食事・部屋割り・夜間の注意点を根拠付きで返す

実装ステータス:構成例 技術的に実現可能な構成として設計したもの。自社未検証

修学旅行・教育旅行の受入れの依頼を受けたときに、過去の受入れの記録から学校の規模と行程の近いものを探し、当時の打合せメモと反省記録から食事・部屋割り・夜間の対応の注意点を、受入れ番号付きで返します。

サマリー
生成AI
ChatGPT/Claude/Gemini
AIサービス
Azure AI/Google Vertex AI/OpenSearch
対象業界
宿泊/飲食
対象部門
カスタマーサポート/営業
対象業務
情報検索/書類作成
主な課題
属人化している/引き継ぎができていない/期限・対応漏れが起きる
AIで行う処理
検索(RAG)
主な効果
品質標準化/属人化解消/教育コスト削減/検索時間短縮
導入難易度
★★★☆☆
実装レベル
本格構成
費用感
RAG・個別開発(大)
人間の確認
条件付き
現在工数
30h/月
AI導入後
8h/月
想定削減
73%
年間削減
264h
モデル条件による試算値です。実在企業の実績ではありません。

01導入前 / 導入後の業務フロー

導入前(Before)
  1. 旅行会社から依頼を受け、予約の台帳に人数・日程・食事の条件を記録する
  2. 同じ学校の過去の受入れか、規模の近い受入れを、担当の記憶と台帳の検索で探す
  3. 見つかった受入れの打合せメモと反省記録を開いて読む
  4. 今回の打合せで確かめる事項を一覧にし、旅行会社と学校に送る
  5. 確定した内容を、宴会・調理・フロントへの指示書にする
導入後(After)
  1. 自動予約の台帳の団体の記録と、打合せメモ・反省記録の新しいものを読み込む
  2. 自動Claude が打合せメモと反省記録を、場面ごと(食事・部屋割り・夜間・体調不良・その他)の注意点に分ける
  3. 自動生徒の名前や個人の健康の記載を、数と記号に置き換える
  4. 人受入れの準備の担当が、新しく付いた場面と注意点を週に1回まとめて確かめる
  5. 自動受入れごとに1件として、人数・学校の種別・到着の時刻・行程の特徴を付けて検索基盤に登録する
  6. 人担当が、予約の台帳の画面で「過去の受入れを見る」を押す
  7. 自動人数・時期が近いほど点数が高くなるように、学校の種別と行程の特徴で絞った過去の受入れを並べる
  8. 自動Claude が、上位の受入れの注意点から確認事項の一覧を書き、各行に受入れ番号を付ける
  9. 人担当が一覧を読み、反省記録で確かめてから、旅行会社と学校への確認事項にする
各工程の詳しい説明を読む
  1. 旅行会社から依頼を受け、予約の台帳に人数・日程・食事の条件を記録する
  2. 同じ学校の過去の受入れか、規模の近い受入れを、担当の記憶と台帳の検索で探す
  3. 見つかった受入れの打合せメモと反省記録を開いて読む
  4. 今回の打合せで確かめる事項を一覧にし、旅行会社と学校に送る
  5. 確定した内容を、宴会・調理・フロントへの指示書にする

(a)規模の近い受入れが探せない。 2番目で、台帳の検索は人数を「200名以上」のような区切りでしか引けません。区切りのすぐ外にある、最も参考になる記録が落ちます。

(b)反省記録が読まれない。 3番目で開くのは打合せメモで、反省記録は別のファイルです。「次は到着の遅れに備えて夕食を30分ずらせるようにする」と書いてあっても、次の担当には届きません。

(c)初めての学校の打合せが浅くなる。 同じ学校の記録があれば読みますが、初めての学校では何も読まずに打合せに臨みます。確認漏れは、初めての学校の受入れで多く出ます。

(d)担当の異動で経緯が消える。 学校ごとの「この学校は夜の点呼が遅い」「教員の部屋は生徒の階の端に」という経緯は、担当の記憶にあります。異動や退職のたびに薄れます。

取り込み(毎晩)

  1. 【自動】 予約の台帳の団体の記録と、打合せメモ・反省記録の新しいものを読み込む
  2. 【自動】 Claude が打合せメモと反省記録を、場面ごと(食事・部屋割り・夜間・体調不良・その他)の注意点に分ける
  3. 【自動】 生徒の名前や個人の健康の記載を、数と記号に置き換える
  4. 【人】 受入れの準備の担当が、新しく付いた場面と注意点を週に1回まとめて確かめる
  5. 【自動】 受入れごとに1件として、人数・学校の種別・到着の時刻・行程の特徴を付けて検索基盤に登録する

依頼と打合せの準備

  1. 【人】 担当が、予約の台帳の画面で「過去の受入れを見る」を押す
  2. 【自動】 人数・時期が近いほど点数が高くなるように、学校の種別と行程の特徴で絞った過去の受入れを並べる
  3. 【自動】 Claude が、上位の受入れの注意点から確認事項の一覧を書き、各行に受入れ番号を付ける
  4. 【人】 担当が一覧を読み、反省記録で確かめてから、旅行会社と学校への確認事項にする

3番目の置き換えを取り込みの段階で行うのが、この設計の分かれ目です。 打合せメモには、アレルギーのある生徒の名前や症状が書かれていることがあります。検索基盤とAIに渡るのは、「卵のアレルギー3名、うち1名は加工品も不可」のような数と区分だけにします。

9番目で担当が確かめるのは、一覧が過去の受入れの材料にすぎないためです。 同じ規模でも、今回の学校の要望や行程は違います。

02今回想定するシステム構成

構成図
【取り込み】予約の台帳/打合せメモ・反省記録(共有フォルダ)
   ▼【トリガー】毎晩
AWS Lambda ── 新しい記録の読み込み、生徒の名前と健康の記載の置き換え
   ▼
Claude API ── 場面ごとの注意点へ分ける
   ▼【人】場面と注意点の確認(週1回)
Amazon OpenSearch Service(受入れの索引:人数、種別、到着の時刻、行程、注意点、本文)

【依頼と打合せの準備】担当が「過去の受入れを見る」を押す
   ▼
Amazon OpenSearch Service
   ├─ bool:学校の種別・行程の特徴の絞り込み、注意点の言葉
   ├─ function_score(gauss):人数と実施日が近いほど高い点数
   └─ highlight:根拠になった箇所の抜き出し
   ▼
Claude API ── 確認事項の一覧(場面ごと、各行に受入れ番号)
   ▼
予約の台帳(確認事項の欄)
役割想定する製品代替候補
検索基盤Amazon OpenSearch Service(function_score の減衰の関数、bool クエリ、highlight)Azure AI Search、Vertex AI Search(Agent Search)
生成AIClaude API(記録の分解と、確認事項の一覧の作成)OpenAI API、Gemini API
連携AWS Lambda(取り込み、検索の呼び出し、台帳への返却)AWS Step Functions
保管Amazon S3(取り込みの記録と、確認事項の一覧の版)―
台帳既存の予約の台帳と共有フォルダ―

予約の台帳には、確認事項の欄にだけ返します。 宴会・調理・フロントへの指示書は、担当が打合せの結果から作ります。AIの一覧から指示書を直接作ることはしません。

減衰の関数は、基準からの距離で点数を下げます。 公式のドキュメントでは、origin(基準の値)から offset の範囲は点数が1、そこから scale だけ離れたところで点数が decay(既定は0.5)になるとされています。数値の項目にも日付の項目にも使えます。

03どうやって実装するのか

Step1

処理の起点を決める

取り込みと検索で、起点が2つあります。

取り込みは毎晩です。 打合せメモは打合せの後、反省記録は受入れの翌週までに担当が書きます。次の依頼の準備に載れば足ります。 予約の台帳で「受入れ済み」になった団体のうち、反省記録のファイルが無いものは、担当に書くよう知らせます。

場面と注意点の確かめは週に1回です。 毎晩の取り込みでAIが付けた場面のうち、新しい注意点の言い回しと、自信が低いと書かれたものを一覧にし、受入れの準備の担当がまとめて直します。

検索は、担当が予約の台帳の画面で「過去の受入れを見る」を押したときに動きます。 押す時機は2回です。依頼を受けたとき(人数と日程が仮の段階)と、詳細の打合せの前(人数・行程・食事の条件が確定した段階)です。確定した後の検索のほうが、近い受入れが正確に並びます。

Step2

入力データを集める

データ中身取得元
予約の台帳受入れ番号、学校の種別(小・中・高)、生徒の人数、教員の人数、到着・出発の日時、部屋数、食事の条件、旅行会社予約の台帳
打合せメモ到着の時刻、食事の時刻と形式、アレルギーの数と食材、部屋割りの方針、夜間の巡回、体験の行程共有フォルダ
反省記録当日に起きたこと、次への申し送り共有フォルダ
場面の一覧食事、部屋割り、夜間、体調不良、到着・出発、その他受入れの準備の担当で用意する一覧

質を決めるのは、反省記録です。 打合せメモは「何を決めたか」で、反省記録は「決めたとおりにいかなかったこと」です。次の受入れに効くのは後者です。 反省記録の無い受入れは、検索の点数を下げて並べます。

生徒の人数は、必ず数値で持たせます。 打合せメモの「2年生約240名」から数値を取り出し、取り出せないものは取り込みで止めます。 理由は前処理の項で書きます。

Step3

データの取得方法を決める

予約の台帳の団体の記録と、学校のフォルダの打合せメモ・反省記録を、Lambda が読みます。生徒の名前は、名簿の形で書かれていれば機械的に外し、文中に出てくる名前は Claude に挙げさせて置き換えます。

索引の項目は、次のように持たせます。

項目型使いどころ
stay_idkeyword受入れ番号。一覧の根拠
school_typekeyword小・中・高。絞り込み
studentsinteger生徒の人数。減衰の関数の対象
arrival_hourinteger到着の時刻(時)。夕食の段取りの絞り込み
stay_datedate実施日。新しさの減衰の対象
featureskeyword行程の特徴(体験学習あり、班別行動、夕食後の行事、連泊)
noteskeyword(複数の値)注意点の区分(配膳の遅れ、階の分け方、夜間の付き添い など)
memo_text/review_texttext打合せメモと反省記録の本文。言葉での検索
has_reviewboolean反省記録の有無

検索は、次のように組みます。

GET /school_stays/_search
{
  "size": 6,
  "query": { "function_score": {
    "query": { "bool": {
      "filter": [ { "term": { "school_type": "中学" } },
                  { "exists": { "field": "students" } } ],
      "should": [ { "terms": { "features": ["体験学習あり", "夕食後の行事"] } },
                  { "range": { "arrival_hour": { "gte": 17 } } },
                  { "term": { "has_review": true } } ]
    } },
    "functions": [
      { "gauss": { "students": { "origin": 240, "offset": 20, "scale": 60, "decay": 0.5 } } },
      { "gauss": { "stay_date": { "origin": "now", "offset": "365d", "scale": "1095d", "decay": 0.5 } } }
    ],
    "score_mode": "multiply", "boost_mode": "multiply"
  } },
  "highlight": { "fields": { "review_text": { "fragment_size": 80, "number_of_fragments": 2 } } }
}

人数の減衰は、240名から前後20名までを満点とし、さらに60名離れた180名と300名で点数が半分になります。 実施日は1年以内を満点とし、さらに3年離れると半分です。10年前の記録も消えずに並びますが、同じ規模の新しい記録より下になります。

offset と scale の値は、部屋割りの単位で決めます。 このホテルでは1フロアにおよそ40名が入るので、前後20名は同じフロアの数で収まり、60名の差はフロアが1つ増えるか減る差です。フロアの数が変われば、部屋割りと夜間の見回りの前提が変わります。 客室の数や配置が違うホテルでは、この幅を自分の館に合わせて決め直します。

2つの関数の点数は掛け合わせます(score_mode の既定は multiply)。 人数が近くても古い記録、新しくても人数の違う記録は、どちらも下がります。検索の点数とも掛け合わせる(boost_mode の既定も multiply)ので、行程の特徴が重ならない記録も下がります。

Step4

AIへ渡す前に整形する

  1. 人数を数値にする … 打合せメモと台帳から生徒の人数を数値で取り出します。取り出せない記録は取り込みで止めます
  2. 場面ごとに分ける … 打合せメモと反省記録を、場面の一覧の区分ごとの注意点にします
  3. 生徒の名前と健康の記載を置き換える … 名前は外し、アレルギーや持病は「食材と人数」「区分と人数」にします
  4. 到着の時刻を取り出す … 打合せメモと台帳から時刻を取り出し、遅れた実績があれば反省記録から拾います
  5. 行程の特徴を付ける … 体験学習、班別行動、夕食後の行事、連泊を、選択肢から付けます

1番目で止めるのは、減衰の関数の仕様のためです。 公式のドキュメントでは、項目の無い文書には、減衰の関数は点数1を返すとされています。人数の無い記録が、満点として上位に並びます。検索の側でも exists で人数のある記録に絞り、二重に防ぎます。

3番目は、取り込みの最初の段階で行います。 アレルギーの記載は、検索に要るのは「卵3名」という数と区分です。どの生徒かは、受入れの準備には要りません。 実施の直前に学校から届く個別の情報は、この仕組みに入れず、調理の責任者が直接扱います。

Step5

AIに処理させる

AIの仕事は2か所です。 取り込みで記録を場面ごとの注意点に分けることと、検索の結果から確認事項の一覧を書くことです。探すことと並べることは検索基盤が行います。

させること中身
記録の分解打合せメモと反省記録を、場面ごとの注意点に分ける。場面は一覧から選ぶ
確認事項の一覧の作成上位の受入れの注意点から、今回の打合せで確かめる事項を場面ごとに並べる
根拠の添付各行に、根拠の受入れ番号と実施日を付ける
反省の書き分け「決めたとおりにいかなかったこと」に由来する行に印を付ける
させないこと理由
アレルギーへの対応の可否や方法の判断調理の責任者と学校・保護者が決める
部屋割りの案の作成学校の方針と生徒の事情で決まる
夜間の体調不良への対応の指示医療の判断を含む。学校と決めた手順による
根拠の無い注意点の追加一般的な団体の受入れの知識で一覧を埋めない
学校の評価「この学校は対応が難しい」のような記述は残さない

最初の行が、いちばん外せない線です。 一覧に「卵の除去食で対応可能」と書かれると、担当はそのまま学校に伝えたくなります。対応できるかは、今回の献立と厨房の体制で、調理の責任者が決めます。

最後の行も大事です。 反省記録には「先生方の協力が得られなかった」のような書き方が残っていることがあります。確認事項の一覧に学校への評価が載り、それが旅行会社に送られると、取引の関係に響きます。

Step6

指示内容を固定する

あなたはホテルの営業部で、修学旅行の受入れの打合せに向けて、確認事項の一覧を作る係です。
渡された検索結果だけを根拠にしてください。一般的な団体の受入れの知識で補わないでください。

【今回の受入れ】学校の種別:{school_type} 生徒:{students}名 教員:{teachers}名
  到着:{arrival} 行程の特徴:{features} 食事の条件:{meal_terms}
【検索結果】過去の受入れごとに、受入れ番号、実施日、人数、到着の時刻、
  場面ごとの注意点(打合せメモ由来/反省記録由来)

【確認事項の一覧に書くこと】
1. 場面(食事・部屋割り・夜間・体調不良・到着と出発)ごとに、確かめる事項を1行ずつ
2. 各行に根拠の受入れ番号と実施日
3. 反省記録に由来する行には from_review を true にする
4. 同じ注意点が複数の受入れにあれば、まとめて1行にし、受入れ番号を並べる

【厳守事項】
- アレルギーに対応できるか、どう対応するかを書かないでください。
  「アレルギーの食材と人数を、いつまでに学校から受け取るか」のような確認の事項にとどめてください。
- 部屋割りの案を作らないでください。
- 体調不良のときの医療的な対応を指示しないでください。
- 検索結果に無い注意点を足さないでください。根拠の受入れ番号の無い行は書かないでください。
- 学校や教員を評価する言葉を書かないでください。
- 生徒の名前を書かないでください。

「確認の事項にとどめる」を例付きで書くのは、AIが対応の方法まで書きたがるためです。 「卵の除去食を用意する」は対応の方法で、「卵のアレルギーの生徒の人数と、加工品も不可かを、実施の何日前までに受け取るか」は確認の事項です。後者だけを書かせます。

検索結果は、Claude の検索結果ブロックで渡します。 受入れ1件を1つの search_result にし、source に受入れ番号を入れます。引用を有効にすると、答えの文に、どの受入れのどの部分を引いたかが付きます。引用は既定で無効で、1つのリクエストの検索結果はすべて同じ設定にします。

Step7

出力形式を固定する

Claude API の構造化出力で、次の形のJSONを受け取ります。 output_config.format に json_schema を指定し、スキーマは additionalProperties: false で閉じます。

{
  "stay_id": "S-2027-0514-02",
  "checklist": [
    { "scene": "食事",
      "item": "到着が予定より遅れた場合に、夕食の開始を何分までずらせるかを学校と決めておく",
      "from_review": true,
      "evidence": [ { "stay_id": "S-2025-0521-01", "stay_date": "2025-05-21" },
                    { "stay_id": "S-2024-1016-03", "stay_date": "2024-10-16" } ] },
    { "scene": "夜間",
      "item": "体調不良の生徒に教員が付き添う間、生徒の階の見回りを誰が行うかを決めておく",
      "from_review": true, "evidence": [ { "stay_id": "S-2023-0607-02", "stay_date": "2023-06-07" } ] }
  ],
  "references": [ { "stay_id": "S-2025-0521-01", "students": 236, "arrival_hour": 18 } ]
}

1つ目の理由は、scene で打合せの順番どおりに並べられることです。 担当は一覧をそのまま打合せの議題にできます。

2つ目は、from_review で反省に由来する行を目立たせられることです。 打合せメモから来た行は「前にも決めたこと」、反省記録から来た行は「前にうまくいかなかったこと」です。担当が先に読むべきは後者です。

3つ目は、references で参考にした受入れの規模を示せることです。 人数と到着の時刻が並んでいれば、担当はどの記録がどれだけ今回に近いかを一目で見られます。

Step8

システムへ連携する

つなぎ先方式内容
予約の台帳毎晩の読み取り/画面からの呼び出し団体の記録を読み、確認事項の一覧を返す
共有フォルダ毎晩の読み取り打合せメモと反省記録
Amazon OpenSearch Service索引への登録と検索受入れの索引、function_score と highlight
Claude APILambda からの呼び出し記録の分解、確認事項の一覧
Step9

人が確認する

この構成の確認は、必須です。 確認事項の一覧は、学校と旅行会社に送る打合せの材料になります。

  1. 場面と注意点を週に1回確かめる … 受入れの準備の担当が、新しい言い回しと自信の低いものを直します
  2. 一覧を反省記録で確かめる … evidence の受入れ番号から反省記録を開き、要点が合っているかを見ます
  3. 食事の行を調理の責任者に回す … 食事とアレルギーに関わる行は、調理の責任者に見てもらってから学校に送ります
  4. 学校と旅行会社に送る形にする … 他の学校が特定される書き方を外し、確認の事項の形に書き直します

1件あたり16分を目安にします。 同じ学校の記録があれば短く、初めての学校や連泊の受入れは長くなります。

3番目を省かないでください。 食事の行は、確認の事項の形で書かれていても、何をいつまでに受け取れば厨房が間に合うかは、調理の責任者にしか分かりません。 「実施の2週間前まで」と書いた行が、厨房の仕入れの都合では3週間前でないと間に合わないことがあります。学校に送る前に、期限の数字を調理の責任者に直してもらいます。

Step10

例外に対処する

起きること対応
人数を数値で取り出せない取り込みで止め、担当に台帳の人数を確かめてもらう
同じ種別の記録が少ない種別の絞り込みを外し、「種別が違う」旨を付けて出す
反省記録が無い打合せメモだけの受入れとして、点数を下げて並べる
生徒の名前や症状が置き換えられずに残ったその記録を索引から外し、置き換えをやり直してから入れ直す
人数が打合せの途中で大きく変わった担当がもう一度「過去の受入れを見る」を押す
改装で部屋の配置が変わった改装の前の記録の部屋割りの行に「改装前」の印を付ける
Claude の呼び出しに失敗した上位の受入れの一覧と強調表示をそのまま出す
同じ学校が毎年来る人数や時期が違っても、同じ学校の直近の受入れを別の枠で必ず出す

最後の行は、検索の点数とは別に出します。 同じ学校の前回の受入れは、規模が違っても、教員の方針や生徒の様子の手がかりとして最も役に立ちます。点数の順だけで並べると、人数が大きく変わった年に埋もれます。

6行目は、忘れやすい例外です。 階や非常階段の位置が変わると、部屋割りの反省は前提ごと使えなくなります。 改装の日を一覧に持たせ、それより前の記録の部屋割りの行に印を付けます。

Step11

記録を残す

  • 取り込みの件数、止めた記録とその理由、置き換えの結果
  • AIが付けた場面と注意点、担当が直したもの
  • 依頼ごとの検索の条件、返ってきた受入れ番号、確認事項の一覧の版
  • 一覧を確かめた担当、調理の責任者が見た日時
  • 受入れの後の反省記録に、一覧に載っていた注意点がまた書かれていないか

最後の行が、この構成の効き目を測る材料です。 一覧に載っていたのに同じことが起きたなら、確かめ方の問題です。載っていなかったことは、次の取り込みで新しい注意点として入ります。

04実装レベルの3段階

最小構成:記録をAIサービスに貼って場面ごとの注意点を書き出させる / 注意点の書き出しの確認
半自動化:上記+受入れの索引で、人数と時期の近い受入れを画面で出す / 過去の受入れの探し出し
本格構成:上記+確認事項の一覧の作成、予約の台帳への返却 / 打合せの材料づくりの全体

半自動化で、①の探す時間は大きく減ります。 ただし反省記録を読んで確認事項を書く作業は人が行います。本格構成で1件16分になり、この段階が本記事の想定です。 段階を飛ばさないでください。 半自動化を1か月使うと、人数の取り出しに失敗する記録の型と、反省記録の無い受入れが先に見つかります。そこを直してから確認事項の一覧を足すほうが、担当が一覧を信用しやすくなります。

05工数削減シミュレーション

前提値(モデル条件)
対象人数
6 名
月間件数
30 件
1件あたり現在時間
60 分
1件あたり導入後時間
16 分
現在  30件 × 60分 ÷ 60 = 30 時間/月
導入後 30件 × 16分 ÷ 60 = 8 時間/月
月間削減時間
22h
削減率
73%
年間削減時間
264h
年間金額換算(時間単価3,000円)
79万円
モデル条件による試算であり、実際の効果は業務内容・運用方法によって異なります。

自社条件で導入効果を整理したい方へ

このユースケースを自社に当てはめた場合の前提値と削減見込みを、業務ヒアリングをもとに整理します。

AI活用について相談する

06向いている企業・向いていない企業

向いている
  1. 修学旅行・教育旅行の団体を年に数百校受け入れる観光地のホテル・旅館で、旅行会社からの手配の依頼と、実施前の詳細の打合せが毎月数十件ある場合。過去の受入れの打合せメモと反省記録を残しているが、探すのが担当の記憶頼みで、同じ失敗を担当を変えて繰り返している場合。営業の担当の異動や退職で、学校ごとの経緯が引き継がれにくい場合。
向いていない
  1. 団体の受入れが年に数校で、毎回同じ担当が対応している場合。過去の受入れの記録を残しておらず、予約の台帳しか無い場合。なお、食物アレルギーへの対応の可否と方法、生徒の体調の急変への対応は、調理の責任者と学校・保護者が決めるもので、この構成はそれを代わりに行いません。

07最小構成で試す方法

  1. 規模のよく似た過去の受入れを10件選び、打合せメモと反省記録を集める(生徒の名前は消す)
  2. 手元のAIサービスに記録を貼り、「食事・部屋割り・夜間・体調不良・到着と出発に分けて、注意点を書き出してください。反省記録から来たものに印を付けてください」と指示する
  3. 出てきた注意点を、次に来る同じ規模の受入れの打合せの前に、担当に読んでもらう
  4. 打合せの後、役に立った行と、要らなかった行を担当に聞く
  5. 受入れの後の反省記録と、注意点を突き合わせる
出てきた内容判断
反省記録の注意点が、打合せで確かめられた索引と検索の構築に進む
注意点が一般論ばかり記録の書き方の問題。反省記録の様式を決めるのが先
部屋割りの行が使えない改装や部屋の配置の違い。改装の日の印で直る

1行目が出たら、どの行が打合せで役に立ったかを担当に必ず聞いてください。 役に立った行の場面と言い回しが、場面の一覧と様式を決めるときの手本になります。

2行目が出ることは珍しくありません。 「特に問題なし」だけの反省記録では、何も分かりません。その場合は、反省記録の様式を「場面」「起きたこと」「次への申し送り」の3つの欄にし、数か月ためてから試します。

08実装時につまずきやすいポイント

問題対策
人数の区切りのすぐ外の記録が落ちる区切りではなく gauss の減衰でなだらかに点数を下げる
人数の無い記録が上位に並ぶ項目の無い文書は点数1。取り込みで止め、exists でも絞る
古い記録が上位を占める実施日にも減衰をかけ、人数の点数と掛け合わせる
反省記録の無い受入ればかり並ぶhas_review を should に入れて上げる
AIがアレルギーの対応方法を書く確認の事項にとどめる指示を例付きで書く
生徒の名前が索引に残る取り込みの最初で置き換え、残っていれば止める
改装前の部屋割りの反省を使う改装の日で印を付ける
学校への評価が一覧に載る評価の語を禁じ、送る前に人が書き直す

2行目が、テストで気づきにくい失敗です。 人数を数値で持たない記録が数件あるだけで、その記録が毎回上位に並び、担当は理由が分からないまま一覧を信用しなくなります。

5行目は、指示を書いた後も、出力を見続けて確かめます。 反省記録に「卵の除去食で対応した」と書かれていると、AIはそれを注意点として写したくなります。確認の事項の形に直っているかを、週1回の確かめで見ます。

1行目が、この構成を作る理由そのものです。 人数の区切りで引くだけなら、台帳の検索で足ります。区切りの外にある、いちばん近い記録を拾えることが、過去の受入れを使う仕組みとしての価値です。

09セキュリティ・AIガバナンス上の注意点

この構成で扱うデータ: 学校の団体の受入れの経緯、打合せメモ、反省記録です。打合せメモには、生徒のアレルギーや持病など、健康に関わる記載が含まれることがあります。

  1. 生徒の健康の情報を索引に入れない … 入れるのは食材と人数のような数と区分だけで、どの生徒かは入れません
  2. 個別の情報はこの仕組みの外で扱う … 実施の直前に学校から届く個別のアレルギーの情報は、調理の責任者が直接扱います
  3. 対応の判断をAIに書かせない … アレルギーへの対応、部屋割り、体調不良への対応は、人が学校と決めます
  4. 他の学校の情報を送らない … 学校と旅行会社に送る一覧からは、他の学校が特定される書き方を外します
  5. 外部のAIに渡す範囲を絞る … Claude に渡すのは、置き換え済みの注意点と、人数などの区分だけです
  6. 生徒が使う仕組みにしない … 使うのはホテルの担当だけで、生徒や保護者が入力する画面は作りません

6番目は、使う生成AIの規約にも関わります。 生成AIのサービスには、未成年が使うサービスでの利用に条件を付けているものがあります。この構成は大人の従業員だけが使う業務の仕組みとして作り、生成AIを替えるときは、その規約を読み直します。

反省記録そのものの扱いも決めておきます。 反省記録は担当が率直に書くほど役に立ちますが、率直に書かれたものほど、外に出たときに困る書き方が混ざります。 原本は宿泊部の中だけで読めるようにし、検索基盤に入るのは場面ごとの注意点にした後のものだけにします。

誤りが起きた場合のリスクは、生徒の健康の情報を不要な範囲に広げることと、過去の対応を今回も対応できるかのように学校へ伝えることの2つです。 前者は取り込みの置き換えと個別の情報の分離で、後者は判断を禁じる指示と調理の責任者の確認で防ぎます。

10まず何から始めるか

1週目:反省記録の中身を数える

過去3年の受入れから50件を選び、反省記録に「起きたこと」と「次への申し送り」が書かれている割合を数えます。半分を下回るなら、様式を先に作ります。

2週目:場面の一覧と様式を決める

営業と宿泊部、調理の責任者と、場面の一覧と反省記録の様式を決めます。行程の特徴の選択肢と、改装の日の一覧も、ここで決めます。

3週目:10件で試す

最小構成で、規模の近い10件の注意点を書き出し、次の打合せの前に担当に読んでもらいます。打合せの後に、役に立った行を聞きます。

4週目:索引と検索を作る

過去の記録を取り込み、人数と実施日の減衰で並ぶ画面を作ります。上位の結果を担当に見てもらい、offset と scale の値を館の部屋割りに合わせて直します。人数を取り出せない記録の数を数えます。

2か月目: 確認事項の一覧を足し、営業の担当全員で使います。3か月目以降: 受入れの後の反省記録に、一覧に載っていた注意点がまた書かれていないかを毎月数えます。初めての学校の打合せでも、過去の受入れの反省を担当が必ず読んでから臨めるようになった時点で、この構成は完成です。


11関連ユースケース

12この仕組みを理解するための記事

13技術仕様の確認日・参考情報

技術仕様確認日:2026-10-08/最終更新:2026-10-08
確認した内容情報源確認日
減衰の関数(gauss・exp・linear)が origin から offset の範囲で点数1、scale 離れたところで decay(既定0.5)になり、数値と日付の項目に使えること。項目の無い文書には点数1を返すこと。score_mode と boost_mode の既定が multiply であることOpenSearch Documentation: Function score query2026-10-08
強調表示の fragment_size(既定100)と number_of_fragments(既定5)OpenSearch Documentation: Highlight query matches2026-10-08
消費者庁が外食・中食の事業者向けに、食物アレルギーの誤食の事例と注意点、緊急時対応を扱うパンフレットを出し、消費者向けの資料で原因食物の意図しない混入(コンタミネーション)への注意を示していること消費者庁: 外食・中食での食物アレルギーについて2026-10-08
検索結果ブロック(source・title・content)で引用付きの答えが返ること。引用が既定で無効で、1つのリクエストの検索結果はすべて同じ設定にすることClaude Docs: Search results2026-10-08
構造化出力を output_config.format に json_schema を指定して受け取れること。additionalProperties は false だけが使えることClaude Docs: Structured outputs2026-10-08

食物アレルギーへの対応と、生徒の体調への対応は、調理の責任者と学校・保護者が決めてください。 本記事は公開仕様で確認できた範囲だけを扱っています。

実装ステータス:構成例。 公開仕様に基づいて設計した構成であり、当社で実際に構築・検証したものではありません。工数の数値はモデル条件による試算です。

自社の業務に使えるAI活用候補を整理します

このユースケース(UC-0873)についてのご相談はこちらから。

AI活用について相談する
目次