【ITニュース解説】In-browser AI cold start: the 6 MB ONNX Runtime WASM took longer than the 44 MB model
2026年09月29日に「Dev.to」が公開したITニュース「In-browser AI cold start: the 6 MB ONNX Runtime WASM took longer than the 44 MB model」について初心者にもわかりやすく解説しています。
ITニュース概要
ブラウザでAIを動かす初回起動時(コールドスタート)に意外な遅延が発生。44MBのAIモデル本体より、6MBのAI実行環境ファイル(WASM)のダウンロードに時間がかかった。これはWASMが後から開始され、CDNなしで提供されたため、AI処理開始のボトルネックとなっていた。
ITニュース解説
ウェブブラウザ上でAI(人工知能)機能を動かす際、ユーザーが初めてウェブサイトを訪れる「コールドスタート」時に、AIが動き出すまでの時間が予想以上に長くかかる問題が注目されている。これは、通常、最も容量の大きなファイルが読み込み時間を長くすると考えられがちだが、今回の事例では、より小さな、AIを動かすための実行プログラムのダウンロードが全体の遅延を引き起こしていたことが明らかになった。
この課題は、画像背景除去サービス「ImgIng」の高速AI機能で具体的な測定が行われ、発覚した。開発者は、ブラウザのキャッシュが一切ない「新鮮な」状態でサービスを起動し、AI処理の全過程を綿密に記録した。その結果、約44メガバイト(MB)のAIモデルファイルが約4.2秒でダウンロードされ、その整合性チェックもすぐに完了した。これは、ダウンロードしたファイルが壊れていないか、改ざんされていないかを確認する仕組みである。しかし、その後、AIモデルを実行するための「セッション」を準備する段階に入ると、約6MBの「ONNX Runtime WebAssembly(WASM)」というファイルがサーバーに要求された。WASMは、Webブラウザ上で高速にプログラムを実行するための技術で、AIの処理環境として機能する。
この約6MBのWASMファイルのダウンロードに、約9秒もの時間がかかった。AIモデルファイルよりもはるかに小さいにもかかわらず、である。そして、このWASMファイルのダウンロードが完了するまで、AIによる実際の画像処理(推論)は一切開始されなかった。結果として、この小さなファイルのダウンロードが、AI処理全体の開始を大幅に遅らせる主要な要因となった。たとえ高性能なグラフィック処理機能(WebGPU)が利用できる環境であっても、このWASMファイルはAIを実行するために必要であり、同様の遅延が発生した。この事実から、ファイルのサイズだけでなく、その読み込み順序と完了タイミングが全体のパフォーマンスに決定的な影響を与えることが示された。
遅延には主に二つの理由がある。一つは、ファイルの配信元とそのダウンロード速度の差だ。約44MBのAIモデルファイルは、ユーザーから地理的に近い場所にファイルを配置し、高速な配信を可能にする「コンテンツ配信ネットワーク(CDN)」を通じて提供されていたため、非常に速い速度(約10.5 MB/s)でダウンロードが完了した。一方、約6MBのONNX Runtime WASMファイルは、サービスを運営する自社のサーバーから提供されていた。この自社サーバーからのダウンロード速度は、モデルファイルに比べてはるかに遅く(約0.5 MB/s程度)、小さなファイルであるにもかかわらず長い時間を要した。二つ目の理由は、これらのファイルが要求されるタイミングである。WASMファイルのダウンロードは、AIモデルファイルのダウンロードと整合性チェックが完全に終了し、「セッションセットアップ」が開始されてから初めて行われた。そのため、両者のダウンロードが並行して進むことがなく、WASMファイルのダウンロードが全体の待ち時間をさらに増やす形になった。つまり、ファイルのサイズ、配信元、ダウンロード速度、そしてリクエストのタイミングが複合的に影響し、今回の遅延を引き起こしていた。
このコールドスタート問題は、ユーザーがウェブサイトに初めてアクセスする際に顕著だが、一度これらのファイルがダウンロードされると、ブラウザのキャッシュ機能により、二回目以降のアクセスでは劇的に高速化される。具体的には、同じAI処理が1秒未満で完了するようになるため、この遅延は主にユーザーの最初の体験に影響を与える。今回の経験から、ウェブ上でAI機能を提供する開発者にとって重要な教訓が得られる。ウェブページのリソース読み込み状況を示す「ネットワークウォーターフォール図」(ウェブページが読み込まれるときに、どんなファイルが、いつ、どのくらいの時間で読み込まれたかを示す図)を徹底的に確認することが不可欠だ。特に、最も容量の大きなAIモデルファイルだけでなく、AIを実行するための核となるランタイムプログラム(WASMファイルなど)がいつリクエストされ、自社のサーバーがそれをどのくらいの速度で提供しているかを把握する必要がある。コールドスタート時のユーザー体験を最適化するためには、単に大きなファイルのダウンロード時間だけでなく、全体の読み込み順序や、自社サーバーからの小さなファイルの配信速度にまで目を配り、改善していくことが求められる。