2023-12 << 2024-01 >> 2024-02

2024-01-15 (月)

* 生成AIとか

ノートPCを新調したので、最近流行りの生成AIを試しに動かしてみる。Core i7-1355U + メモリ32GBでも小さいモデルなら動きそう?グラボは無いのでCore i7内蔵のGPUで頑張る。

とりあえず、手っ取り早く試したかったので llama.cpp を何も考えずmakeしたら動いた。

モデルは Hugging Face に色々あるみたいなのでダウンロードして色々試す。

https://huggingface.co/TheBloke/Llama-2-7B-GGUF を使ってみたけど、4bit量子化だと4GBくらいで動くのか。もう少し大きいモデルでも大丈夫そう。

OepnCL

CPUだとやっぱり遅いのとllama.cppはOpenCLに対応しているので、GPUを使いたい。IntelのGPUでOpenCLを使えるように色々インストールする。

https://www.intel.com/content/www/us/en/docs/oneapi/installation-guide-linux/2023-1/configure-wsl-2-for-gpu-workflows.html

最近のWSL2上ならGPUにアクセスできるのだけど、wsl2上のdockerコンテナ内でOpenCLが動かなくて嵌った。/dev/dri にはアクセスできるのだけど、それだけだと動かない?良くわかってないのでコンテナ内で動かすのはいったん諦めた。

CLBlast経由でGPUを使えるようになったけど、'-ngl 8' 以上にするとメモリ確保に失敗してしまうのと、GPUを20%くらいしか使ってないので何か設定が足りないかも。

OpenVINO

LLM以外も動かしてみようと思ったのだけど、OpenCLあまりサポートされてない感じなので、Intelの OpenVINOを試してみる。

PyTorchに対応してると書いてあった気がするけど、PyTorch等からGPUを使えるようになるわけではなく、読み込んだモデルをOpenVINO用に変換して動かすっぽい。変換のためにPyTorchのモデルにダミーの入力を与える必要があったりして色々面倒。

色々試すなら OpenVINO Notebooks(https://github.com/openvinotoolkit/openvino_notebooks) が手っ取り早そうなので入れてみる。

とりあえず Stable Diffusion とかもサンプルがあるので画像生成してみる。CPUだけだと画像一枚生成するのに4~5数分かかってたのが、オンボードのGPUでも30秒くらいにはなった。Latent Consistency Modelも試してたけど、GPUで処理しようとするとなぜかうまくいかない。。。

Web UI は Jupyter Lab というやつみたいだけど、色々いじりながら動かしてると状態が分かりにくくて、微妙に使いにくい。。。

2023-12 << 2024-01 >> 2024-02