Up 読む・考える・書く 作成: 2025-09-25
更新: 2025-09-25


    ChatGPT の「テクスト生成」は,以下のようになっている。

    ユーザの入力するテクストを「質問」,ChatGPT の出力するテクストを「応答」と言うことにする。
    セッションの開始からここまでの質問・応答全体のテクストが,
      T:質問 → 応答 → 質問 → ‥‥ → 応答 → 質問
    であるとする。

    直近の質問に対する応答のテクスト生成は,つぎのようになる:

     T    t1   t2 ‥‥ tn−1 tn  <eos>
          ↑    ↑     ↑    ↑    ↑
     │ P1 │ P2 │  ‥‥ │ Pn │Pn+1│

    ここで,t1, t2, ‥‥, tn は,追加されるトークン。
    <eos>は,「応答終了」コード。
    P1, P2, ‥‥, Pn+1 は,トークン追加を周期とする処理。

    さらにつぎの記号を導入する:
       T1 = T + t1
       T2 = T1 + t2
        ‥‥
       Tn = Tn-1 + tn

    P1, ‥‥, Pn+1 は,つぎがこれの中で起こっている:
     P1 は,
      Tを読みながら,
      直近の質問に対する応答の大筋を決め,
      出だしの文言を考え,
      出だしの文言の最初のトークンt1 を書く
     Pk ( k = 2, ‥‥, n ) は,
      Tk-1 を読みながら,
      続く文言を考え,
      続く文言の最初のトークンtk を書く
     Pn+1 は,
      Tn を読みなが
      
      応答を閉じてよいと判断して,
      <eos>を書く

    このように,「テクスト生成」では<読む・考える・書く>が起こっている。


    「P1 で応答の大筋が決められる」は,わたしと ChatGPT のつぎの対話がこれの証明になる:
      わたし:
       短い自問自答を作成してください。
      ChatGPT:
       今日は何をすべきだろう?
       まずレポートの整理から始めよう。

    実際,ChatGPT のこの応答は,これに先行する全テクストから導かれるものではない。
    先行するテクスト全体から独立している。
    即ち,ChatGPT が<考える>をして決めたものである。

     註:
      通説は,トークンの追加を「確率」で説明する。
      即ち,つぎのようになる:
      1. 先行する全テクストTに続くトークンは,「今日」が確率が高い。
      2. T+今日 に続くトークンは,「は」が確率が高い。
      3. T+今日は に続くトークンは,「何」が確率が高い。
        ‥‥‥‥
      通説のこの説明は,通説が「確率」を知らないことになってしまう。