🗻

Fugaku-LLMをollamaで利用する

2024/05/11に公開

国産LLMであるFugaku-LLMが2024-05-10に公開されました。

LLMのチャットアプリとしてインストールが簡単で人気のollamaに、Fugaku-LLMのモデルを登録して使うことができたので、その手順を紹介します。

動作確認環境

  • OS Ubuntu 22.04 Desktop および WSL上のUbuntu-22.04
  • ollama v0.1.34 (2024-05-10時点の最新バージョン)

(1) ollamaをインストールする

(まだollamaをインストールしていなければ)

ollamaの公式サイトに行って「Download↓」をクリックし、
https://ollama.com/

OSに応じたインストーラーを入手してインストールします。
(WSL上のUbuntu-22.04の場合はもちろんLinuxです)

(2) Fugaku-LLMのGGUFファイルをダウンロードする

Fugaku-LLMには2024-05-10現在3種類のモデルが公開されています。

  • Fugaku-LLM-13B (ベースモデル)
  • Fugaku-LLM-13B-instruct (インストラクトモデル)
  • Fugaku-LLM-13B-instruct-gguf (インストラクトモデルをGGUFフォーマットに変換したもの)

このうちで、ollamaで利用するのは3つめのFugaku-LLM-13B-instruct-ggufモデルです。

Hugging Faceの該当ページに行って
https://huggingface.co/Fugaku-LLM/Fugaku-LLM-13B-instruct-gguf

Fugaku-LLM-13B-instruct-0325b-q5_k_m.gguf というファイルをダウンロード します。

(3) ollamaにFugaku-LLMを登録するためのモデルファイル(設定ファイル)を用意する

ollamaにモデルを登録するためには、モデルファイルを作成する必要があります。

モデルファイルの作り方は、githubにあるollamaのページに説明があります。
https://github.com/ollama/ollama

また、Fugakuのパラメータやプロンプトは、Hugging FaceのFugaku-LLMのページのコード例から取得できます。
https://huggingface.co/Fugaku-LLM/Fugaku-LLM-13B

両者をにらみつつモデルファイルを作ると次のようになります。

FROM ./Fugaku-LLM-13B-instruct-0325b-q5_k_m.gguf

PARAMETER temperature 0.1
PARAMETER repeat_penalty 1.0
PARAMETER top_p 0.9
PARAMETER top_k 0

SYSTEM """以下は、タスクを説明する指示です。要求を適切に満たす応答を書きなさい。""""

TEMPLATE """{{ if .System }}{{ .System }}
{{ end }}{{ if .Prompt }}### 指示:
{{ .Prompt }}

{{ end }}### 応答:
"""

上記の内容のテキストファイルを、モデルファイルをダウンロードしたディレクトリに作成します(ファイル名をModelfileとします)。

(4) ollamaにFugaku-LLMを登録する

ターミナルでモデルファイルをダウンロードしたディレクトリに移動して、次のコマンドを実行 します。「transferring ...」という行で始まるメッセージが表示され、最後に 「success」と表示されたら成功 です。

ollama create fugaku-llm -f Modelfile

登録が終わった段階では(ollamaが管理するディレクトリにモデルファイルがコピーされているので)ダウンロードしたファイルは削除しても大丈夫です。

ちなみにollamaへの登録を解除(コピーされたファイルも削除される)する場合は次のようにしてください。

ollama rm fugaku-llm

(5) 実行

実行は他のモデルと同様です。モデル名はステップ(4)のコマンドラインで指定した fugaku-llm になります。

ollama run fugaku-llm

えんじょい!

付録: WSL上のUbuntu-22.04で実行したときの様子

ollamaにモデルファイルを登録したところ

質問してるところ(島根にも詳しいです!)

Macで試された方の記事

Kaito Sugimotoさん、ollamaで Fugaku-LLM を動かす
https://zenn.dev/hellorusk/articles/94bf32ea09ba26

  • Macで動作確認されています。dockerも利用されています。
  • モデルファイルが微妙に異なりますが、同様の動作になっているようです。

Discussion