IrvineのもっとPC自作日記
【AT独占】mineo(マイネオ)
テレワークにおすすめのモバイルPC
本ページはプロモーションが含まれています。
  
 

【LLM】サイバーエージェントのCALM2を試してみた (2)VMでトライ

 

スポンサーリンク

 
【LLM】サイバーエージェントのCALM2を試してみた (2)VMでトライ
 

サイバーエージェントが商用利用可能なLLM(大規模言語モデル)を公開したので早速試してみた。
今回は自作PC上のHyper-Vで作ってみた。
テキスト生成AIについてのまとめはこちら。

  
  

VMで作る

初めに明言しておくが、この方法ではできないとわかった。記録のために書いておく。

いろいろ試すために、Windows 11 ProにHyper-Vを有効にして、仮想マシンを動かしている。
仮想マシンには最近はLinuxのインストールのみだ。Windows10が安定してなかった頃はよく、プレビュー版を入れて機能の確認をしていた。
今回も仮想マシンにAlma Linux 9.2をインストールし、CAML2を作ってみる。
操作はrootで行っている。本当はrootではないほうが良いのだが、個人用なので今回はセキュリティ面は目をつぶる。

1 OSの準備

前述のようにAlma Linuxを用意した。サーバモデルはなんでもいいが、GUIは使わないので最低限のパッケージでもいいかもしれない。
ここでpythonを使うため、pipをインストールする。

dnf install pip

また、git も入ってないので、インストールしておく。

dnf install git

2 Pythonの準備

Pythonが入っていることを確認したうえで、パッケージをインストールする。

pip install -U transformers accelerate flash_attn

3 CAML2-7B-chatのダウンロード

gitの機能でダウンロードする。

git clone https://huggingface.co/spaces/hayas/CALM2-7B-chat

しばらくして終わる。
CAML2-7B-chatディレクトリができているはず。

4 pytorchなどのインストール

pytorchをインストールする。pytorchはpythonに移植されたtorchで、AI関連の処理では必ず使われるものだ。
使うだけならこれ以上知らなくても大丈夫。自分でプログラムを組む場合は深い沼へどうぞ。

pip install torch torchvision torchaudio –index-url https://download.pytorch.org/whl/cu118

5 CAML2のインストール

以下のコマンドでインストールする。

pip install -r requirements.txt

これで終わり。エラーが出てなかったら実行する。エラーが出ていると対策が難しい。まだ情報が少ないようだ。

プログラムの実行

以下のコマンドで実行する。

python app.py

しばらくすると以下のように表示される。

Running on local URL: http://127.0.0.1:7860
To create a public link, set `share=True` in `launch()`.

これ、VMでGUIのパッケージをインストールしていないので、このままではWEB画面にアクセスできない。
2行目にあるように、プログラムを修正してVMではなくホストPCからアクセスできるようにする。

app.pyの一番下あたりにある下の強調個所を変更する。

変更前

if __name__ == “__main__”:
demo.queue(max_size=20).launch()

変更後

if __name__ == “__main__”:
demo.queue(max_size=20).launch(share=True)

これで再度起動する。アクセスするためのURLが表示されるので、CTRLキーを押しながらクリックしてホストのWEBブラウザで表示する。
表示できた。

CAML2 VMで構成

CAML2 VMで構成

ん?
何か書いてある。

This demo does not work on CPU.

GPUがないと動作しないということだろう。じゃ、GPUをVMに割り当てられればいいんだな。

Hyper-VのVMにGPUを割り当てる

結論から言うと、Windows11上のHyper-Vで動くVMにはGPUを割り当てることはできない。
割り当てをGPUのパススルーという言い方をする。仮想化環境を通して物理環境のGPUを見せるということだろう。
この手の方法はVMware社のvSphereにはあるし、Hyper-VでもWindows Serverなら提供されているようだが、調べた限りではクライアントPCのWIndows11ではできないようだ。
仮想化環境にGPUをオンデマンドで割り当てることができたら結構いいのになぁ。残念。

このため、

  • CAML2はGPUがないと動かない
  • Windows11はHyper-V環境にはGPUの割り当てができない

と矛盾する状況になり、この方法はできないとわかった。

となると次の方法は、Windowsの環境にPythonを入れてWindows上でCAML2を動かすか、WSL2上でやるかだな。

次回はWindowsにインストールしてみた話。

PR

   
著者プロフィール
irvine
 ソフトウェア設計、ストレージ設計を経てクラウドにかかわる仕事をしている、東京郊外在住のエンジニア。
 仕事でUS,UK,SGなどの国とかかわる。
 自作PC、スマホ、タブレット、AV機器好き。ドラクエウォークはルーチンワーク。Linuxやストレージ、IT業界の動向は興味を持っている。
 新しい機器、サービスに興味あり。年数回のレビュー(自腹購入、ご依頼)と発表されて興味があるものの新製品机上レビューをやっている。
 2022年はJAPANNEXT様のアンバサダーを務めました。
 
 

コメントを残す

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