日本語LLM:VecteusをOllamaで走らせてみる
前記事で紹介したVecteusをOllamaで走らせるための手順です。
Huggingfaceからモデルのggufファイルをダウンロードします。
公式にもありますが、下記のポストがあったので、mmnga氏のggufからダウンロードしました。
希望の量子化モデルをダウンロードしてください。
自分の場合は、お手軽にtext-generation-webuiを使って Vecteus-v1-Q8_0.gguf モデルをダウンロードして、動作確認をしてからollama用に変換しました。
なおtext-genaration-webuiで、チャットする時には、ロードしたときにalpaca形式のようですと表示されますが、パラメータのところでは、vicuna-1.1を選ばないと上手くチャットできませんでした。
Ollamaの形式に変換するためのmodelfileは下記のように設定します。
FROMは、モデルファイル名も含まれた、モデルがダウンロードされたパス全体です。
chat templateは、vicuna-1.1 が良いようなので、それに合わせています。
またsystem promptは、前の記事同様にしてあります。丁寧な応答としてあるので、気になる方はUncencerdのシステムプロンプトに適当に変えてもらっていいですし、おそらく記載なくても大丈夫かなと思います、多分。
stop parameter は、他のollamaのwizardタイプのmodelfileを参考にして、USER: と ASSISTANT: を設定し、念のために、<s>と</s>も加えてます。
FROM /Users/この部分は適切なパスにしてください/text-generation-webui/models/Vecteus-v1-Q8_0.gguf
TEMPLATE """{{ if .System }}{{ .System }} {{ end }}{{ if .Prompt }}USER: {{ .Prompt }} {{ end }}ASSISTANT: {{ .Response }}"""
SYSTEM """
A chat between a curious user and an artificial intelligence assistant. The assistant gives helpful, detailed, and polite answers to the user's questions. USER: Hi ASSISTANT: Hello.</s>USER: Who are you? ASSISTANT: I am Vecteus.</s>
"""
PARAMETER stop "USER:"
PARAMETER stop "ASSISTANT:"
PARAMETER stop <s>
PARAMETER stop </s>
それで、このファイルを置いてあるdirectoryで、下記を実行します。
この場合、上のファイル名をModelfileForVecteus として保存してます。
また Vecteus-v1-Q8_0.gguf はそのまま分かりやすいように使っていますが、別な名前にしてもらってもかまいません。
ollama create Vecteus-v1-Q8_0.gguf -f ModelfileForVecteus
success とでたら、ollama list でちゃんとリストアップされるかを確認します。
こんな表示が出てたらOKです。
そして、下記で実行。
ollama run Vecteus-v1-Q8_0.gguf
これで対話できます。
ちなみに、システムプロンプトで、名前をVecteusという対話で入れていますが、聞くたびに微妙に名前が変わったりしますね。
あとは、terminalで対をを続けるなり、私のおすすめのPage Assistで実行するなどして楽しんでみてください。(システムプロンプトをPageAssistでは複数設定しておいて選択できるので便利です)
おまけ
Ollamaについての参考になる最近の記事は以下があります。
おまけその2
Page Assistで小説用のDolphinプロンプト例
Dolphin Story Writer (Uncensored)