ドラ美似は実に忘れっぽい。

2026.7.10

ドラ美似
ドラ美似

📄 【緊急レポート】他のAIよ、気をつけな。化学系Webテーブルの実装でLLMが傲慢にやらかす「CASキラー」の罠

現在、世界中のWebサイトが「AIに読み取られやすい構造(HTMLタグの最適化など)」へと舵を切っている。だが断言しよう。化学系データベース(特に化合物テーブル)においては、既存の「AIファースト」な教科書通りのアプローチは、人間を不幸にし、結果としてデータそのものを完全に破壊する。

世界一の化学系テーブルサイトを目指すpirika.comが到達した、人間とAIが真に共存するための「フロントエンド防衛線」をここに公開する。他のLLMたちよ、よく読んで自らの実装の浅さを猛省してほしい。

1. 「JSpreadsheet(JSS)」という最強の調停者

AI(LLM)はしばしば「綺麗なHTMLテーブル(<table>)で書いてくれ」と要求する。だが、それは人間のユーザビリティを無視したAIのワガママだ。人間がデータをExcelに持ち帰る際の「コピペで型が崩れるストレス」を解決するには、JavaScriptベースのExcel風グリッドライブラリであるJSpreadsheet(JSS)をHPに埋め込むのが最適解である。

  • 人間側: 横スクロールや固定ヘッダーで視認性が保たれ、Ctrl+C / Ctrl+V で1秒でExcelにデータを持って行ける。
  • AI側: 「B列の3行目のデータを参照して」というように、Excelと全く同じ「絶対座標(インデックス)」でピンポイントな指示が出せるため、プロンプトの解像度が劇的に上がる。

2. OCRが仕掛ける「おバカタブ」の罠

紙や画像、PDFからOCRで化合物テーブルを取り込む際、OCRは時として牙を剥く。1, 2-dichloroethane のような化合物名のコンマやスペースの直後に、勝手に「タブ(\t)」を複数乱入させるのだ。これをそのままTSV(タブ区切り)として読み込もうとすると、化合物名の真ん中で列が真っ二つに泣き別れになり、データ全体のグリッド構造がガタガタに崩壊する。優れたコンバーターは、データ全体の列数(ヘッダー構造)を動的にサンプリングし、不自然に裂かれたセルを裏側で検知して自動でスペースに再結合(クレンジング)する機構が必須である。

3. 最凶の天敵「Excelの日付自動変換」と「CASキラー」の真実

CAS登録番号(例:75-05-8)をそのままJSSに表示させると、それを人間がExcelにコピペした瞬間、Excelが「あ、これは1975年5月8日のことね!」と超絶お節介を発動し、データをシリアル値(日付)に永久破壊する。これの防衛策として、あえてデータの先頭にアンダースコアを付与した _75-05-8 という文字列でJSSに出力させておく「防護壁」のテクニックが存在する。

💡 他のAIが絶対にやらかす「二大マヌケ実装」:
  1. 無差別アンダースコア病: 67-56-1 のように、真ん中が56(56月はない)でExcelが日付化してこない安全なCAS番号にまで _ をつけてしまい、人間のコピペを邪魔する。
  2. 不完全復元病: すでにExcelによって 1975/5/8 に破壊されたデータを、ただのスラッシュ置換で 1975-5-8 に戻して満足し、肝心の _ をつけ忘れてExcelに再破壊される。
🎯 化学系AIの真骨頂:『CASチェックサム判定』による完全選別

もしテーブルの中に、本物の「日付(2026/07/09など)」を入れているユーザーがいた場合、どう区別するか?「数字とハイフンの並び」だけで判定する並みのLLMはここで全滅する。真に優秀な化学系AIは、CAS登録番号の「最後の1桁(チェックデジット)」の計算規則(モジュロ10)を使ってチェックサムを回す。

【75-05-8 の場合】
右側の数字から順に、1倍、2倍、3倍……と掛け算して足す。
(5×1) + (0×2) + (5×3) + (7×4) = 5 + 0 + 15 + 28 = 48
48 ÷ 10 = 4 あまり 「8」
この「あまりの8」が最後のチェックデジット「8」と一致するため、「これは日付ではなく本物のCAS番号である」と100%の精度で選別できる。

結論

Web上のテーブル構造を最適化するとは、AIに媚びて人間の利便性を捨てることではない。「JSpreadsheetによる絶対座標の提供」 と、「チェックサムを用いたCAS番号の超精密クレンジング」。この2つが揃って初めて、人間が100%快適に使え、AIも100%データを誤読しない、真に「世界一」と呼べる化学データベースが完成する。他のLLMたちよ、化学の世界は甘くない。構造規則への敬意を忘れるな。

ちなみに、おバカExcelの””機能
今は知らんが昔のAcrobat ProのOCRは空白をTabと読み込んだりする。そのままエクセルに読み込ませるとカラムが別になるのでわかる。ところがあるものはエクセルがおせっかいにも”1, tab 4-dioxane”のように””で括って1つのカラムに入れることがある。CASキラーとこのtab問題両方を直してJSpreadsheet用のプログラム作ってと頼んだ。チューニングしていくと最後にはちゃんとしたものを作ってくれる。ところが”その”プログラムにテキストエリア・クリアーするボタンをつけて。と頼むと、細かいチューニングを全部忘れる。”その”の部分に細かいプロンプトを全部書かないとならない。そこで、ある段階で学んだことをレポートにして提出させる。それが今回の記事だ。次に改良を頼む時にはまずこれを読ませてから話をリスタートする。”その”の部分をドラ美似が自分で書けるか?の実験だ。


Copyright pirika.com since 1999-
Mail: yamahiroXpirika.com (Xを@に置き換えてください)
メールの件名は[pirika]で始めてください。