「[[.NET 開発基盤部会 Wiki>http://dotnetdevelopmentinfrastructure.osscons.jp]]」は、「[[Open棟梁Project>https://github.com/OpenTouryoProject/]]」,「[[OSSコンソーシアム .NET開発基盤部会>https://www.osscons.jp/dotNetDevelopmentInfrastructure/]]」によって運営されています。 -[[戻る>テキスト生成系(Transformer系)]] > [[開発系>テキスト生成系(Transformer系)#cf2e3279]] --[[OpenAI]] --[[Azure OpenAI>https://techinfoofmicrosofttech.osscons.jp/index.php?Azure%20OpenAI%20Service]] --OSSのLLM --[[LLM系ツール]] *目次 [#i5821975] #contents *概要 [#fed29e38] OSS(オープンソース)のLLMは、ローカルマシンやオンプレミス環境で動作可能なものが多く、~ クラウドサービスに依存せずに利用でき、機密情報を扱うクローズドな環境でも安全に導入できる。 *詳細 [#o1259357] **注意点 [#s70f49fb] ***ライセンスの確認 [#a45e2a4e] -ライセンス形態を確認し、商業利用や再配布の条件を理解。 -ライセンス条項を確認しプロジェクトやビジネスへの適用可能性を評価。 ※ [[OSSのライセンス]] ***コミュニティの活発度 [#fa38ce1d] コミュニティの活動状況を確認。 -活発なコミュニティは、 --質問やサポートを得易い。 --バグ修正や機能改善が迅速に行われる可能性が高い。 -GitHubを参考にする。 --スター数 --フォーク数 --プルリクエスト数 ***ベンチマークと評価 [#a904c768] -性能を評価するためのベンチマークテストを実施。 -既存のベンチマーク結果や評価レポートを確認 -自社の使用ケースに対する適用性を検討。 ***性能とスケーラビリティ [#q39f1617] -項目 --モデルの性能(応答速度、精度) --スケーラビリティ(負荷分散、水平スケーリング) -環境 --大規模なデータセット --高トラフィック環境 ***ハルシネーション・バイアスなど [#t34aa11a] -LLMの生成する出力が虚偽情報や偏見を含む可能性があるため注意。 -これらの問題を緩和するための対策(フィルタリング、ポスト・プロセッシングなど)を講じる。 ***メンテナンスとサポート [#y86bcf08] OSS LLMのメンテナンス体制とサポート体制を確認。 -商用版のサポートがあるか? -開発が活発に行われているか? -バグフィックスやセキュリティ・アップデートが定期的に提供されているか? ***カスタマイズの容易さ [#qbd67d89] -自社のニーズに合わせたカスタマイズの容易さを評価。 -開発が簡単かどうかを確認 --コードの理解し易さ --ドキュメントの充実度 --プラグインやエクステンション ***データ保護 [#t3c3fd35] モデルのトレーニングや推論に使用するデータの保護を確認。 -著作権侵害や情報漏洩に繋がらないように対策が施されていることを確認 -なお、アクセス制御、セキュリティ対策は構築で確保する。 **著名なモデル [#f0754ba6] ***Llama [#bbf49688] -Metaによって開発、リコーなどで導入事例あり。 -事前学習済みのLlamaを動かす情報はネットにも確認できる。 ***Gemma [#b4ce0258] -Googleによって開発、企業での導入事例は発見できず。 -事前学習済みのGemmaを動かす情報はネットにも確認できる。 ***Phi-3 [#ff0c879d] -MicrosoftがSLM(Small Language Model)として開発したPhi-3、企業での導入事例は発見できず。 -事前学習済みのPhi-3を動かす情報はネットにも確認できる。 ***Mixtral [#g06c811d] -Mistral AIによって開発、SB、楽天、トヨタなどで導入事例あり。 -事前学習済みのMistral AIを動かす情報はネットにも確認できる。 ***Falcon [#e0073df4] アブダビのTechnology Innovation Institute(TII)によって開発 ***BLOOM [#n03f17c7] BigScienceという協力的AI研究ワークショップによって開発 ***EleutherAI [#gf9c4735] 草の根の非営利の人工知能研究グループによって開発 ***Qwen2 [#x786b39f] -アリババによって開発、企業での導入事例は発見できず。 -事前学習済みのQwen2を動かす情報はネットにも確認できる。 ***CodeGen [#ncfe03cc] Salesforceが提供するLLM ***Databricks [#n1be7b69] AI/BI系のプラットフォームベンダで、色々なOSSをホストしている。 -Llama 2 -Dolly([[EleutherAI系>#gf9c4735]]) -DBRX(Databricks謹製) **モデル区分 [#o3b5faa8] ***Pretrainedモデル [#a07fa032] -事前学習済みモデル -ラベル:pretrain ***Instruction-tunedモデル [#v24c84f6] -「命令 + 入力 → 応答」の形式で学習されているChat用途にも流用可。 -ラベル:instruct ***Chatモデル [#ne8b706e] -Instructionモデルの中でも、特にchatbot形式(役割/文脈付き会話)に最適化。 -ラベル:chat ***Codeモデル [#a9953824] -プログラミング言語のコードを大量に含むデータで事前学習・[[ファインチューニング>#o59589b5]]。 -ラベル:code ***Multimodalモデル [#zd73010f] -テキスト+画像、テキスト+音声などの複合入力に対応。 -ラベル:vit, clip ***多言語モデル [#t1f68728] -日本語や多言語のデータを含む。 -ラベル:language、multilingual、japanese, ja **モデル・サイズ [#g1c5fd1c] -Bは、10億パラメタを意味し、1BあたりのGPUメモリ使用量の目安は以下の通り。 |型|サイズ|説明|h |float32|約4GB|フル| |float16|約2GB|1/2| |bfloat16|約2GB|1/2| |int8量子化|約1GB|1/4| |4bit量子化|約0.5GB未満|1/8| >※ 参考:[[パラメタ数>テキスト生成系(Transformer系)#u0a15484]] -Tは、B(10億)の10^3となる、1兆パラメタを意味し、フロンティアモデルで使う。 -G(10億)を使わないのは業界慣例、GやTは2進・10進の両方で使うが、Bは常に10進の意味。 -なお、[[Hugging Face]]などでリリースされているLLMには複数のサイズ違いがある。 --同シリーズ&バージョンのパラメタ数の大 / 小 --量子化(Quantization)パターン(ggml, gguf, awq, gptq, exl2 など) -ちなみに、明確な定義はないが、SLMは、一般的には7B以下のものらしい。 ***100M〜3B [#v79d4124] モバイル向け、軽量モデル、SLM(Small) ***7B〜70B [#v1fe8683] 高性能モデル、LLM(Large) ***100B〜数百B [#he5b95c3] 高精度モデル、VLM(Very Large) ***1T~10T [#mec98321] フロンティア **フォーマット [#d5bd81da] GGML、GGUF、GPTQは、主にLLMの軽量化・実行する際の 形式・技術・ツール ***GGML [#a58fc05f] (Georgi Gerganov's ML Library) -llama.cpp推論エンジンから利用する。 -特にCPUやGPUなし低リソース環境でもLLMを推論できるよう最適化された高速なモデル -C/C++で書かれた、軽量な機械学習ライブラリとモデルの独自バイナリ形式(→[[GGUF>#sd779976]]へと進化) -統一規格ではなく、実装者により異なるバージョンが存在していたため、互換性に課題があった。 ***GGUF [#sd779976] (GGML Universal Format) -GGMLの独自バイナリ形式の進化形の後継で、より汎用性と互換性を持たせた。 -メタデータ、トークナイザ、量子化情報を1ファイルに格納、配布・利用を標準化。 -軽量化・推論専用に最適化された形式で、推論のみが目的となる。 -多くのローカル実行系(llama.cpp、text-generation-webuiなど)が対応 -llama.cpp の convert_hf_to_gguf.py、llama-quantize とか? -参考:GGUF 変換メモ #llama.cpp - Qiita~ https://qiita.com/7shi/items/14d24a25aa26dcf97d2d ***GPTQ [#v3e3476b] (GPT Quantization) -Hugging Face Transformersライブラリから利用する。 -学習済みモデルに対して量子化を施すツール、方式、形式 -サイズと推論コスト(メモリ・速度)を大幅に削減し、精度も保つ。 --2bit, 3bit, 4bitなどへの量子化が可能 --Transformer層ごとに最適なスケーリングを行うことで、精度を最大限維持 -よく使われる形式 |項目|旧形式|Hugging Face形式|h |ファイル形式|PyTorchバイナリ(.bin)|[[HF標準構成>#zbe3597d]](.safetensors で量子化済)| |互換性|限定的(専用コード必要)|AutoGPTQ, transformers 互換| |配布|zipやgitで配布|Hugging Face Hubで共有| |安全性・速度|通常の.binは非検証|.safetensorsで検証&高速| |推奨度|過去の形式、現在は非推奨|標準化されており現在の主流・推奨| -[[HF標準構成>#zbe3597d]]の場合の構成 your-gptq-model/ ├── model.safetensors ← GPTQで量子化された重み(低ビット) ├── config.json ← 通常のTransformers config ├── tokenizer.* ← トークナイザ設定 ├── quantize_config.json ← GPTQ量子化の設定情報 ***図表 [#wf1cff93] |項目|GGML|GGUF|GPTQ|h |種類|推論実行ライブラリ兼モデルフォーマット|モデルフォーマット|量子化技術・ツール| |主な用途|軽量モデルの実行|モデル配布・互換性統一|モデルの圧縮(量子化)| |関連技術|llama.cpp|llama.cpp, koboldcpp など|ExLlama, AutoGPTQ など| |主な形式|.bin(旧)|.gguf(新)|.bin(旧), .safetensors, .json, .model(新)| ┌──────────────┐ │ llama.cpp │ ← 実際の推論エンジン └────┬─────────┘ │ uses ▼ ┌──────────────┐ │ GGML │ ← テンソル演算ライブラリ(中核) └──────────────┘ ▲ uses models in │ ▼ ┌──────────────┐ │ GGUF │ ← モデルファイルフォーマット └──────────────┘ **HF標準構成 [#zbe3597d] -Hugging Face Transformersライブラリ※1と互換性のあるモデル・ディレクトリ構成 -モデルの再利用・共有・ロード・保存をスムーズに行うために定められた標準的な構成 -※1: --Hugging Face が開発したOSSのTransformersライブラリ --もともと PyTorch ベースで開発されたライブラリ --現在は[[TensorFlow>TensorFlow・Keras]], Flaxにも部分的に対応したマルチフレームワーク対応ライブラリ --ただし、PyTorch が最も優先されており、最新機能も先に PyTorch に実装される傾向がある。 |形式|内容|詳細|備考|h |Transformers形式|`pytorch_model.bin`, `tf_model.h5`, `flax_model.msgpack`, `config.json`, `tokenizer.json` など | Hugging Face Transformersライブラリが使用する標準的なファイル構成。フレームワークに応じたモデル重みファイル(PyTorch、TensorFlow、Flax)と設定・トークナイザファイルを含む。 | 学習・微調整・推論が可能で、特に研究・開発用途に適している。ファイルは一般的にPythonのpickle形式で保存されるため、セキュリティ面では注意が必要(意図しないコードが実行される可能性がある)。| |Safetensors形式| `.safetensors` というバイナリ形式|Hugging Face Transformersで利用可能な、安全性と読み込み速度を重視したフォーマット。pickleに比べて安全で、高速にロード可能。なお、TensorFlowは非対応とのこと。| セキュアで信頼性が高く、推論用途や本番環境での利用に推奨される。構造化されたバイナリ形式で、意図しないコードの実行を防止。`pytorch_model.safetensors` などのファイル名で提供される。 | ***Transformers形式 [#kc696d82] -ディレクトリ構成 my_model_directory/ ├── config.json ├── pytorch_model.bin ├── tokenizer_config.json ├── vocab.txt / merges.txt / tokenizer.json ├── special_tokens_map.json ├── generation_config.json └── added_tokens.json -ファイルの説明 |ファイル|説明|h |config.json(必須)|モデルアーキテクチャの設定| |pytorch_model.bin, tf_model.h5, flax_model.msgpack|PyTorch、[[TensorFlow>TensorFlow・Keras]]、Flaxモデルの重み(PyTorchの場合は必須)| |tokenizer_config.json|トークナイザの設定情報| |vocab.txt, merges.txt, tokenizer.json|トークナイザの語彙情報| |special_tokens_map.json|トークンのマッピング情報([CLS], [SEP], [PAD] など)| |generation_config.json|テキスト生成関連のパラメータ(max_length, temperature, top_k など)| |added_tokens.json(任意)|ユーザーが追加したトークンの情報| ***Safetensors形式 [#xd1467fb] -ディレクトリ構成 my_model_directory/ ├── config.json ├── model.safetensors ← PyTorch版の重み ├── tokenizer_config.json ├── vocab.txt / merges.txt / tokenizer.json ├── special_tokens_map.json └── generation_config.json -Safetensorsの特徴 |特徴|内容|h |安全性|Pythonのpickleを使わないため、読み込み時に任意コードが実行されない(セキュア)| |高速性|バイナリ形式で効率的にメモリマッピングされるため、ロードが速い| |一貫性|ファイルを開かなくても中身(テンソル名・形状)をメタデータから確認できる| |互換性|主にPyTorchとHF Transformersで広く使われているが、TensorFlow・Flaxへのサポートはまだ限定的。| **検環環境 [#aa81fc3e] ***VM費用見積もり [#j66a9045] -稼働時間~ 5(営業日/週) * 4(週/月)* 3(時間/日)= 60(時間/月)で見積もり~ ※ 1か月フル稼働は730時間なので30/730 = 0.04ヵ月分(つまり、以下の「/月」は、=0.04ヵ月分) -VMサイズ~ SLM推論実行などではギリギリ不要だが、LLM実行や[[ファインチューニング>#o59589b5]]にはGPUが必要になる。 --LLaMA 3 1B、Phi-3は(GPUを実装しない)ノートPCでも動作する。 --LLaMA 3 8BにはGPUが必要で、 ---必要なVMサイズは、AzureでNC4as_T4_v3辺りで、 ---コレは、0.5-1万/月、一か月上げっぱなすと10-20万 --小さなモデルを[[ファインチューニング>#o59589b5]]をする場合、 ---必要なVMサイズは、GPUのVRAMが24GBほど必要で、 ---AzureでStandard_NV36ads_A10_v5(Nvidia A10)位のスペックが必要。 ---コレは、1.5万/月、一か月上げっぱなすと30-50万 --大規模言語モデル(LLaMA 3 70B)を稼働させる場合、 ---AzureでND96asr_A100_v4(Nvidia A100)位のスペックが必要。 ---コレは、10万/月(無理(笑))、一か月上げっぱなすと300万 ---あまりに高額なので、調べるとA100は1枚で$11,000(約163万円)らしい。 -付帯費用~ Azureバッション2万/月など -実費総額 --コレはミニマム環境なので、予算としては、5万/月ほどあると良さそう。 --リージョンを変えると価格が大きく変わるので、検証用途なら、日本にする必要はないかも。 ***GPU付きVMを準備 [#we26e9ac] -使用可能なVMサイズを表示 az vm list-sizes --location japaneast --output table --query "[?contains(name, 'Standard_N')]" --Standard_NのVM は NVIDIA GPU が搭載されている。 --Standard_NC8as_T4_v3 は時間1ドル程度らしい。 -[[以下の変数を変更>Ubuntu 24.04 on Azure via Bastion 2025/2/27#v3741d2b]]し、VMを作成する。 vmSize=Standard_NC8as_T4_v3 vmOS=Ubuntu2404 vmName=GPU-VM1 vmUser=XXXX vmPassword=XXXX -az vm create --JumpBox~ https://github.com/OpenTouryoProject/DxCommon/tree/master/AzureIaC/Simplest#virtual-machine --Sandbox~ https://github.com/OpenTouryoProject/DxCommon/tree/master/AzureIaC/Simplest#virtual-machine-1 ***インストレーション [#p7fc71c4] -最終的に、GPUはフレームワークから使用するので、フレームワークとのバージョン互換を確認しておく。~ (PyTorch安定版(2.7.0)には Python 3.9 以降、CUDA 12.8が必要である模様:https://pytorch.org/get-started/locally/) -Linux 用 Azure N シリーズ GPU ドライバーのセットアップ - Azure Virtual Machines | Microsoft Learn~ https://learn.microsoft.com/en-us/azure/virtual-machines/linux/n-series-driver-setup -手順の事前確認 --[[Ubuntuの基本的な構成>Ubuntu 24.04 on Azure via Bastion 2025/2/27#m338bbf2]]は後回しでSSHでやるのが良い。 --NVIDIAドライバ・インストール時にハングるので、セキュア ブートと vTPM を無効化~ https://learn.microsoft.com/ja-jp/azure/virtual-machines/trusted-launch-portal~ 以下のコマンドでも行けるっぽい(VMを停止してから実行)。 az vm update \ --resource-group <RG名> \ --name <VM名> \ --set securityProfile.uefiSettings.secureBootEnabled=false \ securityProfile.uefiSettings.vTpmEnabled=false --GPU 割り当て確認 ---PCIバス接続デバイス情報を表示 lspci | grep -i nvidia 0001:00:00.0 3D controller: NVIDIA Corporation TU104GL [Tesla T4] (rev a1) ---NVIDIA製GPUドライバ情報を表示~ ココで認識できていれば、NVIDIAドライバのインストールは不要かも nvidia-smi Command 'nvidia-smi' not found, but can be installed with: sudo apt install nvidia-utils-... --既存ドライバがある場合、削除(再構成時はこの手順が必要 sudo apt --purge remove -y nvidia-* sudo apt --purge remove -y cuda-* sudo apt --purge remove -y libcudnn* sudo apt --purge remove -y cudnn-* sudo apt autoremove -y sudo reboot -NVIDIAドライバのインストール~ --ubuntu-drivers ユーティリティをインストール sudo apt update && sudo apt install -y ubuntu-drivers-common --最新版をインストール(Azureの手順はコッチ) sudo ubuntu-drivers install --recommendedを確認してインストール ubuntu-drivers devices ... driver : nvidia-driver-575-open - third-party non-free recommended ... ---recommendedをインストール~ ・自動 sudo ubuntu-drivers autoinstall ・手動 sudo apt install -y nvidia-driver-535(例) --Your system has UEFI Secure Boot enabled. UEFI Secure Boot requires ...~ というエラーが出たら「セキュア ブート」「vTPM」無効化の手順を飛ばしている。 --再起動 sudo reboot --NVIDIAドライバの確認 ---NVIDIAドライバロードの確認 sudo dmesg | grep -i nvidia ---NVIDIA製GPUドライバ情報を表示 nvidia-smi Wed May 14 09:29:03 2025 +---------------------------------------------------------------------------------------+ | NVIDIA-SMI 535.230.02 Driver Version: 535.230.02 CUDA Version: 12.2 | |-----------------------------------------+----------------------+----------------------+ | GPU Name Persistence-M | Bus-Id Disp.A | Volatile Uncorr. ECC | | Fan Temp Perf Pwr:Usage/Cap | Memory-Usage | GPU-Util Compute M. | | | | MIG M. | |=========================================+======================+======================| | 0 Tesla T4 Off | 00000001:00:00.0 Off | Off | | N/A 32C P8 11W / 70W | 84MiB / 16384MiB | 0% Default | | | | N/A | +-----------------------------------------+----------------------+----------------------+ +---------------------------------------------------------------------------------------+ | Processes: | | GPU GI CI PID Type Process name GPU Memory | | ID ID Usage | |=======================================================================================| | 0 N/A N/A 1129 G /usr/lib/xorg/Xorg 81MiB | +---------------------------------------------------------------------------------------+ ※ 表示されているCUDAバージョンは、当該NVIDIAドライバが対応している最大のCUDA Toolkitバージョンを示す。 -CUDA Toolkitのインストール~ 「CUDA Version: 12.2」なので12.2以下のインストールが望ましいのかもしれないが、ココでcuda-toolkit-12-5、12-8で問題なかった。~ (実行バイナリを作成する際に --gpu-architecture=compute_75 --gpu-code=sm_75 などと、ドライバ(12.2)に対応させられるらしい) --Azure wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2404/x86_64/cuda-keyring_1.1-1_all.deb sudo apt install -y ./cuda-keyring_1.1-1_all.deb sudo apt update sudo apt -y install cuda-toolkit-12-5 --各バージョン ---CUDA Toolkit Archiveにアクセス~ https://developer.nvidia.com/cuda-toolkit-archive ---当該バージョンのインストレーションを実行(※ deb_network)~ https://developer.nvidia.com/cuda-12-8-0-download-archive?target_os=Linux&target_arch=x86_64&Distribution=Ubuntu&target_version=24.04&target_type=deb_network wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2404/x86_64/cuda-keyring_1.1-1_all.deb sudo dpkg -i cuda-keyring_1.1-1_all.deb sudo apt-get update sudo apt-get -y install cuda-toolkit-12-8 --再起動 sudo reboot --CUDAバージョン情報の確認~ CUDA ToolKitとともにインストールされる CUDA C++ のコンパイラ・ドライバ、~ nvcc の -V オプションで(≒ CUDA ToolKit ≒ CUDAの)バージョンを表示させる。 ---nvccを実行するには、環境変数 PATH に CUDA の bin ディレクトリを含める必要がある。 export PATH=/usr/local/cuda/bin:$PATH ---nvcc の -V オプションを実行すると、以下のように表示される。 $ nvcc -V nvcc: NVIDIA (R) Cuda compiler driver Copyright (c) 2005-2025 NVIDIA Corporation Built on Fri_Feb_21_20:23:50_PST_2025 Cuda compilation tools, release 12.8, V12.8.93 Build cuda_12.8.r12.8/compiler.35583870_0 -cuDNNnのインストールはパス。 --推奨とされていたが、現在のPyTorchにcuDNNは不要らしい。~ CUDA 12.8 に対応する cuDNN のバージョンは、cuDNN 8.9.7。 --cuDNNのサイトのチェック~ https://developer.nvidia.com/ --ver9未満のインストレーションのナビゲーションがよろしくない。~ https://developer.nvidia.com/cudnn-archive -展開後のドライバ定期更新 sudo apt update sudo apt full-upgrade ***Python 環境で確認 [#kbea4331] -pythonのバージョンを確認 python3 -V Python 3.12.3 -pythonのパッケージマネージャーpipをインストール sudo apt install python3-pip -[[コチラ>WSL2 Ubuntu 24.04 LTS 2025/1/21#m8a520c5]]の手順に従い仮想環境を作成 --venvをインストールする。 sudo apt install python3-venv --仮想環境作成 python3 -m venv .python3_venv --アクティブ化(環境外から実行) source .python3_venv/bin/activate --非アクティブ化(環境内から実行) deactivate -フレームワークをインストール~ 仮想環境の「外」でやるか「中」でやるかは要検討だが、「外」に入れても「中」では使えないので基本は「中」かと。 --ERROR: Could not install packages due to an OSError: [Errno 28] No space left on device対策 ---pipキャッシュをクリア pip cache purge ---FS内のFSの量を表示 df -h Filesystem Size Used Avail Use% Mounted on /dev/root 29G 23G 5.2G 82% / tmpfs 28G 0 28G 0% /dev/shm tmpfs 11G 1.3M 11G 1% /run tmpfs 5.0M 0 5.0M 0% /run/lock efivarfs 128K 35K 89K 28% /sys/firmware/efi/efivars /dev/sda16 881M 60M 760M 8% /boot /dev/sda15 105M 6.2M 99M 6% /boot/efi /dev/sdb1 346G 32K 328G 1% /mnt tmpfs 5.5G 108K 5.5G 1% /run/user/112 tmpfs 5.5G 112K 5.5G 1% /run/user/1000 ---/mntが大きそうなのでココにワーク領域を作成 sudo mkdir -p /mnt/tmp sudo chmod 1777 /mnt/tmp --ワーク領域を指定してGPU対応版をインストール ---「TMPDIR=/mnt/tmp pip」として、unpackingフォルダを指定 ---index-urlでCUDA対応版を明示してGPU対応版をインストール TMPDIR=/mnt/tmp pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu128 ---CUDAが古い場合、torch系のバージョン番号を指定。https://pytorch.org/get-started/previous-versions/ TMPDIR=/mnt/tmp pip install torch==2.6.0 torchvision==0.21.0 torchaudio==2.6.0 --index-url https://download.pytorch.org/whl/cu124 --バージョン確認 ---torch 2.7.0+cu...を想定 $ pip list Package Version ------------------------- -------------- ... torch 2.7.0+cu128 torchaudio 2.7.0+cu128 torchvision 0.22.0+cu128 ... ---torch 2.7.0+cu...を想定 $ pip list Package Version ------------------------- -------------- ... torch 2.6.0+cu124 torchaudio 2.6.0+cu124 torchvision 0.21.0+cu124 ... --実行確認(インタラクティブ実行で) python3 >>> import torch >>> print(torch.cuda.is_available()) # TrueならOK True >>> print(torch.cuda.get_device_name(0)) # GPU名表示 Tesla T4 -CUDA環境の動作確認 --PyCUDA、PyTorch、TensorFlowなど、なにを使用して確認するかでコードが異なる。 --https://github.com/OpenTouryoProject/DxCommon/blob/master/Notebook/Jupyter/path/CheckGPUWithPython.ipynb ***[[ディスク追加>Ubuntu 24.04 on Azure via Bastion 2025/2/27#f7354ddc]] [#u0d612e8] ***Dockerを使用 [#u030f074] 以下のような -VMがドライバ -DockerがCUDA -venvがpip 役割分担で保守性向上 **[[ファインチューニング>LLMのFT]] [#o59589b5] *参考 [#v87b06bf] -深層学習についてのレポート(LLM編)~ https://www.osscons.jp/joho108j0-537/#_537 **環境準備 [#s2034df1] ***VM費用見積もり [#y54fc6ec] -料金計算ツール | Microsoft Azure~ https://azure.microsoft.com/ja-jp/pricing/calculator/ --料金 - Linux Virtual Machines | Microsoft Azure~ https://azure.microsoft.com/ja-jp/pricing/details/virtual-machines/linux/#pricing -AzureのGPU搭載VMを安い順に並べる(2023年9月版)|saip(さいぴ)~ https://note.com/sa1p/n/n0485cd0d8a04 -Azureの仮想マシンでNVIDIA A100 GPUを使用する~ https://zenn.dev/headwaters/articles/4a714937c9d17c -【UiPath】AWS/Azure仮想マシンでローカルLLM環境を構築する #ollama - Qiita~ https://qiita.com/hidecha/items/dba9e863d3651989bfc3 -Llama-3をColabで記事執筆用にファインチューニングしてみた~ https://zenn.dev/carenet/articles/0d2e1100121b0e -LLaMA 3を本番環境に導入するには?~ https://nlpcloud.com/ja/how-to-install-and-deploy-llama-3-into-production.html ***GPUを認識させる [#e6edf116] -Linux 用 Azure N シリーズ GPU ドライバーのセットアップ - Azure Virtual Machines | Microsoft Learn~ https://learn.microsoft.com/en-us/azure/virtual-machines/linux/n-series-driver-setup -Qiita --【Ubuntu 24.04 LTS】NVIDIAドライバおよびCUDAのインストール #機械学習~ https://qiita.com/YaezakuraP/items/507a7a9713b4e6f63f4b --ubuntuにCUDA、nvidiaドライバをインストールするメモ #Ubuntu - ~ https://qiita.com/porizou1/items/74d8264d6381ee2941bd --【UiPath】AWS/Azure仮想マシンでローカルLLM環境を構築する #ollama~ https://qiita.com/hidecha/items/dba9e863d3651989bfc3 --Your system has UEFI Secure Boot enabled. UEFI Secure Boot requires ... というエラー(メッセージ)の対処 #GPU~ https://qiita.com/Yorozuya59/items/499a632cce827a912918 --NVIDIAのドライバをUbuntuにインストールするときにハマった話 #nvidia-driver~ https://qiita.com/abehiro/items/81af20369099a303b855 --PyTorchとGPU/CUDA周りの環境構築のバージョン解決 #Ubuntu~ https://qiita.com/ketaro-m/items/4de2bd3101bcb6a6b668 -その他 --OCI Ubuntu 24.04にNVIDIA GPU DriverとCUDAをインストールする~ https://zenn.dev/shukawam/scraps/44f9cdf3df70ff --GPUを使った機械学習の環境を作るためにすること/しないこと(Ubuntu 22.04/24.04編)~ https://zenn.dev/yuyakato/articles/6915e735bc6aa5 **ツール類 [#m585a48a] -LLMの実行方法と周辺ツールまとめ #OpenAI~ https://qiita.com/simakihiro/items/7467b849212fb3863e3b -LLM Tools - Ranking | OSS Insight~ https://ossinsight.io/collections/llm-tools/ ***[[Ollama]] [#q003a352] ***[[Hugging Face]] [#kb4f2fe0] ***Notebook [#a5363075] -DxCommon/Notebook/Jupyter/path at master · OpenTouryoProject/DxCommon~ https://github.com/OpenTouryoProject/DxCommon/tree/master/Notebook/Jupyter/path --LLM_Ollama.ipynb --LLM_Streamlit.py --,etc.