Windows 11とWSLのOllama:ローカルLLMを使用する2つの優れた方法

OllamaをPCで使用してローカルLLM(大規模言語モデル)を実行する場合、少なくともWindows PCでは2つの選択肢があります。1つ目は、Windowsアプリをネイティブで実行することです。2つ目は、WSL経由でLinux版を実行することです。
1つ目の方法の方が断然簡単です。まず、WSLをインストールする必要がなく、実際に起動して実行するためのプロセスも簡単です。Windowsインストーラーをダウンロードして実行するだけで、すぐに起動できます。
OllamaをWSLにインストールするには、いくつか面倒な手順を踏む必要があります。しかし、Ubuntuを使えば問題なく動作し、パフォーマンスも優れています。少なくとも、NVIDIA GPUを使った私の経験ではそうです。ただし、例えば開発者で、ワークフローにWSLを使用しているのでなければ、通常のWindows版ではなくWSLを選ぶ理由はあまりないでしょう。
WSLでOllamaをセットアップする
まず最初に言っておきたいのは、これは網羅的なセットアップガイドではなく、正しい方向性を示すためのガイドだということです。WSL(具体的にはUbuntuです。Ubuntuは最も簡単で、ドキュメントも充実していると思われるため)でOllamaを使用するには、いくつかの前提条件があります。また、この投稿はNVIDIA GPUに特化しています。
1つ目はWindows用の最新のNVIDIAドライバーです。2つ目はWSL専用のCUDAツールキットです。両方揃っていれば、魔法のようなことが起こります。MicrosoftとNVIDIAのドキュメントは、プロセス全体をガイドする最適な出発点です。
それほど時間はかかりませんが、必要なすべてのビットをダウンロードするにはインターネット接続も必要です。
ここまで準備ができたら、インストールスクリプトを実行するだけでOllamaを起動できます。なお、WSL上のコンテナ内でOllamaを実行することは試していません。私の経験は、Ubuntuに直接インストールすることに限定されています。
Windows と Xbox の熱狂的なファンのための最新ニュース、レビュー、ガイド。
インストールプロセス中に、すべてが正しく設定されていれば、NVIDIA GPUが自動的に検出されます。スクリプトの実行中は、「NVIDIA GPUがインストールされました」というメッセージが表示されます。
そこからは、GUIアプリケーションを除けば、Windows版Ollamaの使い方と同じです。最初のモデルをダウンロードすれば、すぐに使えます。ただし、Windowsに戻すと少し問題があります。
WSLを別のタブで実行している場合、WindowsのOllama(少なくともターミナル内)は、WSLにインストールされたモデルのみをアクティブとして認識します。ollama --listコマンドを実行しても、Windowsにインストール済みのモデルは表示されません。インストール済みのモデルを実行しようとすると、再度ダウンロードが開始されます。
この場合、WindowsでOllamaを使用する前に、WSLが適切にシャットダウンされていることを確認する必要があります。PowerShellターミナルに「wsl --shutdown」と入力することでシャットダウンできます。
WSL でのパフォーマンスは Windows で Ollama を使用した場合とほぼ同じです
後ほど具体的な数値について触れますが、一つだけ注意すべき点があります。全体的な視点から見るとそれほど重要ではないかもしれませんが、WSLを実行するだけでもシステム全体のリソースがいくらか消費されることを念頭に置いておく必要があります。
WSLで使用するRAMとCPUスレッドの量は、WSL設定アプリで簡単に設定できます。GPUを主に使用する場合、これはそれほど重要ではありません。しかし、VRAMに完全に収まらないモデルを使用する場合は、その不足分を補うためにWSLに十分なリソースが割り当てられていることを確認する必要があります。
モデルがVRAMに収まらない場合、Ollamaは通常のシステムメモリとCPUを消費することを覚えておいてください。適切な割り当てを行ってください。
これらのテストは非常に単純であり、出力の正確性については検証していません。これはパフォーマンスの比較を示すためだけのものです。RTX 5090で快適に動作する4つのモデル(deepseek-r1:14b、gpt-oss:20b、magistral:24b、gemma3:27b)を調べました。
それぞれの場合において、私はモデルに 2 つの質問をしました。
- 好きなテーマと登場人物で5章からなる物語を書いてください。(ストーリー)
- PongのクローンをPythonだけで作成してください。外部アセットは使用せず、グラフィック要素はすべてコード内で作成してください。必要な依存関係がすべてインポートされていることを確認してください。(コード)
そして結果は次のとおりです。
スワイプして水平にスクロールします
行0 - セル0 | WSL | ウィンドウズ11 |
gpt-oss:20b | ストーリー: 176トークン/秒 コード: 177 トークン/秒 | ストーリー: 176トークン/秒 コード: 181 トークン/秒 |
マジストラル:24b | ストーリー: 78トークン/秒 コード: 77トークン/秒 | ストーリー: 79トークン/秒 コード: 73トークン/秒 |
ディープシーク-r1:14b | ストーリー: 98トークン/秒 コード: 98トークン/秒 | ストーリー: 101トークン/秒 コード: 102 トークン/秒 |
ジェマ3:27b | ストーリー: 58トークン/秒 コード: 57トークン/秒 | ストーリー: 58トークン/秒 コード: 58トークン/秒 |
若干の変動はありますが、パフォーマンスはほぼ差がなく、同一です。
各モデルがシステムリソースに与える影響の唯一の違いは、WSLが有効なときに使用される追加RAMです。しかし、いずれのモデルも専用VRAMの容量を超えなかったため、モデルのパフォーマンスには影響がありませんでした。
WSLで作業する開発者にとって、Ollamaは同様に強力です
私のような一般人(WSLを愛用している人でさえ)は、Ollamaをこのように使うことにそれほど苦労する必要はないでしょう。今のところ、Ollamaの主な用途は教育です。学習ツールとしてだけでなく、その仕組みを自分で学ぶためにもです。
そのため、ターミナルで使用しても、最近私が試している Page Assist ブラウザー拡張機能に接続しても、Windows 11 ではまったく問題ありません。
しかし、WSLは開発者にとってWindowsとLinuxをつなぐ架け橋です。WSLワークフローが必要なユーザーは、パフォーマンスを損なうことなくOllamaをこのように使用できます。
このようにWindows上でLinuxを動かし、NVIDIA GPUをフル活用できるというのは、今でも魔法のようです。とにかく、全ては確かにそのように機能しています。
リチャード・ディバインは、10年以上の経験を持つWindows Centralの編集長です。元プロジェクトマネージャーであり、長年のテクノロジー愛好家でもある彼は、2011年にMobile Nationsに入社し、Windows Centralに加え、Android CentralやiMoreでも活躍しています。現在は、このサイトであらゆる種類のPCハードウェアとレビューの取材を担当しています。Mastodonでは、mstdn.social/@richdevine でフォローできます。