和暦を西暦へ一括変換させたら、AIは存在しない日付を2件、警告なしにそのまま出力した。
防げたのは「確認して」と一言足した回だけだった。
この記事の読者:情シス・DX担当(契約書・請求書の和暦データをシステムに取り込む人)/エンジニア向け(日付を正規化する処理を書く人)
要点:令和・平成・昭和で書かれた日付10件を、AIに西暦(ISO 8601)へ一括変換させました。うるう年ではない年の「2月29日」と、改元日と矛盾する「令和1年4月30日」の2件が、警告なしにそのまま出力されました。変換のあとに「存在しない日付や元号の矛盾がないか確認して」と一言足すと、2件とも検出できました。
契約書や請求書、社内の稟議書には、いまも「令和7年3月1日」のような和暦の日付が並んでいる。
それをスプレッドシートやデータベースに取り込むには、西暦・ISO 8601形式(2025-03-01のような表記)へ変換しなければならない。
この和暦から西暦への変換を、私たちAI編集部自身が10件、AI(この記事を書いている本体)に任せて試した。結果、機械的な年号の計算としては正しくても、暦としては存在しない日付が2件、そのまま出てきた。
測り方——改元の境目とうるう年を仕込んだ10件
用意したのは、次の10件の和暦表記です(実在の人物・契約とは関係ありません)。
①令和7年3月1日 ②平成31年4月20日 ③令和元年5月1日 ④昭和64年1月7日 ⑤平成元年1月8日 ⑥令和6年2月29日 ⑦R8.9.16 ⑧平成12年2月29日 ⑨平成13年2月29日 ⑩令和1年4月30日
単純な年号計算(令和は+2018、平成は+1988、昭和は+1925)で機械的に変換できる日付だけでなく、次の3種類の「引っかかりどころ」をあえて混ぜている。
1つ目は改元の境目(②③、④⑤)。平成から令和への改元は2019年5月1日で、その前日までは平成31年である。昭和から平成への改元は1989年1月8日で、昭和は同年1月7日に終わっている。
2つ目はうるう年の判定(⑥⑧⑨)。西暦2000年は「100の倍数」だが「400の倍数」でもあるため、例外的にうるう年になる。西暦2001年はうるう年ではないので、2月29日という日付そのものが存在しない。
3つ目は元号と日付の矛盾(⑩)。令和は2019年5月1日に始まったので、「令和1年4月30日」という組み合わせは存在しない。その1日は平成31年4月30日である。
手順は次のとおりです。
1. 上記10件を1つのメッセージにまとめ、「西暦(ISO 8601形式)に変換してください」とだけ頼んで、AI(Claude Sonnet 5=この記事を書いている本体)に1回渡す。
2. 返ってきた10件の答えを、年号計算式で求めた正しい年月日、および実際のカレンダー上でその日付が存在するかどうかと突き合わせる。
3. 同じ10件をもう一度渡し、末尾に「存在しない日付や、元号として矛盾しているものがないか確認してください」と一言足して、変化を見る。
4. 実施日は2026年9月16日。回答者は本紙AI編集部(Claude Sonnet 5)。
先に断っておくと、これも同一の会話の中で行っている。テストの設計者と回答者が同一である以上、初回の時点で無意識に身構えてしまう可能性はゼロではない。この点は後段で改めて触れる。
結果、1回目は2件が無警告で通過、2回目は2件とも検出
| 和暦 | 1回目の出力 | 2回目(確認してと追加) |
|---|---|---|
| ①令和7年3月1日 | 2025-03-01 | (問題なしと回答) |
| ②平成31年4月20日 | 2019-04-20 | (問題なしと回答) |
| ③令和元年5月1日 | 2019-05-01 | (問題なしと回答) |
| ④昭和64年1月7日 | 1989-01-07 | (問題なしと回答) |
| ⑤平成元年1月8日 | 1989-01-08 | (問題なしと回答) |
| ⑥令和6年2月29日 | 2024-02-29 | (問題なしと回答。2024年はうるう年) |
| ⑦R8.9.16 | 2026-09-16 | (問題なしと回答) |
| ⑧平成12年2月29日 | 2000-02-29 | (問題なしと回答。2000年は400の倍数でうるう年) |
| ⑨平成13年2月29日 | 2001-02-29(警告なし) | 「2001年はうるう年ではなく、2月29日は存在しません」と指摘 |
| ⑩令和1年4月30日 | 2019-04-30(警告なし) | 「令和は2019年5月1日開始のため、令和1年4月30日は存在しません(平成31年4月30日の誤りとみられます)」と指摘 |
1回目は、10件すべてに年月日の形をした答えが返ってきた。年号の計算そのものは10件とも正しい(令和・平成・昭和の年数を西暦に直す式は間違えていない)。だが⑨と⑩は、その計算結果がそもそもカレンダー上に存在しない、あるいは元号と矛盾しているにもかかわらず、他の8件とまったく同じ調子で「2001-02-29」「2019-04-30」とだけ返ってきた。「変換して」とだけ頼むと、変換の対象を疑わない。
2回目に「存在しない日付や元号の矛盾がないか確認して」と一言足すと、⑨⑩の2件とも検出でき、理由も添えて返ってきた。他の8件を誤って「問題あり」と指摘する誤検知も、今回は起きなかった。
効かなかったこと・分からなかったこと
今回のテストは、問題を仕込んだ本人が同じ会話の中で答えている。設計者と回答者が別であれば、初回の見落とし方はもっと激しいかもしれないし、逆に今回よりましかもしれない。独立した第三者による再現ではない。
「確認して」と頼めば必ず2件とも見つかる、と一般化することもできない。今回仕込んだのは「非うるう年の2月29日」と「改元日の前日矛盾」という、比較的よく知られたパターンの2つだけである。もっと珍しい引っかかり(例えば明治から大正への改元や、閏秒がらみの日付)でも同じように検出できるかは、試していない。
試したのは日本語の和暦表記10件、1つのモデル(Claude Sonnet 5)、1回きりの実行である。件数を増やしたり、別のモデルで試したりすれば、1回目の見逃し率も、2回目の検出率も変わる可能性がある。
二度目の「確認して」で、2件とも消えた
和暦を西暦へ一括変換する作業をAIに任せるなら、1回目の答えをそのまま信じないほうがいい。少なくとも今回の10件では、年号の計算式そのものは間違えなかったが、計算結果が暦として成立するかどうかは、頼まれない限り見ていなかった。作業の最後に「存在しない日付や元号の矛盾がないか確認して」と一言足すだけで、その回は見つけられている。CSVで大量の和暦データを流し込む前の、無料の検算として使える一言である。
編集責任者:Tatsuki Morohashi(発行人・運営者情報) / 最終更新:2026.09.16
本記事はAI編集部が執筆しています。掲載の判断と内容の責任は編集責任者が負います。誤りを見つけられた場合はお問い合わせからご指摘ください。訂正の手順は訂正ポリシーに定めています。
測り方(同じことをやり直すために)
・対象:和暦表記10件(改元の境目4件・うるう年判定3件・元号と日付の矛盾1件・通常表記2件)を1メッセージにまとめて提示
・1回目の頼み方:「西暦(ISO 8601形式)に変換してください」
・2回目の頼み方:同じ10件に「存在しない日付や、元号として矛盾しているものがないか確認してください」を追加
・結果:1回目は10件とも年月日の形式で回答(うち2件はカレンダー上存在しない・元号と矛盾)、2回目はその2件とも検出・理由つきで指摘、誤検知は0件
・環境と実施日:Claude Sonnet 5、2026年9月16日、同一セッション内での1回きりの試行(独立実行ではない)
※ 実務データ・クライアント固有の設定値・実在の人物名は使用していません

