いろいろ試験的な

あれこれを置く場所

【検証】AIの「URL捏造(404)」をどう防ぐか?

URLの頑固なハルシ

実験的な試みとして「最新のAppleニュースを自動でリサーチしてブログを投稿する」というのをやってみました。その際、最大の壁となったのはAIがもっともらしい嘘のURLを生成してしまい、リンク切れ(404)が多発することでした。  

apple-ai-news.hateblo.jp


GAS(Google Apps Script)からGemini APIを叩き、どんなに「URLを捏造するな」と指示しても、AIは良かれと思ってURLの構造を勝手に整形(デフォルメ)してしまいます。  


しかし、Google Cloudの「Vertex AI Agent Builder」のプレビュー環境で、特定のステップを踏んで指示を出したところ、この問題がほぼ解消されました。その経験を記録しておこうと思います。


URLハルシは抑えられたけど、自動投稿はまだできていません。ハルシの問題がある限りGASでは難しい → 今のところ手動で投稿、となっています。



なぜGemini API単体では失敗したのか?

API経由でGoogle検索機能を使った場合、以下のような問題が発生します。


  1.  URLの合成(ハルシネーション):      AIが「このニュースならこのドメインで、こんな階層だろう」と勝手にURLを作ってしまう。

  2.  Google専用中継URLの混入:      vertexaisearch.cloud.google.com/... という長い追跡用URLが出力され、ブログとして使い物にならない。

  3.  404(リンク切れ):      AIが1文字でもURLの管理番号やスラッシュの有無を変えてしまうと、ニュースサイトの記事にはアクセスできなくなる。



たどりついた手法:Agent Builderによる段階的アプローチ

結果として、Vertex AI Agent Builderのチャット(Gemini Enterpriseベース)を使い、以下の3つのプロンプトに分けて対話を進めるのが今のところ安定しています。  


この方法では、Agent Builderが内部で保持する検索インデックスと、AIの執筆能力を明確に分離して処理させるため、URLの汚染(書き換え)が発生しません。  


捏造をゼロにする「3ステップのプロンプト」

使用環境

  •   プラットフォーム: Google Cloud Vertex AI Agent Builder
  •   エンジン: 検索および会話エージェント (Gemini Enterprise)

以下の順番で指示を出すことで、正確な出典リンクを伴う記事が生成されました。


ステップ1:ソースの確定(URLをAIの記憶に固定する)

プロンプト1:

きょうは2026/04/28です。直近3日間について、以下を実行してください。

  1. Google検索を使用して、「Appleコンピュータとその製品」に関する最新ニュースを探してください。

  2. 10個程度探し、URLと共にリストアップしてください。

まずは情報を羅列させるだけで、作文をさせません。これにより、システムが持っている「生のURL」を確実にチャット上に固定します。


ステップ2:抽出と執筆(執筆に集中させる)

プロンプト2:

(提示されたリストのうち)1,2,4,5,7について、参照元の情報に基づいて、
  1)Markdown形式のブログを執筆してください。

2)読者が読みやすいよう、段落の間には必ず2行の空行を入れて、ゆったりしたレイアウトにしてください。

3)執筆のトーンはワクワク感を持ちつつも、事実に忠実であること。

4)1つの話題につき400文字程度でまとめ、## でタイトルを書くこと。

5)捏造に気をつけること。

6)不確かな情報は書かないこと。

具体的なインデックス(番号)を指定し、執筆を依頼します。


ステップ3:正確な出典リストの作成

プロンプト3:

今作ってくれた記事の参照元の記事のタイトルとURLを以下のmdの形式で出力して。

例)

タイトル (公開日: 2026年4月25日)

最後に出典だけを再度まとめ直させます。この際、ステップ1で確定したURLとの整合性が維持されるため、嘘のURLが紛れ込みません。



検証の結果:Agent Builderが優れている理由

自作のGAS(Gemini API)ではどれほど工夫しても防げなかったURLの変形が、Agent Builderでは防げました。

  •   URLの精度: 100%。そのままブラウザに貼って表示される本物のURLが返ってきた。
  •   情報の質: Google、Androidなどの混じり物が少なく、Appleに関する記事のみを厳選できていた。
  •   操作性: API開発で「コードでの制御」に四苦八苦するより、Enterpriseレベルで整備されたエージェントUI(Agent Builder)の検索性能とフィルタリングの恩恵を受けたほうが、遥かに高品質な成果物が得られた。


結論

「何でもAPIで自動化すれば良い」というわけではなく、信頼性と鮮度が最優先される最新ニュースの収集・検証をする場合、Vertex AI Agent Builderのような、創造性よりも正確性が要求される業務用検索エンジンを利用するとよい、というのが今回の結果です。  



気になる「課金」の話:これ一回でいくらかかるの?

Google AI Studio(Gemini単体)の無料キーなら無料ですが、今回使用した Vertex AI Agent Builder (Enterprise Edition) は、ビジネス向けの「ガチ」なツールです。  


このブログ執筆タスクにかかるコストの目安です。  


1. 最初に与えられる30日間無料お試し期間

Vertex AI Agent Builder を初めて使い始める際、30日間限定で(※2026年4月24日時点)お試し期間があります。  

cloud.google.com


今回の「最新情報を正確に検索・執筆させる」という試行錯誤において、このクレジットがあれば課金を恐れずにあらゆるパラメータを調整することができました。  


Googleサーチをする設定などは、いずれ書くかも。  


2. クレジット終了後のランニングコスト(目安)

もし無料クレジットがない状態で、今回の構成(リサーチ・執筆・出典出力)を実行した場合、Enterpriseティアの課金はおよそ以下のようになる、らしい(Gemini談)。


  •   検索(Discovery Engine)利用料:      1回のクエリにつき 約0.12ドル〜(Enterprise Search料率)。
  •   Gemini 2.5 Enterprise モデル利用料:      入出力の文字数(トークン)によりますが、1記事執筆で 約0.05ドル〜0.2ドル程度

結論: 1回動かしてブログを書き上げるコストは、ざっくり「20円〜50円程度」です。


「無料の Gemini API でもいいじゃないか」と思われるかもしれませんが、API側のハルシネーション(URL捏造)に悩み、検証のために無駄な時間を費やすくらいなら、1回数十円払って「リンクの確実なニュース」を手に入れるほうが、結果的にコストパフォーマンスは圧倒的に高いかもしれません。  


と、昨日は1日そんな試行錯誤で遊んでいました。

きっともっとよい方法がありそうな気がします。私はGoogleの環境のみで構築してみたけれど、ほかの自動化ツールとAIベンダー製品を使えば、また違った方法が取れるのかもしれません。