「なんで全部同じリズムなんだよ……」
ディスプレイに並んだ会話文をスクロールする。攻めのセリフを選択し、受けのセリフと見比べる。語尾こそ違うのに、文の長さも構造も息継ぎの位置も同じ。4往復分をまとめて削除して、椅子の背にもたれた。
AIに会話劇を書かせると、キャラが「交互に、同じ長さで、丁寧に」話し始める。設定で口調を変えていても、テンポが均一だから掛け合いに聞こえない。原因はセリフの中身ではなく、会話の構造設計にある。
ステップ1: 会話の「役割分担」を設計する
掛け合いが成立するには、2人のキャラが会話の中で異なる機能を持つ必要がある。漫才でいうボケとツッコミ。小説の会話劇でも、この「役割の非対称性」がテンポを生む。
AIにはこの非対称性が見えない。だから「Aが話す→Bが返す→Aが話す」の均等なターン制になる。プロンプトで役割を明示する必要がある。
ラジオ構成作家・峰岸功(34)と養成所の研修生・有馬誠(22)。元推しのラジオ番組がきっかけで繋がった二人が、銭湯の番台前で最後の客として残っている場面を例に取る。
【会話の役割分担】
- 峰岸 功(34歳・ラジオ構成作家):
会話の「振り」担当。穏やかな口調で核心を突く発言をする。
本人は無自覚に相手を揺さぶっている。
セリフは短め(1〜2文)。間を置いてから話す。
一人称: 俺 語尾: 〜だな、〜だろ(断定形だが声のトーンは柔らかい)
- 有馬 誠(22歳・お笑い養成所の研修生):
会話の「返し」担当。テンポ良く切り返すが、図星を突かれると黙る。
沈黙が感情のサイン。
セリフは長短の落差が大きい(普段は3文以上→照れると単語のみ)。
一人称: 俺 語尾: 〜っしょ、〜だろ(タメ口、畳みかけるリズム)
【演出ルール】
- 感情は説明しない。表情・沈黙・動作・セリフだけで表現する
- 「嬉しかった」「悲しかった」のような心情説明は禁止
- 峰岸がボケ的に核心を突き、有馬がツッコミ的に返す構造を維持する
- 有馬が黙った瞬間を「感情が動いた合図」として扱う
ポイントは「振り」と「返し」の明示。AIはこの指定がないと、2人に同量ずつ均等にセリフを配分する。役割を分けた瞬間に、会話のリズムが非対称になり、掛け合いが生まれる。
キャラの口調設定を細かく詰めたい場合は、タイプ別の口調テンプレート一覧が使える。
ステップ2: テンポを制御する——「間」と「拍」の指定
役割を分けただけでは足りない。掛け合いの「速度」を制御する必要がある。
会話劇のテンポは、セリフの長さだけで決まらない。セリフとセリフの「間」——地の文の挟み方、動作描写の有無、返答までの拍数——がリズムを作る。
AIへの指示で有効なのが「拍」の概念。「即答=0拍」「動作を1つ挟む=1拍」「沈黙の描写を入れる=2拍」と定義しておくと、テンポを数値で制御できる。
以下が自分のキャラに差し替えて使える空テンプレート。
【テンポ制御ルール】
■ 拍の定義:
- 0拍(即答): セリフの直後にセリフ。地の文なし
- 1拍: セリフの間に動作描写1文を挟む
- 2拍: セリフの間に沈黙・情景描写を挟む(感情が動いた合図)
■ キャラ別テンポ:
- {キャラA名}({役割: 振り/返し}):
通常 → {拍数}拍で発言
感情が昂ったとき → {拍数}拍に変化
セリフの長さ: 通常{短い/長い} → 感情時{短い/長い}
- {キャラB名}({役割: 振り/返し}):
通常 → {拍数}拍で発言
感情が昂ったとき → {拍数}拍に変化
セリフの長さ: 通常{短い/長い} → 感情時{短い/長い}
■ シーン全体のテンポ設計:
- 前半: {テンポ指定: 例「0〜1拍中心、軽快に」}
- 転換点: {場面: 例「Aの一言が核心を突く」} → 2拍の沈黙を挟む
- 後半: {テンポ指定: 例「1〜2拍中心、余韻を持たせる」}
このテンプレートの全ジャンル記入例+応用パターンはBL Prompt Kit(BOOTH)のフルキットに収録している。
ステップ3: 「ズレ」を仕込む——掛け合いが面白くなる瞬間
テンポを整えたら、最後に「ズレ」を入れる。会話の噛み合わなさ、意図のすれ違い、予想外の返し。掛け合いが「ただの情報交換」から「読ませる会話劇」に変わるのは、このズレがある瞬間だ。
同じ場面で、ズレなし(before)とズレあり(after)を比較する。
before(ズレなし) 「今日で番組終わったな」と峰岸が言った。 「ですね。寂しいっすね」と有馬が答えた。 「まあ、いい番組だった」 「ほんとそれ。最高でした」
after(ズレあり) 「お湯、ぬるかったな」 「急にそれ言います? 番組の話してたのに」 「いや、ぬるい方がいいんだよ。長く浸かれるから」 有馬は番台のガラスケースを指で叩いた。返す言葉が見つからないときの癖だ。 「……峰岸さん、それ番組のことも言ってるでしょ」
▶ 変えたのは「話題のズラし」だけ。峰岸が番組の話を湯温に喩え、有馬が一拍遅れてその真意に気づく。会話の表層と深層にズレを作ることで、読者は「次にどう返すか」を予測し始める。
3人以上の会話劇でこのズレを設計する方法は、複数キャラの会話を書き分けるテンプレートで扱っている。
なぜ掛け合いのテンポが読者を引き込むのか
脳は会話を読むとき、次の返しを無意識に予測する。「こう聞かれたら、こう返すだろう」という予測回路が自動的に働く。
予測どおりの返しが来ると、脳は安心するが、退屈する。beforeの会話が読み飛ばされるのはこれが理由だ。「寂しいですね」「最高でした」——予測と結果が一致し続ける会話は、脳にとって新しい情報がゼロ。処理を省略したくなる。
一方、予測を裏切る返しが来ると、脳は「おや?」と覚醒する。認知科学でいう「予測誤差」が発生し、注意資源が一気にそこへ集中する。afterで峰岸が「お湯、ぬるかったな」と返した瞬間、読者の脳は「なぜ今その話を?」と処理を始める。そして有馬が真意に気づいた瞬間、読者も一緒に「ああ、そういうことか」と意味が接続される。この予測→裏切り→回収のサイクルが、掛け合いの快感の正体だ。
プロンプトで「ズレ」を明示する意味はここにある。AIは放っておくと予測どおりの返しを生成する。それが「AI臭い会話」の本質。役割の非対称性、拍の緩急、話題のズラし——この3つをプロンプトに書くことで、AIの出力に予測誤差を設計できる。
セリフ単体の自然さを高めたい場合は、AI小説のセリフを自然にする方法も併せて読むと効果的だ。
まとめ
- 役割分担: 「振り」と「返し」を明示して会話の非対称性を作る
- 拍の制御: 0拍〜2拍の定義でテンポを数値管理する
- ズレの設計: 話題・意図・解釈をずらして予測誤差を仕込む
掛け合いテンプレートの全パターンはBL Prompt Kit(BOOTH)で。キャラの口調設定をAIに一括で渡したいならキャラノート(β)も試す価値がある。
CharaNote開発日記
「AIに口調を守らせたい」——この記事で紹介したテンプレートを、もっと直感的に管理できるツールを作っています。
CharaNoteは、キャラ設定シートをAIが読める形式で保存し、どのAIツールにもワンクリックで渡せるキャラ管理アプリです。現在クローズドβに向けて開発中。
進捗や先行アクセスの案内はCharaNote公式で。