*当サイトのリンクにはAmazonアソシエイトやアフィリエイトリンクが含まれております。

Ubuntu と Windows デュアルブートのミニPCでローカルLLMを試してみたお話

過去に書いておりますが、プログラミングの効率UPの為にローカルLLMを試してみたく購入した
AOOSTAR GEM12 MAX ミニPC Ryzen 7 8745HSというミニPC。
ようやく色々と設定がおりましたので、本ブログに備忘録を残すことに。

広告

Ubuntu と Windows でのLLMの速度差など

今回調べたかったのはUbuntu と WindowsでLLMの速度が変わるのか?って事。

軽量なLinuxマシンのが動きが早い なんて意見もありましたが、
Windowsならではソフトウェアの充実もありますよね。

開発環境作る場合、どっちが良いかはナカナカ微妙かと思います。

実際、両方使うって方が多いのは?と。

もし速度差が無い、もしくはWindowsのが早いならデュアルブートする必要ないかも・・・。
なんで思いまして取り組みました。

動画

とりあえず結果が知りたいでしょうから動画で。

経緯

ここまで至る経緯。

私はアッサリ公開していますが、やってる最中はナカナカ微妙な気持ちに包まれておりました。

まず、WindowsのLMStudioはインストするだけなんで簡単なワケですが、問題はウブンツでした。

Ubuntuでradeon780MをLLMに使うのが難しかった

前提として『難しかった』という過去形です。
今は簡単になっています。

まず、やり始めた時はドライバーが無いんです。
まぁ 無いというよりは対象になってない。

なのでLMstudioでは当初GPUを認識しませんでした。
ということで色々調べてOllamaを選択。

OllamaでもVRAMに載せるには設定が必要で色々調べましたよ。

そんなワケで、Ollama使う時にやった事。

ROCm と AMDGPU driver のインストール

とりあえず、公式の情報をあてにしてROCmをインスト。
最新の情報は公式をチェックしたほうが良いよ。

Quick start installation guide


wget https://repo.radeon.com/amdgpu-install/6.4.3/ubuntu/noble/amdgpu-install_6.4.60403-1_all.deb
sudo apt install ./amdgpu-install_6.4.60403-1_all.deb
sudo apt update
sudo apt install python3-setuptools python3-wheel
sudo usermod -a -G render,video $LOGNAME # Add the current user to the render and video groups
sudo apt install rocm


wget https://repo.radeon.com/amdgpu-install/6.4.3/ubuntu/noble/amdgpu-install_6.4.60403-1_all.deb
sudo apt install ./amdgpu-install_6.4.60403-1_all.deb
sudo apt update
sudo apt install "linux-headers-$(uname -r)" "linux-modules-extra-$(uname -r)"
sudo apt install amdgpu-dkms

一応公式の通りに分けて書いてるけど、一緒にインストしても大丈夫なはず。
wget から apt update までは2回もやらないで大丈夫。

ollama の設定

ollama のインストも公式にのっております。
https://ollama.com/download/linux


curl -fsSL https://ollama.com/install.sh | sh

そんで設定ファイルを変えます。


sudo systemctl edit ollama.service

#ファイルが開いたら空白のトコロにでも以下を追記

[Service]
Environment="HSA_OVERRIDE_GFX_VERSION=11.0.2"

そしたら再読み込み。


sudo systemctl daemon-reload
sudo systemctl restart ollama

GPU使ってるか確認

↓これでどのくらいGPUにのってるかわかります。


ollama ps

↓こっちはGPUの使用率。


rocm-smi

Open WebUI

ubuntuとかLinuxマシン使っててターミナル嫌だって人は少ない気もしますが、GUI上で使えるのは便利ですよね。
それが簡単に出来るのがOpen WebUI。
ollama以外も繋げられるので便利ですよ。

そんなワケでインストール方法とか。


sudo apt install python3 python3-pip -y

#ディレクトリ名はお好きな名前に
mkdir my-opweb-ui
cd my-opweb-ui
python3 -m venv venv
source venv/bin/activate

Open WebUIのインストール


pip install open-webui

そんで起動。


open-webui serve --host 0.0.0.0 --port 8080

あとはネットワーク内のPCから http://[IPアドレス]:8080 でアクセス出来ますよ。

shファイル化

メンドクサガリの私はshファイル化しています。


nano start_opweb_ui.sh


#!/bin/bash

# Open WebUIの仮想環境パス
VENV_PATH="./my-opweb-ui/venv"

# 実行時にモデル名が引数として渡されているか確認
if [ -z "$1" ]; then
    echo "使用するモデル名を引数として指定してください。"
    echo "例: ./start_opweb_ui.sh gpt-oss"
    exit 1
fi

MODEL_NAME="$1"

# Ollamaが動作しているか確認
echo "Ollamaが起動しているか確認します..."
if ! pgrep -x "ollama" > /dev/null
then
    echo "Ollamaが起動していません。`ollama serve`を実行してください。"
    exit 1
fi
echo "Ollamaは正常に起動しています。"

# モデルがダウンロード済みか確認し、ダウンロードする
echo "モデル ${MODEL_NAME} を確認・ダウンロードします..."
ollama pull ${MODEL_NAME}

# Open WebUIの仮想環境を有効化
if [ ! -d "${VENV_PATH}" ]; then
    echo "仮想環境が見つかりません。まず手動で仮想環境を作成してください。"
    exit 1
fi

echo "仮想環境を有効化します..."
source "${VENV_PATH}/bin/activate"

# Open WebUIを起動
echo "Open WebUIを起動します..."
open-webui serve --host 0.0.0.0 --port 8080

# 仮想環境から抜ける
deactivate

echo "スクリプトを終了します。"

権限変更

chmod +x start_opweb_ui.sh

実行

モデル名を引数にして、立ち上げるようにしています。
そっちのがスムーズに動く気がしたので。
ollama 使わないなら渡さない仕様に変えたほうが良いかも。

./start_opweb_ui.sh gpt-oss

今なら LM studio のが良いと思う

そんなこんなでOllamaを色々やってたわけですが、ようやく色々終わったなーと思って、
一応Linux版のLM studioのCPUでの動作も見ておこうと思って開いたところ、
アプデが来ておるなーと思い、新しいファイル落としてみました。

そしたら
VulkanでGPU使えるー!!

そんなワケでやっぱりLMstudioが良いと私は思いましたよ。
動画の通り早いもん。

まとめ

こんな安いPCで割とちゃんとしたAIが動く時代です。
ホント凄いですね。

でも、今過渡期だからなのか、noteが流行ってる?からか知りませんが、
AIネタで有料コンテンツ化しようとする方が増えてますね。

決して悪い事とは思いませんよ。
それに見合う情報であれば対価を求めるのは決して悪くないし、
対価があればモチベも上がり、もっと良い情報を提供しようとする気持ちも湧くかも知れませんね。

でもね それと同時に注目度高めるために、煽るような言葉や、第三者を貶めるような言葉も見受けられますね。

そもそも論ですが、今のAIの情報源ってネットの中からある意味『搾取』してますよね。
私が過去に書いたことを見事にAIに使われた事もあります。
それを当人がみるというカオスwww

ただ、私自身、沢山の素晴らしい方々が公開して下さった情報を元に学習した自覚もあるし、
この記事だって沢山の先駆者の方の情報や、OSSを開発された方のお陰なワケですよ。
だから私はモチベが上がらなくても、自分の記憶の為に備忘録を残しています。
私の記憶の備忘録が、AIを経由してもほんの僅かな人の役に立つ事があるなら、それで良いやと思っています。

noteの情報に課金するのも良いですし、noteで儲けたといういう方がいらっしゃるのはある種良い事でもあると思います。
ただ、それと同時に元となるシステムの開発者や、様々な根源たる情報の発信者に寄付するとか、
もしくは自らが有料無料問わず素晴らしいシステムを開発すれば良いのにと思った次第です。

AOOSTAR GEM12 MAX
おすすめのコンテンツ

広告

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください