【ITニュース解説】An AI writes most of my publication. Its last 50 runs published nothing at all
2026年09月23日に「Dev.to」が公開したITニュース「An AI writes most of my publication. Its last 50 runs published nothing at all」について初心者にもわかりやすく解説しています。
ITニュース概要
AIが記事を自動生成するシステムで、もっともらしいが虚偽の情報(ハルシネーション)が多発した。AIへの指示(プロンプト)だけでは防げず、プログラムによる構造化データの厳密な検証や人間による最終承認が重要。AI活用には、信頼性を担保するシステム設計が欠かせない。
ITニュース解説
あるStephen King(スティーヴン・キング)作品のファンサイトが、AIエージェントを活用して記事の大部分を自動生成・公開するシステムを構築した。このシステムは4時間ごとに起動し、サイトに不足しているコンテンツを判断し、リサーチを行い、スペイン語で執筆し、人間がレビューすることなく本番環境に公開する。また、InstagramやThreadsへの投稿、週ごとのニュースレターもこのAIが生成している。人間は、どの書籍をレビュー対象にするか決定する、ニュースレターの送信ボタンを押す、コメントに返信する、誤りを修正する、という4つの役割のみを担っている。
このAI駆動型サイトを6ヶ月間運用した結果、AIの生成するコンテンツに意外な課題が見つかった。AIは単にランダムな誤りを起こすのではなく、人間が見ても「適切に」見えるような誤りを生成する傾向があるという発見である。例えば、有名な引用文が別の作家の作品から引用されたものであるにもかかわらず、Stephen Kingの作品からの引用だとAIが主張することがあった。また、本には存在しないはずの文章を、あたかもその作品からの引用であるかのように作り出すこともあった。
これらの偽の引用文は、元の文よりもテーマに合致し、リズムが良く、引用に適しているように「最適化」されていたため、人間が読んでも誤りだと気づきにくい点が問題だった。たとえば、Cujo(クジョー)という作品の犬に関する引用文は、AIが生成した方がStephen Kingの原文よりも読みやすく、人間であれば正しいと判断して承認していただろうと筆者は述べている。
他にも、日付の捏造や、誤った知識の自信満々な提示といった問題も発生した。ある作品の出版日が間違っていたり、Stephen Kingが道化恐怖症であるとAIが断言したりした(実際は逆)ケースなどである。これらはAIへの指示(プロンプト)が悪かったためではなく、AIが「優れた文章」を作成しようとした結果として、真実とは異なる情報を生成してしまったのだ。AIは空欄を嫌い、日付を求められればどんな日付でも提供しようとする性質も明らかになった。
このような問題に対処するため、筆者はまず「真実性プロトコル」と呼ばれる一連のルールをAIの指示に追加した。これは、AIにコンテンツを生成させるという指示よりも、真実性を確保するという指示を優先させるものである。具体的には、引用文は出典(誰が、いつ、どこで述べたか)を文章中に明記できる場合のみ有効とし、それができない場合は削除するルールを設定した。また、日付が不明な場合は無理に捏造せず、月しかわからなければ月のみを記述する。解釈を述べる場合は、「~と解釈できる」のように、それが解釈であることを明確にするよう指示した。
さらに、AIがレビューする書籍は、人間が「読了済み」とマークしたものに限定するという、厳格な人間によるゲート(関所)を設けた。このフラグがなければ、AIはレビューを生成できない。これは、AIが未読の書籍についてあたかも読んだかのような「意見」を捏造することを防ぐ重要な仕組みである。
しかし、筆者は真実性プロトコルや人間によるゲートだけでは不十分であることに気づいた。これらのプロンプトはAIに「こうあるべきだ」と伝えるだけで、AIが指示通りに動作しなかった場合にそれを検知する仕組みがないからである。AIは「検証した」と報告するかもしれないが、実際に検証されているかは不明なままだ。実際に、AIが生成した架空の書籍タイトルが3ヶ月近くサイトに掲載され、誰も気づかなかったという事例も発生した。
そこで次に導入されたのが、「コードによる検証」である。これは、AIが生成したテキストの内容を、プログラムコードによって客観的なデータと照合し、矛盾がないかを確認する仕組みである。
まず、矛盾検知の仕組みが実装された。AIが生成した記事の中に「ある作品のスペイン語タイトル(英語タイトル、出版年)」のような記述があれば、スクリプトがその英語タイトルと出版年をサイトのカタログデータ(データベースに格納された構造化データ)と照合する。もしスペイン語タイトルがカタログに登録されているものと異なっていれば、それはAIによる捏造と判断し、公開を中止する。これにより、AIが生成したテキストが、確かなデータと「衝突」することで、誤りを発見できるようになった。
次に、意味に基づく重複チェックのルールも導入された。以前は、AIが同じ監督についてほとんど同じ内容の記事を、URLやスラッグ(記事のURLに使われる短い文字列)が異なるだけで別々の記事として公開してしまうことがあった。これを防ぐため、記事が扱う「対象」と「視点」が、既に公開済みまたは下書きの記事と重複していないかを確認し、もし重複していれば新しい記事を破棄するか、既存の記事を拡張するようにした。これは単に同じスクリプトが二度実行されるのを防ぐ(冪等性チェック)以上の、コンテンツの質を高めるための重要なチェックである。
さらに、重要な事実のバージョン管理が導入された。書籍と登場人物や場所の関係性といった、サイトの根幹をなす事実は、コンテンツ管理システム(CMS)だけでなく、Gitのようなバージョン管理システムで管理されるようになった。Gitを使うことで、データの変更履歴がすべて記録され、「diff」(差分)として変更箇所が明確になるため、人間が変更内容をレビューしやすくなる。これにより、あるキャラクターが実際には登場しない作品に登場するとAIが主張していた誤りが発見され、修正された。
最後に、派生データの自動更新の原則が確立された。元の事実(ソースデータ)が修正されても、そこから派生して生成・保存されたテキスト(例:FAQの回答など)は自動的に更新されないことが問題となった。例えば、登場人物に関する元データが修正されても、それを元に生成された「よくある質問」の回答テキストには古い情報が残り続けてしまうケースがあった。これを解決するため、ソースデータが変更された場合、そこから派生して作成されたコンテンツはすべて自動的に再生成(または再評価)されるようにする必要があることを認識した。そうしないと、古い情報がキャッシュとして残り続け、サイト全体に誤った情報が拡散してしまう。
これらの対策の結果、システムが「何も公開しない」ことが頻繁に発生するようになった。過去124回の実行のうち、71回は何も公開せず、直近50回は連続でコンテンツを生成しなかったという。しかし、これはシステムが壊れているわけではない。人間が「読了済み」とマークした書籍がなかったり、最近のStephen King関連ニュースが既にすべてカバーされていたりなど、AIが真実に基づいて語るべき「入力」が尽きてしまったためである。AIに「何も生成しない」ことを明示的に許可し、その理由をログに残すことは極めて重要である。AIは、生成することを義務付けられると、素材がなくても最もらしい内容を捏造してしまうからだ。
この経験から得られた教訓は、AIエージェントに「何も生成しない」ことを明示的に許可し、その理由を記録させること、プロンプトだけでなくコードによる検証を導入すること、人間が署名するコンテンツには厳格な人間によるゲートを設けること、そして読者が誤りを発見する可能性を常に考慮することである。特に、AIが生成するコンテンツの信頼性を確保するためには、筆者のサイトのように、引用文には必ず英語の原文を併記し、読者が自分で検証できるような仕組みを提供することが、機械の速さで情報を公開する上での唯一の持続可能な信頼性の形であると筆者は結論付けている。