Ollama + Phi4-miniをWindows11で実行する

「SAVACAN」担当のMKです。

前回のブログ記事 では、Phi-4 MiniをLinux環境で動作させる方法をご紹介しました。
今回は同モデルをWindows 11環境でも動作確認を行いましたので、その手順と結果についてご紹介いたします。

なお、Phi-4 Miniの概要や特徴については 前回のブログ記事 にてご説明しておりますので、併せてご参照ください。

目次

動作確認環境

以下の環境で確認をしています。
GPUは2019年10月に発売された製品ですがPhi4-miniであれば想定通りの速度で動作しました。
Linux版と同じでPhi4を使うとスペックが足りず動作が非常に遅かったです。

OS:Windows11 Pro
CPU:4コア(Intel(R) Core(TM) i5-6400 CPU @ 2.70GHz)
メモリ:16GB
GPU:CUDA 1408コア(NVIDAI GeForce GTX 1660 SUPER)
利用サービス:Ollama + Phi4-mini

インストール内容紹介

前提として、GPUのドライバーがインストールされているものとします。

Ollamaの公式サイトからWindows版をダウンロードしてインストールします。
https://ollama.com/download

インストールが完了したらWindows PowerShellでollamaのバージョンを確認します。

PS C:\Users\phi4-mini> ollama -v
ollama version is 0.6.5
PS C:\Users\phi4-mini>

OllamaのライブラリからPhi4-miniのモデルをダウンロードします。容量は2.5GBでした。
https://ollama.com/library/phi4-mini

画面右上の [ollama run phi4-mini] というコマンドをコピーしてWindows PowerShellで実行します。

ダウンロードが完了すると [Send a message]のメッセージが表示され対話を開始できます。

PS C:\Users\phi4-mini> ollama run phi4-mini
>>> Send a message (/? for help)

対話を終了するときは [Ctrl + d] か [/bye] を入力します。

動作確認

初めにGPUが認識されていることを確認しておきます。

PS C:\Users\phi4-mini> nvidia-smi
Wed May 21 14:48:19 2025
+-----------------------------------------------------------------------------------------+
| NVIDIA-SMI 576.02                 Driver Version: 576.02         CUDA Version: 12.9     |
|-----------------------------------------+------------------------+----------------------+
| GPU  Name                  Driver-Model | Bus-Id          Disp.A | Volatile Uncorr. ECC |
| Fan  Temp   Perf          Pwr:Usage/Cap |           Memory-Usage | GPU-Util  Compute M. |
|                                         |                        |               MIG M. |
|=========================================+========================+======================|
|   0  NVIDIA GeForce GTX 1660 ...  WDDM  |   00000000:01:00.0 Off |                  N/A |
| 41%   29C    P8              9W /  125W |       0MiB /   6144MiB |      0%      Default |
|                                         |                        |                  N/A |
+-----------------------------------------+------------------------+----------------------+

+-----------------------------------------------------------------------------------------+
| Processes:                                                                              |
|  GPU   GI   CI              PID   Type   Process name                        GPU Memory |
|        ID   ID                                                               Usage      |
|=========================================================================================|
|  No running processes found                                                             |
+-----------------------------------------------------------------------------------------+

ollama run phi4-miniに –verbose のオプションを付けて実行結果に処理時間を表示させます。

PS C:\Users\phi4-mini> ollama run phi4-mini --verbose
>>> 同一ディレクトリ内のファイルを100日前の作成日で判定して削除するシェルを書いてください
上記指示に従い、システム用語で「date」と呼ばれるUnixタイマー形式(YYYY-MM-DD HH:MM:SS)で `find` コマンドと
`{current_date-100}` という現在の日付から前の100日を抽出するためには、Python スクリプトなどの外部ライブラリが必要です。
以下はそのシェルスクリプトです:

```bash
#!/bin/bash

# shellcheck disable=SC1090,SC2034
current_date=$(date +%Y-%m-%d)
find . -type f -mtime $(( ( $(date --date="$current_date" +%s) / 86400 ) - 100 )) -exec rm {} \;
```

このスクリプトを使用するには:

1. スクリプトに保存して、例えば `delete_old_files.sh` とします。
2. スクリプトを実行可能にするために execute permission を付与します: `chmod +x delete_old_files.sh`
3. その後、このスクリプトは実行できます。ディレクトリが正しく参照されていることを確認してください。

このスクリプトでは、`find` コマンドが現在の日付から100日前の日付でファイル検索し、その間に作成されたすべてのサブフォルダ
内のシークエンスやディレクトリでも見つけます。その後、それらを実行可能なコマンド `rm {} \;` で削除します。

このスクリプトは非常に強力なので、内容が正しく確認されていることを3回チェックしてから実行してください。これは永久的にフ
ァイルを削除するためです。

total duration:       10.651156s
load duration:        2.5655855s
prompt eval count:    33 token(s)
prompt eval duration: 710.2679ms
prompt eval rate:     46.46 tokens/s
eval count:           385 token(s)
eval duration:        7.3629288s
eval rate:            52.29 tokens/s
>>> Send a message (/? for help)

Linux版と同じで10秒ほど(total duration:10.651156s)で作成されました。
※このシェルはphi4-miniが作成したものをそのまま公開しています。動作の保証はありませんので実行しないでください。

実行中のGPUが使用状況は以下でした。

PS C:\Users\phi4-mini> nvidia-smi
Thu May 22 09:11:18 2025
+-----------------------------------------------------------------------------------------+
| NVIDIA-SMI 576.02                 Driver Version: 576.02         CUDA Version: 12.9     |
|-----------------------------------------+------------------------+----------------------+
| GPU  Name                  Driver-Model | Bus-Id          Disp.A | Volatile Uncorr. ECC |
| Fan  Temp   Perf          Pwr:Usage/Cap |           Memory-Usage | GPU-Util  Compute M. |
|                                         |                        |               MIG M. |
|=========================================+========================+======================|
|   0  NVIDIA GeForce GTX 1660 ...  WDDM  |   00000000:01:00.0 Off |                  N/A |
| 45%   51C    P2            113W /  125W |    3907MiB /   6144MiB |     76%      Default |
|                                         |                        |                  N/A |
+-----------------------------------------+------------------------+----------------------+

+-----------------------------------------------------------------------------------------+
| Processes:                                                                              |
|  GPU   GI   CI              PID   Type   Process name                        GPU Memory |
|        ID   ID                                                               Usage      |
|=========================================================================================|
|    0   N/A  N/A           13224      C   ...al\Programs\Ollama\ollama.exe      N/A      |
+-----------------------------------------------------------------------------------------+

GPU-UtilにGPU使用率、 Memory-Usageにメモリ使用率が表示されます。

最後に

今回は前回のブログでご紹介したPhi-4 MiniのWindows版のインストール方法をご紹介しました。

現在はまだ検証段階ではありますが、今後もオープンソースで公開されているAI研究に積極的に取り組んでまいります。
検証結果につきましては、本ブログにて随時ご報告させていただく予定です。
今後ともぜひご覧いただけますと幸いです。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

目次