ここ 1.5 年ほど各組織でデータ分析に関する LLM エージェントを開発するのが人気だ。
しかしながら、LLM エージェントから BigQuery を使うと一瞬でお金を溶かせる。紹介しよう。
これは 100% 手書きの一発書きです。
AI.GENERATE 関数で無限の金を溶かす
何の変哲もない BigQuery AI / ML 関数。ヤバい。
SELECT
AI.GENERATE(prompt,
endpoint => 'gemini-2.5-pro')
FROM mydataset.mytable;
こちらの方がヤバさが伝わるだろうか?
SELECT
AI.GENERATE(無限にでかいプロンプト,
endpoint => 'projects/他のプロジェクト/locations/global/publishers/google/models/gemini-3.1-pro-preview')
FROM
無限にでかいテーブル
AI.GENERAGE が無限にでかいプロンプトに対して、高価なフロンティアモデルが無限回呼ばれる。
これだけならまだマシだ。
悪夢は「あなたの管理するデータエージェントとは別のプロジェクトで実行される」点にある。
あなたはあなたの管理するデータエージェントやその周辺環境を丁寧に整備しているはずだ。だがそんなものは無意味だ。組織内に 1 箇所でも穴が空いていて Agent Platform User ロールがついているなら AI 関数を実行できる。
誰もが Google Cloud プロジェクトをつくれる組織にいる?なら皆実質的なプロジェクトオーナーだ。AI.GENERATE 関数の実行なんて簡単だ。手元のコーディングエージェント Antigravity、Claude 好きなやつに頼めばよい。
トークン数課金で青天井だ。お財布の許す限り巨大なプロンプトを生成し、実行回数を増やし、お金を溶かしてほしい。BigQuery には大量のデータがあるのだから。
CREATE CAPACITY 文 1 発で 300 万円溶かす
以下のクエリを見てほしい。
CREATE CAPACITY `admin_project.region-us.my-commitment`
OPTIONS (
slot_count = 100,
plan = 'ANNUAL');
BigQuery 計算資源の購入最小単位 100 スロット x 1 年を購入するクエリだ。実行すると $20,400(日本円で 320 万円)の課金が決定する。
プロジェクトの BigQuery Admin ロールなら実行できる。これもまたコーディングエージェントに頼めば一瞬だ。お財布の中身を数えて、適切な slot_count を入力して実行してくれ。
どうやって防ぐ?
残念ながら守る手段は限られている。正直 Google Cloud がなんとかしてと思ってこんな記事を書いている。拡散してくれて Google Cloud が認知してくれるのが一利用者としてできることだと思っている。
ここには私の思いつく限りの対策を書き残しておこう。
CREATE CAPACITY は IAM 拒否ポリシーで bigquery.capacityCommitments.create 権限を拒否すれば防げる。
AI.GENERATE は無理だ。エージェント全盛の今、利用者から Google Cloud 経由の Gemini の呼び出し権限を全て剥奪するのは難しい。
同様にデータエージェント層で防ぐのも無理だ。エージェントは無限に種類がある。それら全てに防御プログラムを仕込むことはできない。
残念ながらここでお別れだ。幸運を祈る。