ChatGPTで小説が途中で途切れる3つの原因と、プロンプト設計で防ぐ方法
3,000字の小説を書かせた。クライマックス直前で出力が止まった。「続き」と送ったら、主人公の一人称が「俺」から「僕」に変わっていた——。
ChatGPTで長い小説を書こうとすると、ほぼ確実にぶつかるのがこの問題だ。途切れること自体は仕様上避けられない。ただし、途切れても破綻しないプロンプトの設計はできる。
ChatGPTで小説が途切れる3つの原因
出力トークンの上限
ChatGPTには1回の応答で出力できるトークン数に上限がある。日本語では概ね2,000〜3,000字程度が目安だ。モデルやプランによって変わるが、「長編小説を1回で全部書いて」という指示は物理的に通らない。
入力が長すぎて出力の余裕がない
ChatGPTが使えるトークンは、入力と出力の合計で上限が決まっている。キャラ設定・世界観・これまでのあらすじを全部詰め込むと、出力に使える枠が削られる。設定を3,000字送って「5,000字の小説を書いて」と言っても、途中で切れる。
「どこで終わるか」の指示がない
意外と見落とされるのがこれだ。ChatGPTは「この場面の終わりまで書け」と言われなければ、自分で区切りを判断する。結果、唐突に終わったり、急いで風呂敷を畳んだりする。出力トークンが残っているのに中途半端な場所で止まるのは、このパターンが多い。
方法1: 一度に1シーンだけ書かせる
「3万字の長編小説を書いて」は、失敗するプロンプトの典型だ。
ChatGPTに長編を書かせるなら、全体構造を先に固定し、1シーンずつ書かせるのが最も安定する。まず全体の流れを5段階で決める。
あなたは小説の構成アドバイザーです。
以下の設定をもとに、5段階の粗アウトラインを作成してください。
【5段階構造】
1. 導入: キャラクターと世界観の提示
2. 上昇: 関係性や状況が動き始める
3. 転換: 障害・対立・すれ違い
4. クライマックス: 感情の頂点
5. 着地: 変化の結果
【各段階に含めること】
- この段階のゴール(1文)
- メインイベント
- 感情の変化(主要キャラそれぞれ)
- 段階の終わり方(次への引き)
{キャラクター設定を貼る}
このアウトラインをもとに、各段階を1シーンずつ書かせる。1回の出力は1,500〜2,000字に収まるから、途切れのリスクが大幅に下がる。
ポイントは粗アウトラインを最初に確定させて動かさないこと。各シーンの詳細は書く直前に展開する。全部を先に決めると、実際に書いた内容との齟齬が生まれる。
方法2: 状態管理シートで文脈を引き継ぐ
シーンを分割して書かせると、次の壁にぶつかる。前のシーンの内容をAIが忘れる。
「続き」と送っても、前のシーンで怒って立ち去ったキャラが、次のシーンで何事もなかったように笑っている。これはChatGPTの欠陥ではなく、文脈を渡していないプロンプト側の問題だ。
解決策は、シーンを1つ書き終わるたびに「現在の状態」を更新し、次のプロンプトに貼り付けること。
【状態管理シート — 第3章終了時点】
■ キャラクター状態
神崎(写真家・32歳):
- 場所: 取り壊し予定のビル・4階
- 感情: 焦り。朝日の角度が変わる前に撮りたい
- 新たに知ったこと: このビルを設計したのが宮本の師匠だった
宮本(建築家・28歳):
- 場所: 同じビル・4階の窓際
- 感情: 複雑。壊されることを受け入れたはずだが揺らいでいる
- 新たに知ったこと: 神崎がこのビルを5年間撮り続けていたこと
■ 直前のシーンの要約
朝日が窓から差し込み、宮本が「この光のために設計されたんだ」と初めて師匠の意図を理解した。神崎はシャッターを切った。
■ 次のシーンへの引き継ぎメモ
宮本の「壊す側」としての葛藤を掘り下げる。神崎がなぜ5年間撮り続けたのか、理由はまだ明かさない。
状態管理シートなしで「続き」を書かせた場合と、ありの場合で出力がどう変わるか。
状態管理なし:
神崎はカメラを構えた。宮本は微笑んで「いい写真ですね」と言った。穏やかな朝の光が二人を包んでいた。
前のシーンの緊張感が消え、まるで初対面のような会話になっている。
状態管理あり:
神崎はファインダーから目を離さなかった。宮本が窓枠に手を置いたまま動かない。 「……撮らないの」 「光が変わるのを待ってる」 嘘だった。宮本の横顔が揺れていたから、シャッターを切れなかっただけだ。
前のシーンの感情が引き継がれ、キャラの行動に一貫性がある。途切れ後に口調や性格が変わる問題にも、この方法は効く。口調の崩壊を防ぐ具体的なテンプレートはAI小説の口調が崩れる原因と固定する方法で解説している。
方法3: 出力の「終わり方」を指定する
「2,000字以内で書いて」と文字数を指定するのは、逆効果になることが多い。ChatGPTは文字数を正確にカウントできない。1,200字あたりで急に話をまとめにかかったり、逆に2,500字を超えて途切れたりする。
代わりに、シーンの終了条件を指定する。
以下のシーンを書いてください。
このシーンは「神崎がシャッターを切り、宮本が振り返る」で終わります。
その地点まで書いたら出力を止めてください。
【演出ルール】
- 感情は説明しない。動作・沈黙・セリフだけで表現する
- 心情を直接書く表現(「胸が熱くなった」等)は禁止
{状態管理シートを貼る}
{キャラ設定を貼る}
「どこで終わるか」が明確だと、ChatGPTは無理に話を畳まない。出力トークンの範囲内で自然な区切りまで書ける。「演出ルール」を一緒に渡しておけば、AI臭い感情説明も抑えられる。
まとめ
ChatGPTで小説が途切れる問題は、「続き」と送るだけでは根本的に解決しない。
- シーン分割: 全体構造を先に固定し、1回1シーンの出力に留める
- 状態管理: 各シーンの終了後にキャラの状態・感情・伏線を記録し、次のプロンプトに渡す
- 終了指示: 文字数ではなく、シーンの区切りポイントで終了条件を指定する
この3つを組み合わせれば、途切れても破綻しない長編が書ける。
シーン分割の「5段階アウトラインシート」と状態管理テンプレートのフルキットはBL Prompt Kit(BOOTH)で無料ダウンロードできる。BLに限らず、あらゆるジャンルの長編小説にそのまま使える構造だ。