Ubuntu上でOllamaの環境構築をする方法

この記事ではUbuntu上でOllamaの環境構築をする方法を紹介していく。

Ollamaのインストール

公式ドキュメント「Download Ollama on Linux」に 書いてあるとおり、以下のコマンドを実行するだけで良い。

すごく簡単で良い。

curl -fsSL https://ollama.com/install.sh | sh

HuggingFace等でモデルをダウンロード

適当なggufモデルをダウンロードする。例えば、HuggingFaceであれば以下のようにしてダウンロードする。

curl -L -O https://huggingface.co/alfredplpl/gemma-2-2b-jpn-it-gguf/resolve/main/gemma-2-2b-jpn-it-IQ4_XS.gguf

Modelfileを作成する

OllamaでLLMを使えるようにするためにはModelfileというものを作成し、このModelfileを使って Ollamaからモデルを使えるようにする必要がある。

Modelfileのファイル名は適当で良いが、わかりやすいようにModelfileForGemmaなどにしておこう。 そしてファイルの中身を以下のようにする。


FROM /home/user/gemma-2-2b-jpn-it-IQ4_XS.gguf

TEMPLATE """{{ if .System }}<|start_header_id|>system<|end_header_id|>

{{ .System }}<|eot_id|>{{ end }}{{ if .Prompt }}<|start_header_id|>user<|end_header_id|>

{{ .Prompt }}<|eot_id|>{{ end }}<|start_header_id|>assistant<|end_header_id|>

SYSTEM """
あなたは優秀なプログラマーです。
これからPythonに関する質問をするので初心者にわかりやすく答えてください。

"""

{{ .Response }}<|eot_id|>"""

PARAMETER stop "<|start_header_id|>"
PARAMETER stop "<|end_header_id|>"
PARAMETER stop "<|eot_id|>"
PARAMETER stop "<|reserved_special_token"

ポイントになるのは以下の項目。

  • FROM モデルがあるPATH
  • TEMPLATE 実際にLLMに渡すプロンプト
  • SYSTEM システムプロンプト。LLMにどのように振る舞ってほしいか等を記述すると良い。
  • PARAMETER stop 指定した単語が来た場合、LLMの応答をストップする。

PARAMETER stopは複数指定すると良い。

Ollamaでモデルを動かす

ここまで来れば以下のコマンドを実行すればOK。

ollama create gemma:2b -f /home/user/ModelfileForGemma
ollama run gemma:2b

これでLLMとやり取りができる。

また、APIを通してやり取りもできるので詳細はドキュメントを見よう。

参考文献