OllamaでローカルLLM
「Ollama」は、Llama 3、Mistral、Gemmaなどの大規模言語モデルをローカルで使用するためのソフトウェアです。
Ollamaをインストールし、ローカルでLLMを使ってみたいと思います。
環境はMac Book Pro M1 Sonoma 14.2.1です。
まずはGithubのREADME.mdのmacOSの所からダウンロードして、インストールします。
インストール後、ollamaコマンドが利用可能になっているので、下記のコマンドを実行します。
ollama run llama3
これはllama3モデルを実行するコマンドになります。
初回実行時はモデルのダウンロードを行うため、時間がかかります。
サポートしているモデルは下記のリンクから確認できます。
ダウンロードが完了すると、チャットが出来るようになります。
![](https://assets.st-note.com/img/1715771113109-GYMtdspjMB.png?width=800)
チャットは/byeで終了することができます。
OllamaにはビルトインWEB APIも実装されています。
API経由でモデルを利用することが出来ます。
APIリクエストでモデルを利用する
Curlコマンドでapi/generateエンドポイントに以下のようなリクエストを送ります。modelパラメーターには先ほどダウンロードしたllama3を指定します。
curl http://localhost:11434/api/generate -d '
{
"model": "llama3",
"prompt": "こんにちは!",
"stream": false
}'
レスポンス
先ほどのCurlコマンドを実行すると下記のようなレスポンスが返却されます。
{
"model": "llama3",
"created_at": "2024-05-15T11:10:15.812176Z",
"response": "こんにちは!😊",
"done": true,
"done_reason": "stop",
"context": [
128006,
882,
128007,
198,
198,
90115,
6447,
128009,
128006,
78191,
128007,
198,
198,
90115,
6447,
76460,
232,
128009
],
"total_duration": 2988217542,
"load_duration": 7602125,
"prompt_eval_count": 7,
"prompt_eval_duration": 2540292000,
"eval_count": 5,
"eval_duration": 438687000
}
APIドキュメントは下記から確認することが出来ます。https://github.com/ollama/ollama/blob/main/docs/api.md