はじめに
こんにちは。SCSKの松谷です。SCSKに新卒で入社し、今年で2年目になります。
本連載では、私が社内で行ったローカルLLM検証について、全5回(仮)にわたって紹介していきます。
きっかけは、課長からの「ローカルLLMを実行できるようにしてみて!」という一言でした。当初はローカルLLMそのものが理解できておらず、正直戸惑いました。しかし、様々な資料を読み、試行錯誤を重ねる中で、ローカルLLMの実行環境の構築に成功し、所属組織の方々に利用していただける段階まで到達することが出来ました。
本連載では、ローカルLLM実装に向けた検証過程の具体的な作業内容や得られた知見を共有していきます。
これからAIの取り組みを始めたい方、ローカルLLMに興味がある方などの参考になれば幸いです。
第0回として今回は、本連載の構成、ローカルLLMとは何か、について記載しています。
ローカルLLMとは
ローカルLLM(Large Language Models)は、その名の通りローカルな環境(個人PCや自社サーバーなど)で動作する大規模言語モデルを指します。ChatGPTで利用されているGPT-4のようなクローズドな大規模言語モデル(ソースコードが公開されていない大規模言語モデル)ではなく、オープンに公開されている大規模言語モデルをダウンロードして、手元の計算資源を利用して推論するといった利用方法が一般的です。ローカルLLMを利用することによるメリット・デメリットには、以下のようなものがあります。
メリット
1.セキュリティ
- a.ローカル環境でモデルを利用するため、データが外部に出ることがない
- b.クラウド型のLLMサービスでは利用できないようなデータを利用することも可能
2.ネットワーク
- a.データの送受信がローカルで完結するため、通信遅延が発生しにくく、応答時間が短くなる場合がある
- b.インターネットに接続していない環境でも利用できる
3.カスタマイズ性
- a.特定のタスクに合わせてモデルを調整することも可能
デメリット
1.ハードウェアリソース
- a.大規模言語モデルを利用するためには、ある程度強力なハードウェアリソースが必要(GPUなど)
2.運用負荷
- a.モデルの管理などに人的リソースが必要
- b.システムの構築に知識が必要(この部分は本連載である程度解決できます!!)
メリット・デメリットのどちらにも当てはまるものとしては「コスト」があります。コストに関わるメリット・デメリットには以下のものがあります。
メリット:クラウド型のLLMサービスの利用料を削減できる
デメリット:高性能なGPUなどを搭載したハードウェアの初期費用がかかる
上記に記載したメリット・デメリットを考慮して、ローカルLLMを利用するかどうかを検討してみるのが良いと思います。
ローカルLLM実装の手順
ローカルLLMを実装するにあたり、以下のような手順で作業を進めていきます。
- 1. CUDA Toolkit, NVIDIAドライバのインストール(第1回)
- 2. Dockerのインストール(第2回)
- 3. NVIDIA Container Toolkitのインストール(第3回)
- 4. OllamaによるローカルLLMの実行(第4回)
- 5. Ollama + Open WebUIによるローカルLLMの実行(第5回)
今後の連載は上記の作業を1つずつ進めていきます。流れに沿って構築していただくことで、ローカルLLMを動作させることができます!
おわりに
今回は第0回として本連載の構成、ローカルLLMについて紹介しました。
今後、5回(仮)にわたってローカルLLM実装に向けた検証過程の具体的な作業内容や得られた知見を共有していきます。
よろしくお願いします!
次回は、検証環境の構築作業として「CUDA Toolkitのインストール」をテーマに記載していきます。お楽しみに!
著者プロフィール
松谷 康平(まつたに こうへい)
SCSK株式会社 インフラエンジニア
2023年に新卒で入社。現在はお客様のインフラ環境の構築を担当。
所属組織では、AI検証活動を積極的に行っている。