はじめに
OpenAIが11/7にChatGPT4-Turboを発表してこれはやばいと騒がれていますね。中でも128kトークンとファイルアップロードに対応した新しいAPIは、本1冊を丸々読み込むことができるウィンドウサイズなので、OpenAIを後追いするAIスタートアップに大打撃みたいな声も聞かれています。
ところで、本日11/8にWeb版ChatGPTを開くと、しれっと大幅リニューアルされていました。少し触ってみたところ、入力できるトークン数が大幅に増加していそうです。
これまでGPT4は一度に入力できるのが4Kトークン、記憶を保持できるのが8Kトークンでした。明らかに増えていると思われるので、実験的に確かめます。(記憶違いだったらすみません)
実験
一度に入力できるトークン数
これはエラーが起こるまで文字数を増やしていくだけで実現できますね。ただし日本語の文字数とトークン数はイコールではないので、そこだけ注意が必要です。2048トークンから初めて少しづつ増やしてみます。
まずは2k、余裕でOKです。ここから2倍ずつ増やしていきます。
- 2K -> OK
- 4K -> OK
- 8K -> OK
- 16K -> OK
- 32K -> NG
少なくとも16Kまでは行けました。以前のバージョンから大幅に増えていますね。ここからは人力二分探索をします。
- 24K -> NG
- 20K -> OK
- 22K -> NG
- 21K -> OK
この実験から、21Kトークンまで入力できることが分かりました。非常に長いですね。最終的に正確には21,838トークンの入力まで可能でした。
内部コンテキストのトークン数
次に内部のコンテキストをどれほど覚えているかを計測します。最初に合言葉を教えて、いくつかの会話を実行して、その後でも最初の合言葉を覚えているかどうかで計測します。
まずは21Kで実行してみたところ、合言葉を覚えています。
次に、32Kで実行してみたところ、合言葉を覚えていませんでした。二分探索しましょう。
- 24K -> OK
- 28K -> OK
- 30K -> NG
- 29K -> OK
この実験から、29Kトークンまでは内部状態を覚えていられるようです。やはり非常に長く、活用方法の夢が広がりますね。これだけ長ければ、バーチャル親友としても長く記憶を保持できそうな気がします。
また、予想なのですが、本来は一度の入力は24Kまで、内部トークンは32Kまで対応しているが、コードインタープリタや検索のためのインストラクションが3Kほど容量を使用しており、ユーザーが使用できるのは21Kと29Kなのではないかと予想します。
ファイルの入力
今回のバージョンから、PDFやテキストファイルなど様々なファイルをアップロードできるようになりました。これらのファイルのトークン数の上限も確かめてみましょう。もしかしたら通常の文字入力よりコンテキストが長いのではないかと期待しています。
この実験では、ファイルの先頭に合言葉1を、ファイルの末尾に合言葉2を挿入して、どちらの合言葉も同時に認識できる最大のトークン数を調べます。
まずは29Kから行ってみましょう。
合言葉1: 見つけることができませんでした。
合言葉2: 正解の合言葉
先頭の合言葉を見つけられませんでした。何度か試したのですが、ダメでした。29KはNGとします。引き続き探索します。
- 29K -> NG
- 24K -> NG
- 20K -> OK
- 22K -> OK
- 23K -> NG
ということで、22Kトークンのファイルまで認識することができました。ユーザーの入力上限とほとんど同じくらいですね。おそらく内部でファイルを開いた後に、長すぎる文字列の場合は末尾の一定の文字を機械的に切り取って、ChatGPTのトークンに変換しているのだと思います。しかしエラーが出ないんですね。ファイルが大きすぎて読み込めませんでした、などとエラーを出力してくれた方がありがたい気がします。ファイルの末尾のみ認識というのも気をつけた方が良さそうですね。ちなみに、32Kトークンを超えるファイルはアップロードに失敗しました。
結論
機能 | 以前の上限 | 現在の上限 |
---|---|---|
一度に入力できるトークン数 | 4K | 21K |
内部コンテキストのトークン数 | 8K | 29K |
ファイルの入力トークン数 | なし | 22K |
結論
新しいChatGPT4-Turboの能力は、以前のバージョンに比べて大幅に向上しています。一度に入力できるトークン数が21Kまで、内部コンテキストを記憶できるトークン数が29Kまで、そしてファイルの入力トークン数が22Kまでとなりました。これにより、より長い文書の処理や、より複雑な対話が可能になっています。特にファイルアップロード機能の拡充は、文書全体を読み込むことができるため、研究、教育、ビジネスなど様々な分野での応用が期待されます。ただし、ファイルサイズの制限には注意が必要です。とにかく、Web版がここまで充実すると、他のAIサービスを使う必要が全くなくなりますね。
この実験は2023/11/8に行いました。もし間違いや新しい情報があればコメントをお願いします
追記
上記の実験は「GPT-4 With DALL·E, browsing and analysis」で行いました。「ChatGPT Classic」で試したところ違う結果が得られたので共有します。
- 一度の入力トークン数: 21,838トークンで変わりませんでした。
- 内部コンテキストのトークン数: 約31Kトークン
少しだけ内部コンテキストサイズがClassicの方が多いようですね。やはり、ブラウジングやコードインタプリタのためのインストラクションが3Kトークンほど含まれていそうです。