10.8K Views
August 04, 24
スライド概要
OSC京都2024の発表資料です。生成AIのローカル画像生成AI Stable-diffusionを対象です。
最狂タブレットハッカー。*BSDやLinux大好き。なろうで異世界製造業小説も書いてます Hacking Tablet devices now .I enjoy in opensource conference.
CPUでもOK,はじめてのローカル画像生成AI。Stable-Diffusion-Forge とFastSD CPU,Draw Things他など。練習例題あり初心者向け講座。 LCM-LoRa高速化,LLMと組み合わせ技などあり。NetBSDもOK。 1.準備 2.ローカル画像生成AIとLLM 3. Stable-Diffusion演習 4.LCM-LoRa高速化他 5.その他 メインテーマ「ガジェット&生成AI」 OSC京都2024 2024年7月27日 Place: 中小企業振興会館 発表者:Kapper ガジェットハッキング ユーザーグループ This Presentation: Slideshare & PDF files publication of my HP http://kapper1224.sakura.ne.jp Gadget Hacking User Group Speaker:Kapper
自己紹介 Self Introduction • My name: Kapper • Twitter account:@kapper1224 • HP:http://kapper1224.sakura.ne.jp • Slideshare: http://www.slideshare.net/kapper1224 • Mastodon:https://pawoo.net/@kapper1224/ • Facebook:https://www.facebook.com/kapper1224/ • My nobels:https://ncode.syosetu.com/n7491fi/ • My Togetter:https://togetter.com/id/kapper1224 • My Youtube:http://kapper1224.sakura.ne.jp/Youtube.html • My Hobby:Linux、*BSD、and Mobile Devices • My favorite words:The records are the more important than the experiment. • Test Model:Netwalker、Nokia N900、DynabookAZ、RaspberryPi、Nexus7、Nexus5、Chromebook、GPD-WIN、GPDPocket、Macbook、NANOTE、Windows Tablet、SailfishOS、UBPorts、postmarketOS、NetBSD and The others... • Recent my Activity: • Hacking Generative AI (Images and LLM) in a lot of devices. • Hacking Linux on Windows10 Tablet (Intel Atom) and Android Smartphone. • Hacking NetBSD and OpenBSD on UEFI and Windows Tablet. • I have over 200 Windows Tablet and 120 ARM Android, and test it now. • 後、最近小説家になろうで異世界で製造業と産業革命の小説書いていますなう。
Recently my activities Ollama,llama.cpp Stable-diffuson Windows Tablet Book8088,Pocket386 UMPC OSC,KOF参加
OSC名古屋2024で発表したローカル生成AIの資 料を公開中。よろしくお願いします。 • Slideshare、ドクセル、Speakerdeck、PDFファイルなど https://www.slideshare.net/slideshow/ai-llm-llama-cpp-llamafile/269337758
事前ご連絡 • 今回は画像生成AIの使い方練習講座です • 演習にStable-Diffusion-Webui Forge, FastSD CPU,Stable-Dffusion.cppを使用します • Githubからダウンロードお願いします Win,Linux,*BSD,Mac,Android対応 • iOSの方はDraw Thingsをご使用ください • GPUは必ずも必須ではなく、CPUは遅いだけ AMD RadeonやIntel Arcでも動く
事前アンケートお願い (挙手にてお願いします) • ①ChatGPTやStable-Diffusionなど生成AIを時々使っている人? • ②仕事もしくは商売で生成AIを使いたい人? • ③ローカル画像生成AIを使った事がある人? • ④やっぱりLLMより画像生成AIの方が興味がある人? 今日のセミナーのペース時間配分と今後の参考とさせて下さい
生成AIとは? • テキストなど 小さい情報から画像、動画、文章などを生成 • 短時間で複雑なデータを生成可能で生産性が良い • 複雑な計算が必要なので高性能なCPU、GPUが必要 • 大規模言語モデル(Large Language models)が最近有名 • 最近はAndroidやiPhoneでもOK • 他にも画像生成AIなど 定番モデルpony diffusion、Animagine XL他 参考としあき wiki https://wikiwiki.jp/sd_toshiaki/SDXLモデル もちろぐ blog https://chimolog.co/bto-gpu-stable-diffusion-specs/
最近の画像生成AIとは? • 画像生成AIとはStable-Diffusion類似品の総称でText to Image • 業務用は主に広告業界。5秒の動画を繋いで短いCMも低コストで作成 • 様々なオープンソースモデルが作られ色々な種類の画像生成。動画も。 • LCM-LoRAにより少ないステップ数で短時間画像生成 • 出力される情報を他のAIと組み合わせ活用範囲が拡大 • 計算するGPUコストかかるが、CPUやNPUでも計算出来る様になった • 英語圏中心でキーワードは英語。 • 本質的に何でも出来るAIの必要は無い。高コスト • 自由に改変出来て、自由に使えるライセンスのモデルに注目 • CPUで動かすならWebサーバ、ブラウザも重し。Xさえ不要
プロプラChatGPT VS ローカル生成AI ・ここが凄いここが厳しいChatGPT とにかく賢い。Web検索可能。画像や動画なども? 一部無料。多分赤字経営。MicroSoftが助けてくれる? Wikipediaや論文など校正済み文を利用しているため、マニアックな知識に弱い どんどん規制が厳しくなる。将来どうなることか? ・ここが凄いここが厳しいローカル生成AI 安価。オープンソース。API無料 独自辞書、独自知識を学習可能 規制は自由。付けるも無くすも学習済モデル次第。 サーバの経済的理由よりそのうち全てのパソコン、スマホに入るだろう 実はCPU、GPUベンチマークの代替え手段として重宝しているw
しかし何故今更ローカル生成AI? • 手元の機種で 学習し自由に動かせるというロマン • ライセンスを侵害しない範囲で自由に学習・改造出来る • 今後 厳しくなるであろう規制が無い。API無料。有料化対策。 • UNIXなどのマニアックな情報を沢山学習させたい • オリジナルアプリへライセンスフリーで組み込みたいパクりたい • エロいのを作りたい人向け • アンダーグラウンドで危険なLLMを作りたい人向け • キャラクターを模倣させたい人向け • ギャンブル関係のLLMを作りたい人向け • ベンチマークの代わりw しかしChatGPTは 規制用語が入ると・・・
画像生成AIの動作原理 • 英語で登録したキーワードを元に画像生成 Stable-Diffusionはノイズ除去・生成する 過程でキーワードで合成 →学習データに大きく依存する 標準Step数は20だが、1〜8Stepも可能
動作イメージ • 一旦モデルをメモリの中に入れる (大量のメモリが必要) • CPU・GPUで計算 マルチGPU対応 モデル データ CPU,GPU oメモリ メモリ • LoRaがあれば追加 モデル データ LoRa • 結果出力
画像生成AIの有名な技術 ・ControlNet ・ComfyUI ・Animate Diff ・LCM-LoRA
最近のプロプラエタリ画像生成AI関係 • LumaAI DreamMachine,Kling_AI :5秒〜までの動画作成 • TripoSR他:3Dプリンター出力 GLB,FBX,OBJ,USD,STLサポート ・Shape-E、TripoSR他 :3D ポリゴンモデル作成、出力 ・Adobe Firefly、Stability AI他 :手書きを画像認識
OS別Stable-Diffusion この手の亜流は山ほどあるので一部 コメント Linux Windows Mac iOS Android (Termux) Free BSD Open BSD Net BSD Stable-Diffusion-WebUI A1111 ◎ ◎ ◎ ー ◎ △ ー ー Stabel-Diffusion-WebUI-reForge ◎ ◎ ◎ ー ◎ ー ー ー 省メモリGPU Stable-Diffusion-WebUI-amdgpu ◎ ◎ ○ ー ー ー ー ー DirectML,ROCm SD.Next ◎ ◎ ◎ ー ー ー ー ー IntelGPU他 FastSD CPU ◎ ◎ ◎ ー ◎ ー ー ー OpenVINO Stable-Diffusion.cpp ◎ ◎ ◎ ー ◎ ○ △ △ GCC,cmake sd.cpp-webUI ◎ ◎ ◎ ー ? ー ー ー Python OnnxStream ◎ ◎ ◎ ー △ ? ? ? 512MB RAM,GCC Koboldcpp ◎ ◎ ◎ ー ◎ ー ー ー 簡単 Stablity Matrix ◎ ◎ ◎ ー ー ー ー ー 簡単 Draw Things ー ー ◎ ◎ ー ー ー ー A12,M1以降 UNIX系が使いにくいのはPip,CondaとCUDAとPytorchの依存性の関係 ◎: 公式サポート,○:公式非サポート, △:動作報告あり
ハードウェア目安 • 最低(動くだけ。速度は一切考慮しない。QemuなどPCエミュレーション環境も想定) x86:SSE3搭載CPU、メモリ+Swap:3.7GB以上(2.7GB+OS:モデル量子化の例外あり) Android メモリ+Swap 3.7GB以上(2.7GB+OS:モデル量子化の例外あり) iPhone SE2以降(2020年度〜 A12,M1以降) RapsberryPi4,5 メモリ+Swap 3.7GB以上 • 必要 x86:第8世代Intel、AMD Ryzen以降、メモリ+Swap 13GB以上(WebUIを使う場合必須) Android メモリ+Swap 13GB以上 GPU:メモリ4GB以上 • 推奨(GPU前提) x86:第8世代Intel、AMD Ryzen以降、メモリ16GB以上(GPUを使う場合、CPUは重要ではない) GPU:NVIDIA RTX3050、1660Ti以降 メモリ6GB以上(12GB以上が望ましい) 詳しくは、「もちろぐ」さんのブログを参照
今ならこの程度の型落ちでも・・・幸せに? ただし来年になるとNPUパソコン登場で大幅値下げ???
アンケート結果ご協力ありがとうございました
人気あるStable Diffusionモデルデータ • 主にckpt,safetensorsファイルをCivitaiやHuggingfaceなどからダウンロードして models/Stable-diffusion/のフォルダに保存して使用 高画質系 • ベース基本:SD1.5系、SD XL系 • 風景:A Regular Deep Background、architecture_Urban_SDlife_Chiasedamme他 • アニメ系最強クラス:Anything-XL、AnimagineXL、Anime Pastel Dream • 実写+アニメ:Pony Diffusion • 実写日本人:fuduki_mix、ChilloutMix 高速化系 • 実写幻想風高速LCM 4〜8 step:LCM_Dreamshaper • アニメ系高速化LCM 4〜8 step:Anything LCM • 高速1〜8step:SDXL-Lightning、 • 高速1〜8step:Hyper-SD、SDXL-Turbo モデルは数え切れないほどありますので、おすすめサイトをググって色々と試してみてください
LLMモデルと混迷するオレオレライセンス • LLMモデルはオープンソース化したMetaのLLaMaを中心。オレオレライセンス注意 • Huggingfaceダウンロード方法:一例 wgetは使えないので注意。間に - を入れる事 curl -LOC - https://huggingface.co/runwayml/stable-diffusion-v1-5/resolve/main/v1-5-pruned-emaonly.safetensors ・Civitaiダウンロード方法: wget "https://civitai.com/api/download/models/####?type=Model&format=SafeTensor&token=****" #### はモデル番号、 **** は api key Curl curl -Lo add-detail-xl.safetensors https://civitai.com/api/download/models/135867?token=$CIVIT_TOKEN Wget wget -O add-detail-xl.safetensors https://civitai.com/api/download/models/135867?token=$CIVIT_TOKEN
Stable-Diffusionの使い方 • Windowsの場合。webui-user.batを実行 • Unix系の場合。chmod +x ファイル名で実行形式にして chmod +x webui.sh • ./webui.sh で実行。ブラウザで操作 • モデルを追加する時はmodels/Stable-diffusion/に保存して更新 • LoRaを追加する時はmodels/lora/に保存して更新 • CPUで動かす人はコマンドラインならメモリ節約、高速化
アプリ紹介 Stable-Diffusion-webui-forge/reForge • 現在人気の高いStable-Diffusion改良版 • 少ないGPUのVRAMで生成出来る様にチューニング、高速化 • VRAM 4GB GTX1650〜 VRAM 6GB GTX1660Ti,Super〜 こんな古い世代でも512x512なら十分使える • インストール方法 git clone https://github.com/lllyasviel/stable-diffusion-webui-forge.git • cd stable-diffusion-webui-forge • python -m venv venv • source venv/bin/activate • pip3 install --upgrade --force-reinstall torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cu125 • deactivate • ./webui.sh 注)CUDAを使わない場合は ./webui.sh --skip-torch-cuda-test
Stable-Dffuion-webui-forge モバイル1660Ti 6GB 512x512 で 3.8 sec /枚。この古い世代のGPUのレベルでも割と速い。
Stable-Diffusion-Webui-Forgeの画面 モデル選択(手動でダウンロードしてmodels/Stable-diffusion/フォルダに保存しておく) 実行 プロンプト入力 Step数選択 サイズ選択
インストール時のトラブル • PythonとPipのPathが通っていない(Windows)・・・設定必要 • Pipのプロキシが通っていない(Windows他)・・・必要なら設定必要 • Python3-venv仮想環境が入っていない・・・venvを入れる • TorchのCUDAエラー・・・CUDAを使わない場合は、./webui.sh --skip-torch-cuda-testオプ ション • Torchのバージョンエラー・・・A1111はPytorch3.12をまだサポートしていない。 Python3.10を使う必要がある。 sudo add-apt-repository ppa:deadsnakes/ppa • sudo apt update sudo apt install python3.10 python3.10-venv python3.10 -m venv "venv" • webui.sh に python_cmd="python3.10"を修正
アプリ紹介 FastSD CPU • CPU向けに最適化されたStable-Diffusion モデル自動ダウンロード、初心者向け • SDXL Lightningを使えば1〜4stepで生成可能で4.8秒/枚程度まで高速化可能 ARMでも40秒/枚前後とかなり高速 • Termuxを使えばAndroidでも動くはず • インストール git clone https://github.com/ruphes/fastsdcpu.git cd fastsdcpu chmod +x install.sh ./install.sh chmod +x start-webui.sh ./start-webui.sh • インストールエラーが出たらrequirement.txtのバージョン指定削除 (作者はWindowsのため環境が古い)
FastSD CPUの画面 LCM選択 実行 プロンプト入力 モデル選択 (タブ内) ダウンロードは 自動
FastSD CPUはCPUでも結構高速 Comet−Lake Core-i5 10310Uでも16.8 sec/枚
アプリ紹介 Stable-Diffusion.cpp • 生成AIのLlama.cppを参考にC,C++で作られたStable-Diffusion。 • Python,CUDA,Pytorchに依存しないので、色々なOSで動かせる *BSDで動かすなら最適。消費メモリ小さい • 使用できるモデルは登録されていないと使えない。限定あり • llama.cpp同様にAMD GPUやIntel GPU、vulkan、CUDA対応 • WebUIはないのでコマンドライン使用。中級者向け • 初期設定ではSeedは42固定。-s -1などマイナスオプションでランダム動作 • -b オプションでbatch count回数指定するか、zshのRepeat機能で放置プレイ推奨。 • インストール方法 git clone --recursive https://github.com/leejet/stable-diffusion.cpp • cd stable-diffusion.cpp mkdir build • cd build • cmake .. • cmake --build . --config Release CPUの場合はFlash Attention オプションを使用して更に省メモリ化 cmake .. -DSD_FLASH_ATTN=ON cmake --build . --config Release
アプリ紹介 OnnxStream • RaspberryPiで動かすために少ないメモリとC,C++で作られたStableDiffusion,Local-LLM • 〜512MBのRAMで動かせる様に分割して計算。その代わりに遅い • WebUIはないのでコマンドライン使用。上級者向け • インストール方法 git clone https://github.com/vitoplantamura/OnnxStream.git cd OnnxStream cd src mkdir build cd build cmake -DMAX_SPEED=ON -DOS_LLM=OFF -DOS_CUDA=OFF DXNNPACK_DIR=<DIRECTORY_WHERE_XNNPACK_WAS_CLONED> .. cmake --build . --config Release
アプリ紹介 Draw Things • iOS用Stable-Diffusion互換 • IOS 15.4かつA12 bionic以降 • IPhone SE2,3推奨。高速。 • Apple storeよりインストール
アプリ紹介 Stability Matrix • 簡単インストールStable-Diffusionパッケージ • オールインワンタイプ。容量注意 • 初心者にオススメ。インストールにFuse必要 • インストール方法 公式サイトからAppImageファイルダウンロードして展開 sudo apt install fuse chmod +x StabilityMatrix.AppImage ./StabilityMatrix.AppImage • Linuxの場合、フォントが表示されない現象あり注意
NVIDIA CUDAインストール • Ubuntu22.04の場合 wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cudaubuntu2204.pin • sudo mv cuda-ubuntu2204.pin /etc/apt/preferences.d/cuda-repository-pin-600 • wget https://developer.download.nvidia.com/compute/cuda/12.0.0/local_installers/cuda-repoubuntu2204-12-0-local_12.0.0-525.60.13-1_amd64.deb • sudo dpkg -i cuda-repo-ubuntu2204-12-0-local_12.0.0-525.60.13-1_amd64.deb • sudo cp /var/cuda-repo-ubuntu2204-12-0-local/cuda-*-keyring.gpg /usr/share/keyrings/ • sudo apt-get update • sudo apt-get -y install cuda sudo nano .bashrc テキストエディタで下記を保存 export PATH="/usr/local/cuda/bin:$PATH" • export LD_LIBRARY_PATH="/usr/local/cuda/lib64:$LD_LIBRARY_PATH" • https://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html
その他生成AI • 最近生成AI増えたね • ガジェットハッキングLLM作りたい マニアックなファインチューニング エモいキャラクター生成してw • ローカルコミュニティ用LLM必要 • 東海道らぐLLM作りませんか? 他所に真似できない凄いコアなのを
お仕事で生成AI • プログラムレスで色々 • 翻訳、メール作成 • 対話型業務をAIチャットで • 画像、資料を作成 • いつのまにかRPAはどこにいった? 今後のビジネスの中心 • 賢さ ≠ 語彙力、情報量
他にもマルチモーダル化 • 画像を読み取ったり、出力したり • オープンソースではLLAVAモデルが有名 • 複数のAIを組み合わせてさらに色々な事をさせる事ができる
有名キャラクターの模倣(LLMの場合) • LLMなら色々なモノマネをしてくれます • ChatGPTくらい賢ければ色々な事が出来ます • さらに音声合成で出力させると ヲタクの皆様御用達w
生成AIでこんな使い方も ②生成AI文章作成 ChtGPT llama.cpp など ①音声入力 Whisper.cpp Windowsキー+H など ③音声合成 Voicevoxなど
IPhone,iPadの場合 • 画像生成AIはDraw Things • LLMはLLMFarmがあります • 2020年世代以降推奨 • iPhoneSE第2世代が安い LLMFarm Draw Things
Termux+Androidなど Ollama llama.cpp Fastsd cpu Stable-Diffusion.cpp
NetBSDの場合(⚹BSD含む) • llamafileがNetBSD+9.2(amd64)に正式対応(要SSE3:エミュレータ注意) • llama.cppはcmakeでNetBSD環境でもビルド可能 • Stable-diffusion.cppもcmakeでビルド可能。画像生成AIも完璧。 GUIもXもCPU負荷とメモリ負荷になるからストイックに不要。 llama.cpp,llamafile Stable-diffusuion.cpp
NetBSD,低メモリPCでStable-Diffusion.cppを使う • 本資料P7で書いた様にgitからビルドしたらモデルデータをどこかにダウンロード cd stable-diffusion.cpp/ curl -LOC - https://huggingface.co/runwayml/stable-diffusion-v1-5/resolve/main/v1-5-prunedemaonly.safetensors • Stable-diffusion.CPPをコマンドラインで実行 cd build/ ./bin/sd -m ../v1-5-pruned-emaonly.safetensors --cfg-scale 1 --steps 20 -p "a lovely cat" -o output_test1.png -v • 出力されたoutput_test1.pngを移動して保存。画像ビュアーで見る。 • Batch Count指定には -b 10 などオプション追加
NetBSD,低メモリPCでStable-Diffusion.cppを使う • せっかくなのでダウンロードしたモデルを量子化して小さく ./bin/sd -M convert -m ../v1-5-pruned-emaonly.safetensors -o ../v1-5-pruned-emaonly.q8_0.gguf -v --type q8_0 • 量子化したGGUFモデルをStable-diffusion.CPPをコマンドラインで実行 ./bin/sd -m ../../v1-5-pruned-emaonly.q8_0.gguf --cfg-scale 1 --steps 20 -p "a lovely cat" o output_test2.png -v • 出力されたoutput_test1.pngを移動して保存。画像ビュアーで見る。
NetBSD,低メモリPCでStable-Diffusion.cppを使う
• 高速化としてLCM-LoRaを使う。LCMモデルをlcmフォルダに保存。
mkdir ../lcm
curl -LOC - https://huggingface.co/latent-consistency/lcm-lora-sdv15/resolve/main/pytorch_lora_weights.safetensors
mv pytorch_lora_weights.safetensors ../lcm
• 保存したLCMモデルを指定して再びStable-diffusion.cppを実行
./bin/sd -m ../../v1-5-pruned-emaonly.safetensors --lora-model-dir ../lcm/ --sampling-method lcm
--cfg-scale 1 --steps 4 -p "a lovely cat<lora:pytorch_lora_weights:1>" -o output_lcm_text1.png -v
• 出力されたoutput_clm_test1.pngを移動して保存。画像ビュアーで見る。
一例) 20 step(421 sec/枚) → 4step(91 sec/枚)へ高速化しました。
FP32
Q4_1
• LCMを使うと、出力される画像が変わりますw
• Seedをランダムは -s -1 オプション追加
NetBSD,低メモリPCでStable-Diffusion.cppを使う メモリ使用量を比較。Gnome起動時のメモリを1.4GBから逆算。非常に省メモリ ・FP32 :2.7GB使用 ・Q4_1:2.0GB使用 Manjaro FP32 モデル Manjaro Q4_1 量子化モデル
FreeBSDの場合 PytorchとCondaの壁をなんとかする方法が書かれています
Stable-Diffusionを練習してみましょう ①モデルを選択 ②text-imageに適当なプロンプト(キーワード)「NetBSD」を入力して Generateボタンを押して実行 ③しばし待つと画像が生成される ④プロンプト(キーワード)を変更して色々と試してみる
Stable-Diffusionのプロンプト(キーワード) • プロンプトは非常に多い。専用サイトを見ると良い 高画質化のプロンプトはほぼ必須 一人ポーズ:1 girl, 1 man 髪型:long hair,short hair, gold hair, sliver hair 年齢:18 years old,など 背景:clear sky, midnight,nature,river,cave,inside,outsides,bed room 指 :beautiful fingers, beautiful hands 高画質:masterpiace,hyper detailed, high quallity • ネガティブプロンプト 指:extra hands,extra fingers,bad hands, bad fingers,extra arms,
Stable-diffusionの高画質化 • Step数を増やしてみる • cfg-scaleを調整7〜20へ • VAEを入れ替えてみる • モデルを変更 • Samplerを変更してみる • 高画質プロンプトを入れる masterpiace,hyper detailed, high quallity
Stable-Diffusionの高速化 • GPUを使う • LCM-LoRaモデルなどでstep数を減らす • Tiny Encoderを使う • サンプラーをLCMなどする • CPU計算ならOpenVINOを使う • モバイルPCなら電源コンセント繋いでターボブーストON推奨
Stable Diffusionで練習 お題:「猫」を描いてみる プロンプト "a lovely cat" LCM-LoRA例
Stable Diffusionで練習 お題:宇宙で馬に乗る人 プロンプト "a photograph of an astronaut riding a horse"
Stable Diffusionで練習 お題:スターウォーズ 複数のプロンプト プロンプト:starwars, spacecraft
Stable Diffusionで練習 お題:エルフの女性、高画質化 プロンプト "1 girl, elf, cute, princess, goddess, hyper detailed, high quality"
Stable Diffusionで練習 お題:ChatGPTにプロンプトを作成させる 4コマ漫画風を作成 CharGPT任せで色々 ① ③ ② ② ④
量子化 • 確率分布の小数点桁数を削って計算 • メモリと負荷低減。数字程精度が落ちない • 画像生成AIは16bit、LLMは3〜16bit • モデルサイズ1GBを切ると回答が難しくなる • BitNet 1.58bitが出たがまだ普及していない • 画像生成AIはStable-Diffusion.cppのみ対応
ファインチューニング・LoRa • モデルに追加学習。入れたい不足する画像情報を追加 • メモリ不足でまだ試していないけどツールも使える • 要求スペックが高いのでGPUメモリを十分に確保かGoogle Colabを借りる
CPU VS GPU • 現在高速化としてGPUを使うのが主流 • CPU VS GPUの速度は1:20〜100くらいの速度差 • WebサーバとブラウザはCPU、計算はGPUで分担している • CPUで計算するとWebサーバとブラウザの分だけ負担が増える OllamaなどCUIで使うのも良い(Xも不要) • AI 学習は完全にGPU優位。GPUはメモリ確保が大変高価
GPUクラウドを格安でレンタルしたい • 実験やAIモデル学習時にはできればGPUサーバをレンタルしたい • Vast.AI:個人サーバから間借りレンタル。格安 • NovelAI:数少ない限定的月額式。小説は無料、 画像は有料 • Google Colab • Runpod:サーバレスモード • Replicate:モデルが設置済 • Hostkey:色々なGPU
よくある質問・疑問点 • CPUではだめなんですか? --- 遅いだけです。その分CPUメモリは安い。 • 自動で放置プレイしたい --- BatchCountを指定。zshのRepeatコマンドでも • AndroidスマホのGPUは動きますか?--- GPUメモリが小さくてほぼ使われていない • NVIDIA以外のGPUは動くのですか? --- ROCm,DirectML,Metal,OpenVINOでも動く • なぜIntel Arcは生成AIであまり使われないの? --- 動作問題なし。モデルをOpenVINOに変換 • Intel NPUでも動きますか?--- OpenVINOを使えば動くはずだが動作実例なし • ノートパソコンの内蔵GPUは使えますか? ---メモリ500MB設定なのできつい • GPUは借りた方が安いですか? --- 学習させるなら時間に応じて • 指や体が奇形になります --- ネガティブプロンプトを工夫。サイズを縦長へ調整。 手を隠すとかもあり。 • そもそもローカルで生成AIを使う意味は? ---ロマン、商売用、独自絵 • モバイル中に計算が遅いんですが --- 節電設定。電源繋いでターボブーストON推奨
まとめ • 簡単な生成AIの使い方と説明 • ローカル画像生成AIを実例に各OSで動作 • Windows,Linux,MacOS,*BSDで生成AI動作確認 • ファインチューニング、LoRaを説明 • 各種Stable Diffusionのインストール、ビルド方法を説明