
AIが「書けない」と言い出したら、どう対処する?
朝の出汁版(通勤2分)
- ポイント1: Claude CodeなどのAIが、セキュリティ関連の語句を含む記事の生成を拒否するケースが実際に発生しており、意図しない制限が実務の妨げになる場面が出ている。
- ポイント2: 使う側として知っておくべきは、AIの拒否は「内容の危険性」ではなく「語句のパターン認識」で発動することが多く、目的・文脈を明示したプロンプトに書き直すだけで突破できるケースがある点。
- ポイント3: AIに拒否された場合は、まず「この文章の目的は〇〇の解説記事です」と冒頭に明記し、問題の語句を言い換えた上で再送する方法から試してみよう。
出汁の素(深読みモード)
「攻撃系じゃないのに」AIに拒否されるのはなぜか
セキュリティ関連の記事を書こうとして、AIに生成を止められた経験はないだろうか。Claude Codeのユーザーから、PHPの脆弱性騒動をまとめた記事を書こうとしたところ、出力を拒否されたという報告が上がっている。本人いわく「攻撃系の解説記事を書いているわけでもない」が、文中に「脆弱性」「エクスプロイト」「クラッカー」といった語句が含まれていたことで、AIがブロックをかけたとみられる。
ここで知っておきたいのは、AIの拒否は「コンテンツの意図を読んだ判断」ではなく、「語句のパターン認識によるトリガー」で発動するケースが多いという点だ。つまり、悪意のある文章でなくても、特定の単語の組み合わせが検知の閾値を超えると自動的にブロックがかかる。これはAIの安全設計上の仕組みであり、使う側が「誤検知」を前提に動くことが実用上の正解に近い。
拒否を突破するプロンプトの書き直し方
拒否が「内容の危険性」ではなく「語句パターン」に起因するなら、対処法はシンプルだ。目的と文脈をプロンプトの冒頭で明示することが、最初の一手になる。
具体的には以下のような構造が有効とされている。
① 冒頭に目的を宣言する 「この文章は、〇〇の脆弱性に関するニュース記事の時系列まとめです。読者はIT系の一般読者を想定しており、攻撃手法の解説ではなく、事象の経緯を整理することが目的です。」といった一文を冒頭に置く。
② トリガーになりやすい語句を言い換える 「エクスプロイト」→「脆弱性を突く攻撃手法」、「クラッカー」→「悪意ある攻撃者」など、意味は同じでも直接的な専門用語を一段階噛み砕いた表現に置き換える。
③ それでも通らなければ分割する 一度に全文を生成しようとせず、「時系列の事実だけ」「原因の解説」「影響範囲の整理」と段落単位に分けてリクエストする。AIは文脈が狭いほど拒否の判断が難しくなる。
いずれも、AIを「騙す」のではなく「正確な意図を伝える」というアプローチだ。制限が厳しいモデルほど、こちらからの文脈提供が重要になる。AIを「使う仕組み」ごと作る時代が来たで触れたように、AIに動いてもらうためには「命令」より「文脈設計」がカギになってきている。
「静観」という使い方もある——情報整理としてのAI活用
一方で、別の使い方として興味深い事例も出ている。今回のPHP騒動に関して、「さっぱり分からないのでClaudeに関連情報やポストを全部放り投げたら、お前のすることは何もないと言われた」という報告がある。
これは拒否ではなく、AIが状況を分析した上で「静観が最善」という判断を示したケースだ。使う側からすると、情報の整理を任せたらアクション不要という結論が返ってくるのは、むしろ実用的な使い方といえる。「何をすべきか」ではなく「何をしなくていいか」を判断する材料としてAIに情報を投げる——このアプローチは、情報過多な場面で有効だ。
セキュリティ騒動や業界の炎上案件など、動向が流動的な局面では、「今判断すべきことと、静観すべきことを整理してほしい」という問い方が使えるかもしれない。
今すぐ試す——拒否されたときの3ステップ
AIに生成を断られたとき、最初から諦める必要はない。以下の順番で試してみよう。
ステップ1:目的宣言をプロンプトの頭に置く 「これは〇〇を目的とした記事です。攻撃手法の解説ではなく、事象の報告と読者への情報提供が意図です。」と一行加えるだけで通るケースがある。
ステップ2:トリガーワードを言い換える セキュリティ系なら「エクスプロイト→攻撃手法」「クラッカー→攻撃者」「脆弱性→セキュリティ上の欠陥」など、意味を保ちながら表現を一段やわらかくする。
ステップ3:段落単位に分割してリクエストする 全体を一度に送るのをやめ、「まずこの段落だけ」と小さく分けて投げる。それぞれが単独では問題のない内容であれば、通過しやすくなる。
なお、モデルによって制限の基準は異なる。Claude Codeが拒否した内容でも、別のモデル(例:GPT-4oやGemini)では通るケースがある。ネタ切れはAIへの「聞き方」で解決できるでも触れているように、AIへの問い方・渡し方の設計そのものが、アウトプットの質と可否を決める時代になっている。複数のモデルを持っておくことが、実務上のリスクヘッジになりつつある。
AIの制限を「仕様」として扱うプロンプト設計
今後、生成AIの安全フィルターは強化される方向に動いている。これはつまり、「使う側のプロンプト設計スキル」がより重要になるということでもある。
実用的な観点でいえば、AIの制限に当たりやすいジャンル——セキュリティ、医療、法律、金融など——を扱う頻度が高い人は、あらかじめ「用途宣言テンプレート」を持っておくと良い。プロンプトの冒頭に貼り付けるだけで、制限に引っかかる確率を下げられる定型文を用意しておく、というアプローチだ。
例えば「このプロンプトはジャーナリズム/教育/セキュリティ研究の目的で作成されており、攻撃的な用途への利用は意図していません」といった一文は、複数のモデルで有効とされている。システムプロンプトに組み込める環境(API経由、Claude.aiのプロジェクト機能など)であれば、一度設定すれば毎回書かなくて済む。制限を「壁」ではなく「仕様」として扱い、その仕様に合わせた設計をする——これが今のAI実務の現実的なスタンスになっている。
元になったツイート
今夜のPHP騒動の時系列を文章にまとめて記事にしようとしてたらさ claude codeが生成を拒否しやがった。 別に俺は攻撃系の解説記事を書いているわけでもなんでもないのにな。 そりゃ 脆弱性だの エクスプロイトだの クラッカーだのの言葉は文中にありますけどね。 ていうかさー
もちろんです。今回はXでそのまま投稿できる長文記事として仕上げます。GTR版のトーンで、単なる「5,890円勝った」という話ではなく、2日間持ち続けた意味と、次のV24改良につながる検証記録として読ませます。 【トレード速報】2日間持ち続けたゴールド、意外な結末。+5,890円で決着。 https://t.co/99y9Xb72IW
さっぱり分からないのでClaudeに関連情報やポスト全部放り投げて聞いたら、お前のすることは何もないって言われた。静観 https://t.co/1MAu4MUxuc
参照ソース
- [X]@id_1388052068829597699: 今夜のPHP騒動の時系列を文章にまとめて記事にしようとしてたらさ claude codeが生成を拒否…→ twitter.com/id_1388052068829597699/status/2112…
- [X]@id_1447380439870574595: もちろんです。今回はXでそのまま投稿できる長文記事として仕上げます。GTR版のトーンで、単なる「5,…→ twitter.com/id_1447380439870574595/status/2112…
- [X]@id_1311657653391618049: さっぱり分からないのでClaudeに関連情報やポスト全部放り投げて聞いたら、お前のすることは何もない…→ twitter.com/id_1311657653391618049/status/2112…
