AIの会話文が説明くさくなる理由
AIに会話を書かせると、人物が自分の事情を丁寧に説明し始めます。「知っての通り、私たちは三年前にあの事件で……」。人はこんな喋り方をしません。 それでもこうなるのは、小説の会話という文脈で、情報を運ぶ発話が統計的に最も自然だからです。会話の役割が、モデルの中では説明に寄っています。
人は、相手が知っていることを言わない
日常会話を思い出してください。三年前の事件のことを、当事者同士が確認し合うことはありません。「あの件」で通じます。通じるどころか、名前を出さないこと自体が気まずさの表現になります。
小説で説明ぜりふが必要になるのは、読者が知らないからです。そこで書き手は、人物に説明させてしまう。けれど人物は読者を知りません。知らないはずの相手に向かって喋った瞬間、その人は人物ではなく、案内役の装置になります。
読者に情報を渡す責任は、地の文が負うべきです。会話に肩代わりさせないでください。
「お前も知っての通り、この村は三年前の飢饉で人口が半分になった。
だから今年の収穫は、村の存亡がかかっているんだ」
「今年は、去年より三人少ない」
村長は名簿を閉じた。飢饉から三年、この村では人が減ることにしか驚かなくなっていた。
人の喋り方は、統計ではなく観察から来る
自然な会話を書くために必要なのは、会話の技術ではありません。自分が知っている人の、喋り方の癖です。
話し始める前に一度息を吸う人。肯定するとき「うん」を二回言う人。都合が悪くなると敬語になる人。反論する前に相手の名前を呼ぶ人。こういう情報は、統計の中にありません。 特定の誰かを見ていた人だけが持っています。
そして、これらは特別な観察力を必要としません。家族、同僚、友人。誰でも数人ぶんは持っています。 ただ、それを小説に使えると思ってこなかっただけです。
一人ぶんの癖を渡せば、その人物は他のどのキャラクターとも違う喋り方をします。AIが苦手なのは自然さの再現ではなく、固有の癖を発明することのほうです。 発明は無理でも模倣は得意なので、一つ渡せば全編に効きます。
仕組みから見ると — 説明ぜりふは、最も確率の高い続きである
「お前も知っての通り」という書き出しは、学習データの中に大量にあります。小説にも、脚本にも、アニメにも。だからモデルにとって、状況説明が必要な場面でこの形は最も確率の高い続きです。悪文だから出てくるのではなく、よく書かれてきたから出てきます。
もう一つ効いているのが、モデルには「読者が何を知っているか」と「登場人物が何を知っているか」を区別する機構がない、という点です。文脈に書かれている情報は、すべて等しく「使える情報」として扱われます。その情報を誰が知っているかは、指示されなければ管理されません。
だから対策も具体的になります。「この場面で真相を知っているのは料理人だけ。他の二人は知らない」と明示する。知識の分布を人間が決めて渡せば、説明ぜりふは激減します。
情報は、対立の中でしか自然に出ない
どうしても会話で出したい情報がある場合、方法は一つです。その情報をめぐって、二人が対立していること。
人が事情を口に出すのは、相手を責める時、言い訳する時、交渉する時です。「三年前、お前は逃げた」は説明ではなく攻撃なので、自然に響きます。同じ情報でも、確認なら不自然、攻撃なら自然。差は情報量ではなく、その台詞に目的があるかです。
書いた台詞を読み返して「この人は何のためにこれを言ったか」と聞いてみてください。答えが「読者に教えるため」なら、それは削る台詞です。
「あの時、君は僕を助けてくれたよね。あの事故の日に」
「ああ、そうだったな」
「助けたのは俺だ。お前は覚えてないだろうけどな」
「……覚えてるよ」
「じゃあ、なんで今まで一度も言わなかった」
知らない人を一人、その場に置く
説明を自然にする最も古い手は、知らない人物を混ぜることです。新入り、よそ者、子供。その人物が聞けば、答えるのは自然です。
ただし、この手は使いすぎると露骨になります。何でも聞いてくれる便利な人物は、読者にも意図が見えます。使うなら一作に一度、しかもその人物が聞いたせいで面倒が起きるようにしてください。役目を与えれば装置に見えません。
言わせないほうが、伝わる
一番効くのは、実は書かないことです。言いかけてやめる、話題を変える、黙る。読者は空白を勝手に埋めますし、埋めたものは自分で作ったぶん強く残ります。
「好きだ」と言わせずに好意を伝える方法はいくらでもあります。相手の分だけ多めに注文する、名前を呼ぶ回数が増える、目を合わせなくなる。言わなかった事実が、言葉より大きな情報になります。
会話を書き終えたら、一番言いたい台詞を一つ消してみてください。それで成立するなら、消したほうが良い場面です。
「ずっと好きだった。でも、言えなかったんだ」
「……いや」
彼は、頼んでもいない傘を置いて帰った。
検査方法は、声に出すこと
説明ぜりふは、黙読では見つかりません。文字として整っているからです。声に出すと即座に分かります。 人は、そんなに情報を詰めて喋らないからです。
自分で音読するのが面倒なら、読み上げさせてください。耳で聞くと、「お前も知っての通り」の気持ち悪さは一秒で分かります。Noveliaで音声化した人がまず直すのは、たいてい会話文です。
渡すのは、言わせないことの指定
実務の要点は、何を言わせないかを指定することです。
AIは知っている情報を会話に出す方向に働きます。だから「この人物は自分の過去を自分からは話さない」と明示してください。禁止型の指示は多くの場面で逆効果ですが、情報開示に関してだけは正しく機能します。
もう一つ有効なのは、会話の目的をずらす指定です。「この会話の目的は、相手を帰らせないこと。話題は何でもいい」。目的を与えると、説明ではなく駆け引きになります。
会話を読み返す時の確認
- その台詞は、相手が既に知っていることを言っていないか
- 「この人は何のために言ったか」に、読者以外の答えがあるか
- 一番言いたい台詞を消しても、場面は成立しないか
- 声に出して読んで、詰まる箇所は無いか
- 全員が同じくらい話が通じる人になっていないか
よくある質問
設定を会話で説明しないと、読者が分かりません
地の文で書いてください。地の文は読者に向かって書かれているので、説明しても不自然になりません。会話は人物同士のものです。
方言や口調を強くすれば個性が出ますか
出ません。口調は表面で、個性は「何を言わないか」に出ます。同じ丁寧語でも、謝らない人物と謝りすぎる人物では別人になります。
会話が続かず、すぐ終わってしまいます
二人の目的が一致しているからです。片方に、その場を早く終わらせたい理由を与えてください。噛み合わないと会話は伸びます。