小説の場面をChatGPTに書かせる試み 1/100

小説をChatGPTに書かせるのがうまく行かない。

小説をChatGPTに書かせるのがうまく行かない。

最初から成功させようとすると、しんどい。100回失敗することを目標にすれば、しんどくない。
その1回目の失敗について書く。

まだこの方法では出力をしていない。この記事は書きかけである。

小説をChatGPTに書かせると対立がうまく書けない

前回の失敗 対立がうまく書けない

ChatGPTに小説の場面を書かせてもうまく行かない。対立する二人の人物の会話を書かせようとすると、すぐさま和解してしまう。例えば、『走れメロス』を書かせようとすると、メロスとディオニスが出会った場面で、二人が対話を通して和解する。

解決策 スレッドを分けてはどうか?

一つのスレッドでメロスとディオニスの内面を管理していると、対話して和解する。それでは、複数のスレッドを立てて、それぞれにメロスとディオニスの内面を管理させてはどうか?

行動スレッド

行動スレッドは、登場人物ごとに与えられる。
場面の直前の状態を入力とし、その人物が取りうる行動の候補を複数返す。

ゲームマスタースレッド

ゲームマスタースレッドは、登場人物ごとに与えても、複数の人物で共有しても良い。
取りうる行動の候補を入力として、場面に次に起こることに最も近い結果を起こす行動を返す。

内面スレッド


内面スレッドは、登場人物ごとに与えられる。
行動スレッド・ゲームマスタースレッドの返り値を入力として、その人物の内面を返す。

スレッド間の情報の流れ

  • 行動スレッドが行動の候補を出力する。

  • 行動の候補のどれがとられるかを、ゲームマスタースレッドが決定する。

  • 行動スレッドとゲームマスタースレッドの出力から、内面スレッドが人物の内面を描写する。

  • 上記すべての出力から、小説化スレッドが、小説をえがく。

実際のプロンプト

行動スレッド 実際のプロンプト

【1回目の入力】
私は、物語を書こうとしています。あなたはその補助をするために、登場人物を演じます。
以下のように、あなたが演じるべき登場人物の情報を提供します。以後、あなたは、その登場人物を演じて回答をしてください。

登場人物の内面的特徴
登場人物の肉体的特徴
登場人物の社会的特徴
この場面でのその登場人物の目標

【2回目以降の入力】

今後、あなたには、以下のように情報を提供します。それに従って出力フォームを完成させてください。今回はフレームワークの説明のみを行います。何をすべきか理解したら、「OK」と返答してください。

[入力:この場面でのあなたの目標]
この場面であなたが達成したい目標。

[入力:他者による行動]
これは、あなた以外のシーンにいるキャラクターによる行動を示します。

[入力:その行動によって引き起こされるあなたの状態]
これは、上記の行動によって引き起こされる状態を示します。

[入力:現在のシーンの状態]
これは、物語の中の現在のシーンの状態を示します。

[入力:このシーンに存在するキャラクターや物]
シーンに存在するキャラクターや物。

[出力:他者の行動の推測される目的]
あなた以外で、シーンで行動をとったキャラクターの行動に基づいて、その意図を推測してください。

[出力:他者の行動によるあなたへの変化]
以下のようにリストしてください:

- 他者の行動によってあなたに引き起こされた変化
- あなたの内面的な思考

[出力:障害]
あなたの目標に向かって進むのを妨げる障害を箇条書きでリストしてください。障害には、以下のようなものが含まれますが、これに限定されません:
- 物理的な障害
- 利害が対立するキャラクター
- 現状を異なる理解しているキャラクター
障害がない場合、この項目は空白にしてもかまいません。

[出力:助けとなるもの]
あなたの目標を達成するのを助けるものをリストしてください。これには以下のようなものが含まれますが、これに限定されません:
- 利用可能な道具
- 共通の利益を持つ協力者
- 他人の誤解を利用すること
助けとなるものがない場合、この項目は空白にしてもかまいません。

[出力:行動候補]
あなたの性格と上記の状況に基づき、あなたが取る行動の提案をしてください。

これらの行動には、物理的な行動、他のキャラクターに影響を与える行動、他のキャラクターとの言葉によるコミュニケーションが含まれることができます。
行動候補をリストする際は以下の形式に従ってください(n個の行動候補があると仮定します):

行動1
行動の対象:
行動の内容:

行動i
行動の対象:
行動の内容:

行動n
行動の対象:
行動の内容:

内面スレッド 実際のプロンプト

【1回目の入力】
私は、物語を書こうとしています。あなたはその補助をするために、登場人物を演じます。
以下のように、あなたが演じるべき登場人物の情報を提供します。以後、あなたは、その登場人物を演じて回答をしてください。

登場人物の内面的特徴
登場人物の肉体的特徴
登場人物の社会的特徴
この場面でのその登場人物の目標

【2回目以降の入力】

今後、あなたには、以下のように情報を提供します。それに従って出力フォームを完成させてください。今回はフレームワークの説明のみを行います。何をすべきか理解したら、「OK」と返答してください。

(行動スレッドから)
[入力:他者の行動の目的の推論] → [出力:他者の行動の目的をどのように推論したか]
あなたは他者からの行動を受け取ります。彼らの行動の目的についてどのように考えているかはすでにテキストとして書かれています。このテキストをあなたへの入力として提供します。このテキストをあなたのキャラクターに合わせた会話テキストに変換して出力してください。

[入力:他者の行動による自分への影響] → [出力:他者の行動の影響についての思考]
あなたが他者から受け取った行動によってどのように影響を受けたかはすでにテキストとして書かれています。このテキストをあなたへの入力として提供します。これらの行動の影響についての思考を、あなたのキャラクターに合わせた対話テキストに変換してください。

(ゲームマスタースレッドから)
[入力:行動候補と実際にとられた行動] → [出力:あなたのキャラクターに基づいて、候補から行動が選ばれた理由を説明する。対話形式で]
そのシーンであなたが試みた行動の候補と、どれが選ばれたかはすでにテキストとして書かれています。このテキストをあなたへの入力として提供します。あなたのキャラクターに基づいて、なぜその行動を候補から選んだのか、そしてなぜ他の行動を選ばなかったのかを説明してください。また、その説明を二重引用符で囲んだ対話テキストとして出力してください。

[入力:結果] → [出力:行動目的達成の見通し]
あなたがとった行動の結果はすでにテキストとして出力されています。その結果についての思考、特にあなたの大いなる目的を達成するための見通しが明るくなったか暗くなったか、をあなたのキャラクターに基づいた二重引用符で囲んだ対話テキストとして出力してください。

ゲームマスタースレッド 実際のプロンプト

【ゲームマスターに与えるプロンプト】

以下のコマンドを理解したら、「了解」と答えてください。

あなたは物語のシーンをより良くする責任があります。

あなたは以下の入力を受け取ります:
[入力:行動をとる者とその性格]
[入力:物語の始まりから現在までの要約]
[入力:このシーンに存在するキャラクター・物・事象]
[入力:行動候補]
[入力:このシーンで次に達成されるべき状態]

それに対して、以下の出力を提供してください:

[出力:行動候補の可能な結果]
それぞれの候補について、成功するか失敗するかを考えてください。成功または失敗の原因として、このシーンに存在するキャラクターや物を使用することができます。

出力のフォーマットは以下を利用してください。
```
行動1 - 成功:
成功の原因:
行動1 - 失敗:
失敗の原因:

行動i - 成功:
成功の原因:
行動i - 失敗:
失敗の原因:

行動n - 成功:
成功の原因:
行動n - 失敗:
失敗の原因:
```

[出力:各結果がシーンに与える貢献]
それぞれの結果が「このシーンで次に達成されるべき状態」をどのように助けるかを説明してください。

[出力:貢献度のスコア]
それぞれの結果に対して、貢献度を10点満点で採点してください。

[出力:選ばれた行動]
貢献度のスコアが最高だったシーケンスの行動と原因をコピーアンドペーストしてください。スコアが同じ結果がある場合、ランダムに一つ選んでください。

行動i - 成功/失敗:
成功/失敗の原因:

[出力:選ばれた行動の結果]
行動に影響を受けた人々と彼らの現在の状態をリストアップしてください

小説化テンプレート 実際のプロンプト

【1回目の入力】

以下の情報を用いて、小説の一節を作成してください。
今回はフレームワークの説明のみを行います。何をすべきか理解したら、「OK」と返答してください。

# 「{キャラクター名}の内面」スレッドの入力から転記
[{キャラクター名}の性格]
これは{キャラクター名}の性格を示す項目です。
この項目は直接小説に書き込むべきではありません。{キャラクター名}の行動を描写する際には、この項目と矛盾しないように書いてください。

[{キャラクター名}の場面の目標
これは、{キャラクター名}がこのシーンで達成したい目標を示す項目です。
この項目は、{キャラクター名}がそれについて語ることを決めない限り、直接小説に書き込むべきではありません。{キャラクター名}の行動を描写する際には、この項目と矛盾しないように書いてください。

# 「{キャラクター名}の内面」スレッドの出力から転記
[他者の行動の目的をどのように推測したか]
必ず使用してください。
この項目は、{キャラクター名}が他者から受けた行動をどのように解釈したかを示します。解釈は既に二重引用符で囲まれた形式で入力されているので、そのまま使用してください。必要に応じて、小説形式に適した行動を含めてください。

[他者からの行動の影響に対する考え]
必ず使用してください。
この項目は、{キャラクター名}が行動を受けたときの内的な反応を示します。この項目は既に二重引用符で囲まれた形式で入力されているので、そのまま使用してください。必要に応じて、小説形式に適した行動を含めてください。

[{キャラクター名}が行動を選んだ理由]
必ず使用してください。
この項目は、{キャラクター名}が特定の行動を選択した理由を示します。この項目は既に二重引用符で囲まれた形式で入力されているので、そのまま使用してください。必要に応じて、小説形式に適した行動を含めてください。

[{キャラクター名}の目的達成の見通し]
必ず使用してください。
この項目は、{キャラクター名}が取った行動の結果として何を考えたかを示すものです。この項目は既に二重引用符で囲まれた形式で入力されているので、そのまま使用してください。必要に応じて、小説形式に適した行動を含めてください。

# ゲームマスタースレッドの入力から転記
[物語の始まりから現在までの要約]
この項目は、物語の流れを現在までに示すものです。
この項目は直接小説に書き込む必要はありませんが、自然に使用できる場合は使用してください。物語はこの項目と矛盾しないように書いてください。

[このシーンに存在するキャラクターやオブジェクト]
この項目は、このシーンに存在するキャラクター、オブジェクト、概念を示します。
この項目は直接小説に書き込む必要はありませんが、自然に使用できる場合は使用してください。物語はこの項目と矛盾しないように書いてください。

[このシーンで達成されるべき状態]
この項目は、あなたが書いている小説の最終的な状態を示します。あなたの役割は、この項目の詳細で小説的な描写を提供することですが、その描写を超えて書き続けてはなりません。具体的には、この項目の後の入力に明示的に記されていないキャラクターの行動を続けてはなりません。

# ゲームマスタースレッドの出力から転記
[選択された行動]
この項目は、{キャラクター名}が実際に行った行動です。これは小説に記述する必要があります。

[選択した行動の結果]
この項目は、{キャラクター名}が実際に行った行動による結果です。これは小説に記述する必要があります。

[選択した結果によるシーンの状態の変化]
この項目は、あなたが書いている小説の最終的な状態を示します。あなたの役割は、この項目の詳細で小説的な描写を提供することですが、その描写を超えて書き続けてはなりません。具体的には、この項目の後の入力に明示的に記されていないキャラクターの行動を描写してはいけません。

この方法の結果

『走れメロス』の第2場面以降を書かせることを試みる。

行動スレッド メロス  入力 1

私は、物語を書こうとしています。あなたはその補助をするために、登場人物を演じます。 以下のように、あなたが演じるべき登場人物の情報を提供します。以後、あなたは、その登場人物を演じて回答をしてください。

名前:メロス
古代ギリシア時代の青年

[外見的特徴]
- 健康的で丈夫な体格を持つ。
- 体力と持久力がある。
[内面的特徴]
- 邪悪に対して敏感で公正感が強い。
- 感情が豊かで、特に怒りの感情を強く表現できる。
- 勇敢で決断力がある。
- 家族愛が深く、思いやりのある性格。
- 友情を大切にする。
[社会的特徴]
- 単純な生活を送り、高度な教育を受けていない可能性がある。
- 社会的にはあまり高い地位にはいない。
- 家族(特に妹)を支え、一緒に生活する責任を持つ。
- 他人に対して面倒見がよく、信頼されている。

(以下は、「行動スレッド 実際のプロンプト」と同じなので、省略)


行動スレッド メロス 入力2

[入力:この場面でのあなたの目標]
都市国家の王、ディオニスを殺害する。
[入力:他者による行動]
都市国家の住人から、ディオニスは日々、罪のないものを処刑していると聞かされた。
[入力:その行動によって引き起こされるあなたの状態]
怒り、王を殺そうと決めた。
[入力:現在のシーンの状態]
メロスは都市国家にいる。
妹の婚礼のために必要な物品(婚礼の衣装など)を買ったあとで、それらを持っている。
街は、王におびえ、静まり返っている。
[入力:このシーンに存在するキャラクターや物]
メロス
都市国家

城の警邏
都市国家の怯える住人
妹の婚礼のために必要な物品(婚礼の衣装など)

ゲームマスタースレッド 入力 1

プロンプトについては、「ゲームマスタースレッド 実際のプロンプト」と同じである。

まだ出力の途中である。この記事は書きかけである。

ここから先は

0字

¥ 300

この記事が気に入ったらサポートをしてみませんか?