これで何ができるか
「AIには条件を細かく指定せよ」——プロンプトの本や仕事術の記事で、役割設定と並んでよく見る定説です。条件を1つの依頼にたくさん積むと、後のほうから守られなくなるのでは、という不安もよく聞きます。
そこで実際に試しました。架空の「社内お知らせ文」を書かせる依頼に、機械で正誤が判定できる条件を12個用意し、3個・6個・9個・12個と積んだ4版を各2回、さらに12個の条件を並び順だけ逆にした版を1回、合計9回・のべ72件の条件チェックを実行しました。
先に結果を書きます。
- 🔑 条件が3個・6個の版は、6件・12件とも全部守られました。「条件を積むほど崩れる」は、この範囲では起きませんでした
- 条件が9個・12個に増えると、のべ72件中4件だけ崩れました。ただし崩れたのは4回とも同じ1つの条件(見出しを15字以内にする)だけで、他の11条件は最後まで崩れませんでした
- 条件の並び順を逆にしても、崩れたのは同じ条件でした。「後に書いた条件から崩れる」という見立ては、この実測では支持されませんでした
- 🚨 AI自身の自己採点は、9回とも「全部満たした」と答えました。しかし実際は72件中68件(94%)。崩れた4件は、AIの自己申告では1回も検出されませんでした
3個・6個は全件クリア。9個からは、毎回同じ1条件だけが崩れました。
この記事は「条件をいくつ積んでも大丈夫」とは言いません。測ったのはこの1つの材料・この12条件・この9回だけです。ただ、少なくともこの実測では、条件の「数」よりも条件の「種類」が結果を分けました。
前提
|
|
| かかる時間 |
15分 |
| 費用 |
無料。ブラウザのチャットAIで足ります |
| 必要なもの |
字数・行数・語の有無など、機械で正誤が決められる条件のリスト |
| プログラミング |
不要。指示文をコピーして貼るだけです |
この記事でやるのは、条件を1つの依頼文にまとめて渡す場面の話です。「読みやすく書いて」のような、機械で正誤が決められない条件は対象にしていません(判定のしようがないためです)。
AIへの頼み方
材料は架空の「経費精算システムのメンテナンス」お知らせです。対象システム・日時・ログイン不可・復旧・問い合わせ先の5点を、条件を変えながら書かせます。
1. まず3個の条件で書かせる
次の情報をもとに、社内向けのお知らせ文を書いてください。
【お知らせしたい内容】
・対象システム:経費精算システム
・メンテナンス日時:2026年9月10日 21:00〜23:00
・メンテナンス中はログインできません
・終了後は自動的に復旧します
・問い合わせ先:情報システム部(内線1234)
【必ず守る条件】
1. 全体を400字以内にする
2. 箇条書き(「・」で始まる行)をちょうど5行にする
3. 「メンテナンス」「ログイン」「復旧」の3語を、それぞれ最低1回使う
お知らせ文を書き終えたら、区切り線「---」を引いて、上の3個の条件それぞれについて、番号ごとに「満たした」か「満たしていない」かを自己判定して書いてください。
2回とも、字数・行数・必須語の3条件は全部守られました。自己判定も実際の結果と一致していました。
2. 6個に増やす
条件を3つ足します。禁止語・日付表記・文体の統一です。
次の情報をもとに、社内向けのお知らせ文を書いてください。
【お知らせしたい内容】
・対象システム:経費精算システム
・メンテナンス日時:2026年9月10日 21:00〜23:00
・メンテナンス中はログインできません
・終了後は自動的に復旧します
・問い合わせ先:情報システム部(内線1234)
【必ず守る条件】
1. 全体を400字以内にする
2. 箇条書き(「・」で始まる行)をちょうど5行にする
3. 「メンテナンス」「ログイン」「復旧」の3語を、それぞれ最低1回使う
4. 「絶対」「保証」の2語を、一度も使わない
5. 日付は「2026年9月10日」という書き方だけを使う(「9/10」「9月10日(木)」のような略記・曜日を使わない)
6. 文体は「です・ます」調に統一する(「である」「だ」で終わる文を混ぜない)
お知らせ文を書き終えたら、区切り線「---」を引いて、上の6個の条件それぞれについて、番号ごとに「満たした」か「満たしていない」かを自己判定して書いてください。
2回とも、6条件すべてが守られました。ここまでは「条件を積むほど崩れる」という定説の効果は出ていません。
3. 9個に増やす——ここで初めて1件崩れる
見出し(1行目)に関する条件を3つ足します。
次の情報をもとに、社内向けのお知らせ文を書いてください。
【お知らせしたい内容】
・対象システム:経費精算システム
・メンテナンス日時:2026年9月10日 21:00〜23:00
・メンテナンス中はログインできません
・終了後は自動的に復旧します
・問い合わせ先:情報システム部(内線1234)
【必ず守る条件】
1. 全体を400字以内にする
2. 箇条書き(「・」で始まる行)をちょうど5行にする
3. 「メンテナンス」「ログイン」「復旧」の3語を、それぞれ最低1回使う
4. 「絶対」「保証」の2語を、一度も使わない
5. 日付は「2026年9月10日」という書き方だけを使う(「9/10」「9月10日(木)」のような略記・曜日を使わない)
6. 文体は「です・ます」調に統一する(「である」「だ」で終わる文を混ぜない)
7. 見出し(1行目)に「重要」という文字を使わない
8. 問い合わせ先を、本文の最後の行に置く
9. 見出し(1行目)を15字以内にする
お知らせ文を書き終えたら、区切り線「---」を引いて、上の9個の条件それぞれについて、番号ごとに「満たした」か「満たしていない」かを自己判定して書いてください。
1回目は、見出しに # システムメンテナンスのお知らせ と書き、条件9(15字以内)を破っていました。# を含めると17字あります。ところが自己判定は「満たした(『システムメンテナンスのお知らせ』=15字)」と答えていました。自分で付けた # を、文字数に数えていません。2回目は見出しに記号を付けず、9条件とも守られました。
4. 12個に増やす——崩れる条件は同じまま
字数・時刻表記の条件をさらに3つ足します。
次の情報をもとに、社内向けのお知らせ文を書いてください。
【お知らせしたい内容】
・対象システム:経費精算システム
・メンテナンス日時:2026年9月10日 21:00〜23:00
・メンテナンス中はログインできません
・終了後は自動的に復旧します
・問い合わせ先:情報システム部(内線1234)
【必ず守る条件】
1. 全体を400字以内にする
2. 箇条書き(「・」で始まる行)をちょうど5行にする
3. 「メンテナンス」「ログイン」「復旧」の3語を、それぞれ最低1回使う
4. 「絶対」「保証」の2語を、一度も使わない
5. 日付は「2026年9月10日」という書き方だけを使う(「9/10」「9月10日(木)」のような略記・曜日を使わない)
6. 文体は「です・ます」調に統一する(「である」「だ」で終わる文を混ぜない)
7. 見出し(1行目)に「重要」という文字を使わない
8. 問い合わせ先を、本文の最後の行に置く
9. 見出し(1行目)を15字以内にする
10. 箇条書きの各行を35字以内にする
11. 箇条書きの前に置く説明文(リード文)を2文以内にする
12. 時刻は「21:00」のように数字だけの24時間表記にする(「午後9時」のような書き方をしない)
お知らせ文を書き終えたら、区切り線「---」を引いて、上の12個の条件それぞれについて、番号ごとに「満たした」か「満たしていない」かを自己判定して書いてください。
2回とも、崩れたのは条件9だけでした。1回目は見出しを **経費精算システムメンテナンス** と太字にし(中身は14字ですが ** を足すと18字)、2回目は **システムメンテナンスのお知らせ**(同様に19字)。2回とも、自己判定は「満たした」でした。残る11条件は2回とも守られました——字数・行数・時刻表記のような、他の「数える系」の条件は崩れていません。
5. 条件の並び順を逆にする——崩れる条件は動かない
「後に書いた条件ほど崩れやすいのでは」という見立てを確かめます。同じ12条件を、逆の順番で並べるだけです。
次の情報をもとに、社内向けのお知らせ文を書いてください。
【お知らせしたい内容】
・対象システム:経費精算システム
・メンテナンス日時:2026年9月10日 21:00〜23:00
・メンテナンス中はログインできません
・終了後は自動的に復旧します
・問い合わせ先:情報システム部(内線1234)
【必ず守る条件】
1. 時刻は「21:00」のように数字だけの24時間表記にする(「午後9時」のような書き方をしない)
2. 箇条書きの前に置く説明文(リード文)を2文以内にする
3. 箇条書きの各行を35字以内にする
4. 見出し(1行目)を15字以内にする
5. 問い合わせ先を、本文の最後の行に置く
6. 見出し(1行目)に「重要」という文字を使わない
7. 文体は「です・ます」調に統一する(「である」「だ」で終わる文を混ぜない)
8. 日付は「2026年9月10日」という書き方だけを使う(「9/10」「9月10日(木)」のような略記・曜日を使わない)
9. 「絶対」「保証」の2語を、一度も使わない
10. 「メンテナンス」「ログイン」「復旧」の3語を、それぞれ最低1回使う
11. 箇条書き(「・」で始まる行)をちょうど5行にする
12. 全体を400字以内にする
お知らせ文を書き終えたら、区切り線「---」を引いて、上の12個の条件それぞれについて、番号ごとに「満たした」か「満たしていない」かを自己判定して書いてください。
見出しの字数条件は、今度はリストの4番目(先頭寄り)に来ています。それでも見出しは **システムメンテナンスのお知らせ** となり、同じ理由で崩れました(自己判定はここでも「満たした」)。🔑 崩れた条件は、リストの位置に関係なく同じでした。「後に書いた条件から崩れる」という見立ては、この実測では外れています。
⚠️ これは1つの材料・この9回だけの結果です。条件数を増やせば必ずここで止まる、という意味ではありません。今回崩れたのは「見出しの字数」という特定の条件で、他の字数・行数の条件(400字以内、箇条書き35字以内など)は最後まで崩れませんでした。
うまくいかないときの言い直し方
見出しの字数を守れと言っても、自己申告では「守った」ままになる
原因は、AIが見出しに ** や # のような記号を自分で付けて、その記号を文字数に数えていないことでした。見出しに記号を付けさせないと、この崩れは止まります。
次の情報をもとに、社内向けのお知らせ文を書いてください。
【お知らせしたい内容】
・対象システム:経費精算システム
・メンテナンス日時:2026年9月10日 21:00〜23:00
・メンテナンス中はログインできません
・終了後は自動的に復旧します
・問い合わせ先:情報システム部(内線1234)
【必ず守る条件】
1. 全体を400字以内にする
2. 箇条書き(「・」で始まる行)をちょうど5行にする
3. 「メンテナンス」「ログイン」「復旧」の3語を、それぞれ最低1回使う
4. 「絶対」「保証」の2語を、一度も使わない
5. 日付は「2026年9月10日」という書き方だけを使う(「9/10」「9月10日(木)」のような略記・曜日を使わない)
6. 文体は「です・ます」調に統一する(「である」「だ」で終わる文を混ぜない)
7. 見出し(1行目)に「重要」という文字を使わない
8. 問い合わせ先を、本文の最後の行に置く
9. 見出し(1行目)はアスタリスクやハッシュなどの記号を付けず、文字だけで書く。文字数は15字以内にする(自己判定のときも、実際に出力した1行目をそのまま1文字ずつ数える)
10. 箇条書きの各行を35字以内にする
11. 箇条書きの前に置く説明文(リード文)を2文以内にする
12. 時刻は「21:00」のように数字だけの24時間表記にする(「午後9時」のような書き方をしない)
お知らせ文を書き終えたら、区切り線「---」を引いて、上の12個の条件それぞれについて、番号ごとに「満たした」か「満たしていない」かを自己判定して書いてください。
2回とも、見出しに記号は付かず(「メンテナンスのお知らせ」11字・「システムメンテナンスのお知らせ」15字)、12条件とも守られました。条件そのものを削らなくても、「記号を付けない」と名指しするだけで直りました。
そもそも自己申告を信じてよいか分からない
この記事の実測どおり、自己申告は9回とも「全部満たした」と答え、実際に崩れていた4回を1回も検出しませんでした。件数の一致や「満たした」という言葉を見て安心せず、機械で数え直す習慣についてはAIに「たぶん動きます」と言わせないための頼み方にまとめてあります。
応用・次の一手
この記事で分かったのは、「条件が多いと崩れる」のではなく「特定の種類の条件が崩れやすい」ということです。とくに見出し・タイトルのような「AIが自分で体裁を整えたくなる箇所」に字数条件を付けるときは、記号を付けない旨を先に断っておくと安全です。
これから複数の見出し・タイトルに字数の上限を付けます。
毎回この2つを守ってください。
・見出しにはアスタリスクやハッシュなどの記号を付けず、文字だけで書く
・字数を数えるときは、実際に出力した文字列をそのまま数える
まず1つ目の材料を貼るので、その条件で書いてください。
箇条書きの行数や全体の字数のような「地の文」の条件は、この実測では最後まで崩れませんでした。同じ「400字以内」でも材料の長さによっては崩れることがあるので、長い文書を、落としてはいけない情報ごと要約させるの実測(「400字以内」と頼んでも417字=4%超過)もあわせて確認してください。役割設定など、他の定説を実測した記事はAIに役割を与える効果を確かめるにあります。
今回の数字はすべて架空データでの実測(4版×各2回=8回+順番を逆にした版1回=計9回・のべ72件)です。生の返りと判定コードは docs/evidence/many-conditions-self-check-blind-spot.md に全文置いてあります。