Ubuntu 22.04 LTS環境で、オープンソースの大規模言語モデル(LLM)であるOllamaをDocker Composeを使って起動する方法について解説する。
動作環境
この手順を実行するための動作環境は以下の通りである。
- OS: Ubuntu 22.04 LTS
- GPU: RTX3060
- メモリ: 32GB
- ストレージ: 2TB SSD
Ubuntuに NVIDIAドライバのインストールならびに環境の構築方法、GPU対応の Docker環境の設定方法は、ここでは割愛する。
それぞれの環境構築は、別の記事で記述する。
Docker Composeファイルの準備
まず、OllamaをDocker Composeで起動するためのdocker-compose.yaml
ファイルを準備する。以下がその内容となる。
version: '3.8'
services:
ollama:
image: ollama/ollama
container_name: ollama
ports:
- "11434:11434"
volumes:
- ./ollama:/root/.ollama
deploy:
resources:
reservations:
devices:
- capabilities: [gpu]
restart: always
environment:
UPLOAD_FILE_SIZE_LIMIT: 150
volumes:
ollama:
この設定ファイルにより、Ollamaのコンテナが構築され、GPUを使用する設定が有効になる。また、再起動オプションも設定されているため、コンテナが停止しても自動的に再起動する。
ディレクトリの設定
docker-compose.yaml
のあるディレクトリにollama/
ディレクトリを作成する。このディレクトリは、コンテナ内の/root/.ollama/
にマウントされる。このディレクトリ内で、オリジナルのLLM(例えば、Fugaku-LLM)のモデルをビルドして登録することができる。
コンテナの起動
docker-compose.yaml
ファイルがあるディレクトリで以下のコマンドを実行して、コンテナを起動する。
docker compose up -d
bashの使用とモデルのインストール
コンテナが正常に起動したら、以下のコマンドを実行してコンテナ内でbashを使用することができる。
docker container exec -it ollama bash
bashを起動した後、以下のコマンドを使用して必要なモデルをダウンロードすることが可能である。
ollama pull llama3
ollama pull gemma2:9b
ollama pull phi3:14b
ollama pull openchat
これらのコマンドを実行することで、Ollamaのコンテナ内に必要なLLMモデルを簡単にインストールできる。
Dify で連携する場合には、ここで pull したモデルを指定することで、APIを通して適時 runしてくれる。
個別でコンソールで以下のコマンドを実行する。
ollama run openchat
まとめ
Ubuntu 22.04 LTS環境でOllamaをDocker Composeで起動する手順となる。