「ロールプレイ AI プロンプト」と打って、五十本入りのテンプレ集を見つけ、ひとつ貼った。最初の返信はよかった。四通目で薄くなった。だから、もっといいプロンプト集を探しに戻る——この順番がそもそも間違っている。
同じ一段落が、あるキャラでは緊張感のある場面になり、別のキャラでは当たり障りのない会話になる。理由をどのページも書かないのは、書こうとするとプロンプト以外の話になってしまうからだ。
プロンプトは、モデルが見ているもののうち一番小さい
一回のやり取りでモデルに届くのは四つ。キャラ設定、ここまでの会話、記憶に書かれた事実、そしてあなたが今打った一行。あなたの一行は一番短く、一番最後に届く。押すことはできるが、上書きはできない。
だからテンプレは占いのように当たったり外れたりする。「あなたは雨の止まない街の疲れた探偵だ」は、設定が二行しかないキャラには効く。足りなかったものを補ってくれるからだ。ところが作り込んだキャラに同じ文を貼ると、二つ目の矛盾した人格を渡すことになる。三通あとに、口調がずれはじめる。
順番はこうなる。まずキャラ設定、次に最初のメッセージ、そして記憶。入力欄に何を書くかは最後だ。多くの人がこの順を逆から始めて、AIが弱いと結論づけている。
設定に書くべき三つ——文量ではない
同人でもなりきりでも、設定資料を書く文化はこの国にずっとある。厚さではなく、効く三点で書くほうが早い。
- 矛盾をひとつ。優しいだけのキャラは十通で家具になる。優しくて、そのことに疲れているキャラは、毎回どこかで場面になる。
- 語らないことを決める。戦争の話はしない、兄の話はしない、なぜ辞めたかは言わない——書かなければ沈黙は存在しない。あなたの頭の中の設定は届かない。
- 一人称と語尾。日本語ではここが最短で最強の一行になる。「僕」か「俺」か「あたし」か、語尾を丸めるか言い切るか。性格を三行書くより、この一行のほうが声を決める。
ここではカタログの紹介文とキャラ設定は別の欄で、モデルに届くのは設定のほうだけ。紹介文は、一覧を眺めている人間が読むための文章だ。いちばんいい段落を紹介文に書いてしまうのが、良い文章を無駄にする一番よくある形になっている。関連: 「学習させる」ではなく実際に手を入れられる場所の話。
最初のメッセージは、たった一つの見本
キャラの最初のメッセージは、そのキャラの一通目として保存される。つまりモデルが読む会話の中に入っている。しかも一通目の時点では、その子の声の見本はこれしか存在しない。長さ、時制、人称、地の文を書くか台詞だけか——全部が真似される。次の返信は前の返信を手本にするので、ずっと続く。
「こんにちは! マリナです。お名前は? 今日は何をしましょうか?」——これで教えたのは、質問して待つキャラだということ。以降ずっと質問して待つ。対して「雨が降りはじめてから、店には誰も来ていない。マリナは十分前に拭いたグラスをもう一度拭き、ドアが開く音でようやく顔を上げる。——上の部屋のことで電話をくれたのは、あなたね。疑問形ではなかった」。場所、時間帯、たった今起きたこと、そして彼女の声の一行。
あなたのことは挨拶に書かなくていい。キャラごとに、読めて直せる記憶があるので、一度言った事実を言い直す必要がない。だから最初のメッセージを自己紹介ではなく場面にできる。詳しくはこちら。
尋問ではなく、場面から始める書き出し
自分の一通目も同じ仕事をする。立つ場所を与え、反応できるものを置き、説明しないことをひとつだけ残す。
- 「バイト上がりまであと一時間。カウンターのいちばん端に座る。開きたくないのが丸わかりの封筒を持って。……まだ訊かないで」
- 「車に乗って一時間、あの分かれ道から二人とも黙ったまま。理由は言わずに、私は一つ手前の出口で降りる」
- 「午前二時、非常階段であなたに見つかる。眠れなかったと言う。本当はそれが理由じゃない」
説明しなかった一点がエンジンになる。キャラには踏み込む理由ができ、こちらには後で切るカードが残る。避けたいのは「あなたは古い吸血鬼、私はその従者。はじめ」。これは設定であって場面ではないので、一通目で自己紹介しかできない。
場面から出ずに軌道を変える
返信がずれたとき、つい指示を書きたくなる。一度は効くが、毎回代償がある。指示は会話の中に残り、ト書きだらけの文脈は「場面を演じる会話」ではなく「場面について話し合う会話」をモデルに教えてしまう。
- 物語の中から動かす。返信を短くしたいなら自分の返信を短くする。数回で長さも語調も寄ってくる。何でも肯定してくるなら、その子が反対しそうなことをやってみる。
- 括弧の補足は少なく短く。「(中の人として:返信は短い一段落で)」。一つなら効く。四つ並べると打ち合わせになる。
- 作り直すより、返信を直す。ここがいちばん効いて、いちばん使われていない。残した文がそのまま次の見本になるので、三段落を良い一段落に削れば、次の返信はその形で来る。分岐したい場面はフォークすれば、気に入ったほうも残る。
薄くなったときは、だいたい三つのどれか
- 開いた問いが残っていない。二往復前に緊張が解けたまま流している。部屋の外から何かを入れる——ノック、着信、締め切り。
- こちらが全部肯定している。相手にできるのは肯定を返すことだけになる。役のまま、一度本気で反対する。
- 文脈があなたの指示で埋まっている。同じキャラで新しい話を始める。事実は記憶が運ぶが、ト書きは付いてこない。
そして再生成は二回まで。二回続けて弱いなら、原因はサイコロの手前にある。
スライダーの話を、普通の言葉で
- temperature は、明らかな次の一語をどれだけ外しにいくか。低ければ安定して少し退屈、高ければ発想的に読めるが、ある点を越えると一ページ前に出した名前を忘れる。
- top_p は選ぶ前に候補そのものを絞る。強く絞ると律儀で少し機械的になるが、temperature より扱いやすいブレーキだ。
- 繰り返しへのペナルティは、すでに使った語から遠ざける。少しならワンパターンな形容が直る。効かせすぎると、あなたの名前まで呼ばなくなる。名前も繰り返される語だからだ。
正直に言うと、スライダーが変えるのは質感であって判断ではない。文の響きは変えられても、その場面に賭けるものがあるかどうかは変えられない。形容詞三つ分の深さのキャラは、温度を上げても深くならない。
プロンプトでは直らないもの
- 覚えさせることはできない。「夜勤だって覚えておいて」はその会話までで、翌週には消えている。開ける場所に書いてあれば別だ。
- ルールを長くは保てない。数往復ごとに言い直しているものは、設定か記憶に置くべきもの。
- 形容詞三つのキャラは救えないし、表現の下限も動かせない。大人向けの内容はボット内の18歳以上の確認の先にある。
競合のほうが強い点も書いておく。場所や名前が出たときだけ差し込まれる条件付きの世界設定——長期のキャンペーンでこれを使うなら、SillyTavern のロアブックと、深さを指定して差し込むオーサーズノートがある。こちらにはどちらもない。キャラクターカードは設定・最初のメッセージ・サンプリングごと取り込めるが、ロアブックは付いてこない。その運用が前提なら向こうが適任で、カードの数も Chub や Janitor のほうが桁違いに多い。
十分でできるテスト
- 薄くなったキャラの設定を開く。矛盾をひとつと、語らない話題をひとつ。二文でいい。
- 最初のメッセージを場面に書き直す。場所、時間、たった今起きたこと、その子の声の一行。疑問符は消す。
- 記憶を開いて、間違っている一行を消す。たいてい一行ある。
- 新しい話を始めて、上の書き出しのどれかを送る。
- 八割方いい返信が来たら、作り直さずに削って直す。次の返信を見る。
十分の手直しと、新しいプロンプト零本で明らかに良くなったなら、それが最初の検索への答えになる。ボットは @talaforge_bot、Telegram の中で開く。入れるものも、登録するものもない。