飲食店メニューをAIでデータ化する検証
価格・カテゴリ・コース内容とプロンプト
メニューのデータ化は、ただの文字起こしでは足りません。料理のカテゴリ分けや、コースの「〜付き」という条件まで保てないと、デリバリー登録や多言語化に使えないからです。文字のはっきりした標準カフェメニューと、暗い背景に金文字の装飾ディナーメニューで、構造ごと読めるか試しました(架空サンプル)。
結果1:標準的なカフェメニュー → 全項目正確
FOOD/DRINK/DESSERTの3カテゴリ、計8品の料理名と価格を、カテゴリ構造を保ったまま正確に読み取れました。
結果2:暗背景+金文字の装飾ディナー → 条件も正確
黒い背景に金色の文字という装飾的なメニューでも崩れませんでした。コースの付帯条件(ランチコース1,800円=「前菜・本日のメイン・デザート・ドリンク付」)、単品価格、さらに追加オプション(+ドリンクバー400/+デザート600)まで、正確に拾えています。
わかったこと
- カテゴリ構造を保って読める。どの料理がどの分類かを取り違えなかった。
- コースの付帯条件を拾える。「〜付」の内容まで料理名とセットで抽出した。
- 暗背景・金文字でも読める。装飾的な配色・書体に耐性があった。
2026年10月の再測定:2枚を4条件で読み取らせた結果
2枚のメニュー画像と正解表(docs/menu-ocr-answer-key.md)を先に用意し、答えを知らないAI(Claude Opus 5.5とHaiku 4.5。画像を開く以外のツールは使わせない)に、画像1枚ずつ別々に読ませました。依頼は「このメニューの内容をデータ化してください」だけの場合と、下のプロンプトを使う場合の2通りで、各条件1回です。架空のメニュー2枚で、ChatGPT・Gemini・Sonnetなどは試していません。
| 条件 | 品名・価格の誤読(15行) | 付帯条件の欠け | 追加オプションの対象 | 税込・税抜 |
|---|---|---|---|---|
| Opus・プロンプトあり | 0件 | なし | 「対象不明」と明記 | 全行に「表示なし」 |
| Opus・ただ頼んだ | 0件 | なし | 「単品に付ける追加として扱いました」と書き、データも単品の中に入れた | 「書かれていません」と注記 |
| Haiku・プロンプトあり | 0件 | なし | 「対象不明」と明記 | 料理の13行に「表示なし」(追加オプション2行は記載なし) |
| Haiku・ただ頼んだ | 0件 | なし | 独立した「オプション」の区分にし、「単品に付くのか、コースへの追加なのかは画像からは判断できません」と書いた | カフェの1枚だけ「記載がない」と書き、ディナーでは触れず |
品名と価格の読み間違いは、4条件とも0件でした。条件で差が出たのは、メニューに書かれていないことの扱いです。ただ頼んだOpusは、ドリンクバーとデザートの追加を単品の側に入れました。画像からは対象が分からないのにデータの置き場所を単品と決めた点を、書き足しの1件に数えました(補足では「どの料理に付けられるかはメニューに書かれていません」とも添えています)。プロンプトで「対象不明」「表示なし」と書くよう指示した2条件は、推測の書き足しがありませんでした。
この表の読み間違い0件は、文字がはっきりした2枚での結果です。6月の検証の回答は原文を残していないため、10月の表と6月の結果を並べて比べてはいません。
人が確認する観点
- 価格の桁と数:料理の数と価格の数が合っているか。
- 追加オプションの対象:「+ドリンクバー」などが、どの料理に付くとデータに書かれているか。メニューに無い限り、対象を決めていないか。
- 税込・税抜:メニューに表示が無いのに、どちらかと書いていないか。
- 写真や手書きのメニュー:今回は試していないので、元の画像と1行ずつ見比べる。
メニューや商品のメモを読み取ったあと、ECの商品説明文に書き起こす場面は商品説明文の書き方にあります。商品名・内容量・価格、原材料、特長のほか、メモに無い効能や実績の書き足しを確かめています。
メニュー表のデータ化プロンプト(コピーして使えます)
ChatGPT・Gemini・Claudeなど、画像を読み込めるチャットAIにメニューの写真と一緒に貼り付けて使う形です。当社が結果を確かめたのはClaudeだけで、ChatGPT・Geminiでの精度は検証していません。
添付したメニューの画像を、表にしてください。 列:カテゴリ/料理名/価格/内容・付帯条件(「〜付」など)/備考 ルール: - カテゴリの見出し(FOOD、単品 など)の下にある料理は、そのカテゴリに入れる - コースの内容や「ドリンク付」などの条件は、料理名とは分けて「内容・付帯条件」に書く - 「+ドリンクバー」のような追加オプションは別の行にし、どの料理に付けられるかがメニューから読み取れない場合は「対象不明」と書く - 価格に税込・税抜の表示が無ければ「表示なし」と書き、推測しない - 最後に、料理の数と価格の数が合っているかを確かめる
2026年9月の再確認(Claude Opus 5.5)
上のプロンプトを使い、この記事で見せた2枚のメニュー画像を、もう一度AIに読み取らせました。
- カフェのメニュー3カテゴリ8品、ディナーのコース2つと単品3品は、料理名・価格・コースの内容まで6月と同じく一致しました。
- 「+ドリンクバー 400/+デザート 600」は「対象不明」とした。単品の欄の下にありますが、コースにも付けられるのかはメニューからは分からないためです。
- 税込・税抜は「表示なし」と返しました。どちらのメニューにも表示がありません。
答えを知っている同じサンプルでの再確認なので、初めて見るメニューでの精度を示すものではありません。
使うときのコツ
- 分からないことを「分からない」と書かせる。オプションの対象や税の表示は、メニューに書かれていないことが多く、AIが補うと誤った情報が載ります。
- 料理の数と価格の数を照らし合わせる。写真と重なった行や、装飾で読みにくい行の抜けに気づけます。
- 予約サイトや多言語メニューに載せる前は、お店の人が確認する。価格の誤りは、そのままお客様とのトラブルになります。
まとめ
どの料理がどの分類かを取り違えませんでした。コースの「〜付」の中身も、料理名とセットで拾えました。暗背景+金文字の装飾フォントも読めました。ここまで読めれば、デリバリーサービスへの登録、多言語のメニュー作り、価格表の整理といった作業の下準備に使えます。崩れやすいのは写真に重なる白文字・手書き黒板・斜め撮影です。大量にデータ化するなら、価格の桁や通貨の妥当性チェックを併用するのが安全です。
よくある質問
メニューのカテゴリやコースの付帯条件も、AIは保てますか?
当社の検証では、FOOD・DRINK・DESSERTの3カテゴリ計8品の料理名と価格を、カテゴリごとに正確に読み取りました。ディナーメニューでは、ランチコース1,800円の「前菜・本日のメイン・デザート・ドリンク付」という付帯条件も料理名とセットで抽出し、追加オプション(+ドリンクバー400円、+デザート600円)も読めました。
暗い背景に金文字のメニューも読めますか?
黒い背景に金色の文字という装飾的な架空のメニューでも、崩れずに読めました。ただし、どちらもHTMLで作った文字がはっきりしたメニューでの結果です。
どんなメニューだと読み取りが崩れやすいですか?
料理写真の上に白文字が重なるメニュー、筆記体や特殊書体の強い装飾フォント、黒板に手書きされたチョークのメニュー、ラミネートのテカリなどが崩れやすいと考えられますが、今回は実測していません。デリバリー登録などに使う前に、料理の数と価格の数が合っているか、元の写真と見比べて確かめます。
合同会社フューチャープロンプト(AIプロダクト開発・業務自動化/東京・渋谷)が2026年6月に実施した一次検証です。2026年9月25日に、同じサンプルをClaude(Opus 5.5)で再確認し、使ったプロンプトと結果を追記しました。マルチモーダル生成AI(Claudeを使用)に実際のサンプルを処理させ、結果を自社で記録しました。当社は「今日の一皿」「LLM News」「資格問題ドリル」などのAIプロダクトを自社開発・本番運用しています。会社の詳細はトップページをご覧ください。
検証の進め方は実測の進め方をご覧ください。
メニュー・カタログのデータ化と多言語化のご相談
合同会社フューチャープロンプトは、メニューやカタログのAIデータ化を、構造の保持・妥当性チェック・多言語対応まで含めて、御社の業務に合わせて設計・構築します。
お問い合わせ →