#author("2025-04-08T14:55:17+09:00","","")
#author("2025-04-10T15:48:44+09:00","","")
[[AI]]

* Ollama [#b785e755]

LLM(大規模な言語モデル)を立ち上げて実行するツール

※強制的にCPUで動作させる場合は、以下、環境変数を設定しておけばよい
 OLLAMA_NO_CUDA=1

** インストール [#d6277378]
 wget https://ollama.com/install.sh
 bash install.sh

** 使い方 [#k82ba4f8]
*** Llama-3-ELYZA-JP-8B を使ってみる。 [#d70bbad5]
- モデルのダウンロード
 wget https://huggingface.co/elyza/Llama-3-ELYZA-JP-8B-GGUF/resolve/main/Llama-3-ELYZA-JP-8B-q4_k_m.gguf?download=true
 mv Llama-3-ELYZA-JP-8B-q4_k_m.gguf* Llama-3-ELYZA-JP-8B-q4_k_m.gguf
- Modelfile 作成
次の Modefile を作成する。
 FROM ./Llama-3-ELYZA-JP-8B-q4_k_m.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|>
 
 {{ .Response }}<|eot_id|>"""
 PARAMETER stop "<|start_header_id|>"
 PARAMETER stop "<|end_header_id|>"
 PARAMETER stop "<|eot_id|>"
 PARAMETER stop "<|reserved_special_token"
-ollama 用のモデル作成
 ollama create elyza:jp8b -f Modelfile
-モデルの実行
 ollama run elyza:jp8b
対話形式で、回答を返してくれます。
-Python からの実行
-- ollama インストール
 !pip install ollama
-- コード
 from ollama import chat
 from ollama import ChatResponse
 
 response: ChatResponse = chat(model='elyza:jp8b', messages=[
     {
         'role': 'system',
         'content': 'あなたは誠実で優秀な日本人のアシスタントです。特に指示が無い場合は、常に日本語で回答してください。',
     },
     {
         'role': 'user',
         'content': 'D言語で、フィボナッチ数列を実装してください。',
     },
 ])
 print(response['message']['content'])


** ollama サービスの起動停止 [#xaa56609]
 # 停止
 sudo systemctl stop ollama
 # 開始
 sudo systemctl start ollama

** ollama 設定変更 [#dfbca807]
 systemctl edit ollama.service
エディタが起動するので、
 [Service]
 Environment="OLLAMA_HOST=127.0.0.1:11434"
のように設定を記載して保存する。
&color(red){### Lines bellow this comment will be discarded より上に記載のこと。};

** ポートなどを変更した場合 [#ke77aa0a]
次のように、環境変数にてポート等を指定して実行する。
 OLLAMA_HOST=127.0.0.1:11434 ollama ps


** Jupyter からの実行例 [#od54d19c]

https://ehobby.jp/~kei-n/html/ollama.html


トップ   差分 バックアップ リロード   一覧 検索 最終更新   ヘルプ   最終更新のRSS