OpenAI GPT-4 ベータ版コードインタープリターの機能解析
OpenAI は最近、Python コードを記述して実行し、ファイルのアップロードを処理できる ChatGPT のバージョンである GPT-4 のコード インタープリター機能のベータ版を開始しました。ここではそのパフォーマンスの基本的な分析を示します。
主な機能
- ファイル情報の取得: コード インタープリターは、ファイル名から関連情報を取得し、生成された Python コードを使用して、指定されたファイル タイプを処理できます。たとえば、PDF ファイルはテキストとして解析されますが、PNG 画像は圧縮されて入力されます (入力の具体的な形式はまだ明確ではありません)。
- Python コード生成: コード インタープリターは入力ファイルの種類に応じて対応するコードを生成し、出力には STDOUT と STDERR、処理結果 RESULT が含まれます。これらのコンテンツは折りたたまれて表示されます。
- トークン制限を超えたコンテンツ処理: コード インタープリターは、生成された外部ツールを使用して、ユーザーが必要とするコンテンツを取得および抽出します。コンテンツのこの部分は入力として使用され、残りのコンテンツはファイルとしてキャッシュされ、キャッシュされません。直接読まれます。
機能テスト
コード インタープリター機能は、さまざまなファイル タイプに対してテストされました。
チャート (png)
コード インタープリターはファイル名から関連情報を取得します。また、モデルがファイル名を認識できるようにするためのシステム プロンプトが表示される場合もあります。ただし、画像処理のプロセス中に画像が圧縮されるため、複雑なビジュアル テーブルの画像コンテンツが正しく読み取れない可能性があります。
長文(pdf)
PDF ファイルの場合、コード インタープリターは、PyPDF2 を使用して PDF ファイルを処理するなど、単純なコードを生成して実行し、STDOUT、STDERR、結果 RESULT などの処理されたコンテンツを出力します。
GPT-4 のトークン割り当てを確認するために、後の段落 (トークン制限を超えた) が選択されました。テスト結果によると、GPT-4 はファイル全体を直接読み取るのではなく、ユーザーがコンテンツの一部を選択するように誘導します。次に、GPT-4 は外部ツールを生成し、このツールを使用してユーザー指定のコンテンツを取得および抽出し、結果をコンテキストとしてモデルに渡し、ユーザーのプロンプトと組み合わせて処理します。
ショートコード (ipynb)
短いコード テキストの場合、GPT-4 のコード インタープリターは、テキストを取得し、そのテキストを結果としてモデルに入力するための単純な解析ツールを生成できます。
ロングコード(C++)
ただし、長さがトークンの最大数を超える長いテキスト コードの場合、GPT-4 のコード インタープリターは完全なコードを正しく出力できず、その一部のみを出力し、コードのこの部分をコンテキストとしてモデルにロードします。
これは、GPT-4 のコード インタープリター機能には、長さがトークン制限を超えるテキストに対して依然として制限があることを示しています。