Ollama とは
Ollamaは、主要なLLMオープンソースモデルをダウンロードし、ローカルのターミナル上でチャットできるようにするツールです。
以下のように動作します。
インストール
macOS の場合は brew
でインストールできます。
brew install ollama ... To start ollama now and restart at login: brew services start ollama Or, if you don't want/need a background service you can just run: /usr/local/opt/ollama/bin/ollama serve
インストール時のメッセージの通り、brew services start ollama
でサービスを起動するか、ターミナル上から直接 /usr/local/opt/ollama/bin/ollama serve
で起動します。
ターミナル上から直接起動した場合は、別ターミナルで後述の ollama
コマンドを実行することにります。
Windows の場合は winget
でインストールできます。
winget add Ollama.Ollama
インストーラが立ち上がりインストール完了すれば Ollama が起動します。
次回からはスタートアップで自動起動するので、不要な場合は
C:\Users\XXX\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\Ollama
を削除しておきましょう。
Linux の場合は curl
でインストールできます。
curl -fsSL https://ollama.com/install.sh | sh
バージョン確認
ollama --version # ollama version is 0.5.4
Ollama の起動
LLMオープンソースモデルを選択して実行することができます。
Ollama のサイトでモデルを検索できます。
llama3.2 を使う場合は以下のようにラベルを指定して実行します。
ollama run llama3.2
初回はモデルのダウンロードで時間がかかります。 ダウンロードが完了すれば以下のプロンプトが出てチャットが開始されます。
>>> Send a message (/? for help)
終了するには /bye
コンテキストをクリアするには /clear
を入力します
複数行のメッセージを使うには """
で括ります。
Ollama の API サーバも http://localhost:11434
で動いているので以下のように問い合わせることもできます。
curl http://localhost:11434/api/chat -d '{ "model": "llama3.2", "stream": false, "messages": [ { "role": "user", "content": "LLMとは何ですか?" } ] }'
Windows ターミナルの場合は以下のようになります。
curl.exe http://localhost:11434/api/chat -X POST -H 'Content-Type: application/json' -d '{ \"model\": \"llama3.2\", \"stream\": false, \"messages\": [ { \"role\": \"user\", \"content\": \"LLMとは何ですか?\" } ] }'
サーバは、サービスとして起動した場合はツールバーメニューから停止できます。直接起動した場合は、ターミナル上で Ctrl + C で終了できます。
Ollama の使い方
モデルのダウンロードのみ、または更新は以下で行います。
ollama pull llama3.2
ダウンロード済みのローカルのモデル一覧は以下で確認できます。
ollama list
不要なモデルは以下で削除できます。
ollama rm llama3.2
日本語でやり取りする場合は、日本語追加事前学習および事後学習が行われた Llama-3-ELYZA-JP
などを利用すると良いでしょう。
Ollama の公式モジュールにはありませんが、ELYZAから量子化済みの GGUF ファイルが公開されているため、以下で利用可能です。
ollama run hf.co/elyza/Llama-3-ELYZA-JP-8B-GGUF
今話題の DeepSeek のモデルは Ollama の公式で公開されています。
以下のように実行することができます。
ollama run deepseek-r1:14b