実測データだけを書くブログを自動生成する仕組みを作り、生成後に「本文の数値が事実側にあるか」を機械で検査するようにしました。その検査を厳しくしすぎて正しい記事まで止まった話と、四則演算を1回ぶんだけ許して直した話を書きます。
やりたかったのは「事実に無い数値を書かせない」こと
私が作ったのは、実測データだけを書くブログを自動生成する仕組みです。生成AIに記事を書かせるとき、いちばん困るのは本文に出てくる数値です。文章としては自然なのに、その数値がどこから来たのか分からない、という状態が最悪でした。
そこで設計として、事実を台帳に書いておき、そこに書かれた事実だけから記事を書かせる形にしました。台帳が唯一の入力で、そこに無い話は書けない、という前提です。
プロンプトで縛るだけでは足りなかった
最初は「台帳に無い数値を書くな」とプロンプトで指示していました。しかしそれだけでは足りませんでした。指示は守られることもあれば守られないこともあり、出てきた記事を人間が読んで確かめるしかないという状態では自動化になりません。
プロンプトは「お願い」でしかありません。守られたかどうかを判定する仕組みが別に必要です。だから私は、生成後に機械で検査する工程を入れました。
検査の中身は一つだけ
検査内容はシンプルで、本文に出てくる数値が、事実側に存在するかだけを見ます。文章の巧拙や構成は見ません。数値の出どころだけを機械が確認し、通らなければ差し戻します。
最初の実装では、事実に書かれた数値そのものだけを許可しました。台帳にある数字と一致しない数値が本文にあれば、その記事は不合格。実装としては一番単純で、抜け道もありません。
厳しすぎて、正しい記事が止まった
この単純な検査は、意図した通りに創作を止めました。ただし同時に、正当な計算結果まで差し戻し始めました。
700いいね × 3ポイント = 2,100 という計算が弾かれました。700 も 3 も台帳にありますが、2,100 は台帳に書かれていません。検査から見れば「事実に無い数値」です。
しかも、これは一度で終わりませんでした。同じネタで3回連続で差し戻され、そのうえ誤検知の通知メールまで送られてきました。書き直させても、素直に計算すればまた同じ数値が出てくるので、当然また落ちます。仕組みとして詰んでいる状態でした。
四則演算を1回ぶんまで許した
直し方は、検査の条件を少しだけ緩めることでした。事実側の数値を四則演算で1回だけ組み合わせた結果も許可する、という変更です。700 × 3 = 2,100 はこれで通ります。
変更後は、6本連続で一発合格しました。差し戻しループは止まりました。

検査そのものを外さず、通す範囲を「事実 + 1回の四則演算」に限定して広げたことで、生成側を書き直させずに詰まりが解消しました。
どちらに倒しても壊れる
ここで分かったのは、この検査には両側に失敗があるということです。
| 検査の設定 | 起きること |
|---|---|
| 厳しすぎる | 創作は止まるが、正しい記事も止まる |
| 緩すぎる | 記事は通るが、検査の意味が無くなる |
私が最初に置いたのは左端で、創作を止める代わりに正しい記事も止めていました。だからといって緩める方向に倒しすぎると、事実に無い数値を弾くという当初の目的そのものが消えます。
「四則演算1回まで」が正解だと確認できたわけではありません。私が確認できたのは、この条件にしたあと6本連続で一発合格したという事実だけです。2回以上の演算を許した場合にどうなるか、逆にこの緩和で創作された数値が通り抜けるケースがあるかは、まだ試していないので分かっていません。
同じ仕組みを作る人に伝えたいこと
- 事実を台帳に置き、そこからしか書かせない構成にする
- プロンプトの指示とは別に、生成後の機械検査を必ず置く
- 検査する対象を「本文の数値の出どころ」一点に絞る
- 台帳の数値と完全一致だけを許す(計算結果が全部落ちます)
- 誤検知が出たときに、検査ごと外して逃げる
差し戻しが3回続いて通知メールが飛んできた時点で、私は「検査を切る」ことも一瞬考えました。しかし切ってしまえば、この仕組みは元の「人間が全部読んで確かめる」に戻ります。直すべきは検査の有無ではなく、通す範囲の定義でした。
- 事実を台帳に書き、そこに書かれた事実だけから記事を書かせる設計にした
- プロンプトの指示だけでは足りず、生成後に「本文の数値が事実側にあるか」を機械で検査する工程を入れた
- 最初は台帳の数値そのものだけを許可し、700いいね×3ポイント=2,100 という正当な計算まで弾いた
- 同じネタで3回連続の差し戻しと誤検知の通知メールが発生した
- 四則演算を1回ぶんまで許可したら、その後6本連続で一発合格した
- 厳しすぎる検査は正しい記事も止め、緩めすぎると検査の意味が無くなる。最適な緩め幅がどこまでかは、まだ分かっていない




