「キャッシュフォルダ」を覗いたら何かがいた

入門:ChatGPTデスクトップアプリの裏側に1.7GBの隠れた同梱物が発見される(記事内画像)

パソコンの「キャッシュ」って何だろう?と思う方もいるかもしれません。キャッシュとは、アプリが一時的に使うデータを保存しておく場所のことです。ブラウザが一度見たウェブページの画像を手元に取っておいて、次回の表示を速くする、あのイメージです。普段は意識しない場所なんですよね。

ところが今回、開発者のSimon Willison氏がディスク使用量を調べるツールを使って自分のキャッシュフォルダを確認したところ、OpenAIのChatGPTデスクトップアプリ(以前は「Codex」という名前でしたが、現在はChatGPTに統合・リブランドされています)が`codex-primary-runtime`というフォルダに1.7GB分のデータを置いていることを発見しました。Sourceが報じています。

1.7GBというのは、スマートフォンで撮った写真が数百枚分入るくらいのサイズ感です。アプリ本体とは別に、こっそりとこれだけの量が保存されていたわけです。

中身は何だったのか

そのフォルダの中身を確認すると、かなり多彩なソフトウェアが含まれていたことがわかりました。具体的には次のものです。

まず「Python」(パイソン)と「Node.js」(ノードジェイエス)という、どちらもプログラムを動かすための実行環境(ソフトウェアを動かすための土台のようなもの)がフルセットで入っていました。Pythonが約440MB、Node.jsが約446MBとのことです。

さらに「git」(ギット)というバージョン管理ツール(ファイルの変更履歴を記録・管理するためのツールのことです)が約148MB、「Poppler」(ポプラー)というPDFを扱うためのライブラリ(特定の機能をまとめたプログラム部品のことです)が約188MB含まれていました。

そして最も目を引いたのが「LibreOffice」(リブレオフィス)です。LibreOfficeとは、WordやExcelのような文書・表計算ソフトを無料で使えるオープンソース(誰でもソースコードを見たり改変したりできる形式)のオフィスソフトです。OpenOffice.orgから2010年に派生して生まれたソフトウェアで、約430MBという大きなサイズで同梱されていました。しかも「headless」(ヘッドレス)モード、つまり画面表示なしでバックグラウンドで動く形で含まれているとのことです。

これらはすべて`native`(ネイティブ)フォルダの中に入っており、アプリが内部的に使うための「道具箱」として用意されていると考えられます。

なぜこんなものが入っているのか

なぜChatGPTのデスクトップアプリにLibreOfficeやgitが必要なのでしょうか?

ソースによると、キャッシュフォルダの中には「スキル」と呼ばれるファイル群も含まれており、それらがCodex(ChatGPT)にこれらのバイナリ(実行可能なプログラムファイルのことです)の場所と使い方を教える役割を担っているとのことです。

つまり、ChatGPTデスクトップアプリはただ会話するだけでなく、WordやExcelのような形式のファイルを読み込んだり、PDFを処理したり、プログラムのコードを実際に動かしたりといった「実際の作業」をこなすために、これらのツールをひそかに内蔵している、ということです。AIが「答えを考えるだけ」でなく「手を動かす」ために必要な道具を持ち歩いている、そんなイメージです。

ユーザーが「このExcelファイルを分析して」と頼んだとき、裏側ではLibreOfficeがファイルを読み取り、Pythonが計算を実行し、その結果をAIが言葉にして返す、という流れが走っている可能性があると考えられます。

読者ができる小さな一歩

この発見が示しているのは、現代のAIアプリが「会話するだけのソフト」ではなくなってきている、ということです。裏側では多くのツールが連携して動いており、それがユーザーの利便性を支えています。

一方で、気づかないうちに1.7GBのデータがディスクに積み上がっていく、という点は知っておいて損はありません。もし手元のパソコンのストレージが圧迫されていると感じたら、キャッシュフォルダを確認してみることが一つの手がかりになるかもしれません。macOSであればOmniDiskSweeperのようなディスク使用量確認ツールを使うと、どのアプリが何GBを使っているか一目でわかります。「アプリを入れたつもりが、思ったよりディスクを使っている」という状況は、今後のAIアプリではよくあることになっていくかもしれませんね。

関連リンク