はじめに
EVO-X2を購入後早々にUbuntu 24.04 Server (ヘッドレス)をインストールし、ollamaのdockerコンテナて運用していました。最近openai/gpt-oss:120bが公開されて話題になりましたが、ollamaとLM Studioでずいぶん実行時間が違うことを教えていただきました。EVO-X2は普段の作業環境から少し離れた場所に置いてあるので、GUIが必須なLM Studioを使うことができません。
そんなときに、ふと、Xがsshで転送できるんだからwaylandも転送できるのかなと思って調べたところ、waypipeというコマンドを使うと実現できることを知りました。そこでLM StudioをリモートのクライントにGUIを表示させながら、LM Studio本体はUbuntu Serverで実行できるようにしてみました。
環境
以下の環境で試しました。
- サーバ
- マシン: GMKtec EVO-X2 (Ryzen AI Max+ 395 / 128GB)
- OS: Ubuntu 24.04 Server (ヘッドレス)
- VRAM: 96GB固定
- クライアント
- マシン: Minisforum HM80 (Ryzen 7 4700U / 64GB)
- OS: Ubuntu 24.04 Desktop
- 通常のデスクトップ環境がインストールしてある
準備
a. クライアントからサーバへssh公開鍵でログインできる状態を作ります。
b. サーバ側、クライアント側の両方でwaypipeをインストールします。
apt update
apt -y install waypipe
c. サーバ側にLM Studioををダウンロードして適当なディレクトリに置きます。
私がダウンロードした時のファイル名は LM-Studio-0.3.23-3-x64.AppImage
でした。
d. ダウンロードしたファイルに実行権限を付与します。
cd /path/to
chmod +x LM-Studio-*.AppImage
実行
クライアント側から以下のように実行します。ユーザ名はuser
、サーバホスト名はexample.com
、サーバ側のAppImageの置き場所は/path/to
にしています。適当に編集して下さい。LM Studioのファイル名もダウンロードしたものに合わせて下さい。
waypipe -c lz4=9 ssh user@example.com env ELECTRON_OZONE_PLATFORM_HINT=wayland /path/to/LM-Studio-0.3.23-3-x64.AppImage --no-sandbox --enable-features=UseOzonePlatform,WaylandWindowDecorations --ozone-platform=wayland
実行するとクライアントの方で以下のようなウィンドウが表示されます。通常のLM StudioのGUIの使い方ができます。
注意点が3点あります。
- 私の環境ではROCmで動かせませんでした。そのため、Vulkanのままで動かしています。
- openai/gpt-oss-120bをダウンロードすると初期設定のGPTオフロード値が32/36になっています。全レイヤーをVRAM上に置けますので、36に設定しています。
- LM Studioの設定ファイルやモデルはサーバ側の
$HOME/.lmstudio
に置かれます。
速度
gpt-oss:20b / gpt-oss:120bがollamaに比べてすごく速いとのことで試してみました。結果は以下のとおりでした。ここまで差が開くのはなぜなんでしょうか...
gpt-oss:20b | gpt-oss:120b | |
---|---|---|
LM Studio | 62.24 t/s | 43.99 t/s |
ollama | 25.4 t/s | 17.88 t/s |