はじめに

最近はChatGPTのようなクラウド上のLLMを使う機会が増えましたが、LLMは自分のPC上でも動かすことができます。

ローカルでLLMを動かすと、次のようなメリットがあります。

  • インターネット接続がなくても使える
  • 入力した内容を外部サービスへ送らずに済む
  • モデルやパラメータを自分で調整できる
  • APIサーバーとして使い、自作アプリから呼び出せる

そのために便利なのが Ollama です。

Ollamaは、ローカル環境でLLMを簡単に扱うためのツールです。
モデルのダウンロード、実行、API経由での利用、独自モデルの作成などを、かなり少ないコマンドで行えます。

この記事では、Ollamaを初めて触る人向けに、インストールからモデル実行、API利用、さらにGGUFモデルを使った独自モデル作成までを順番に説明します。


Ollamaとは

Ollamaは、LLMをローカルPCで動かすための実行環境です。

イメージとしては、Dockerがコンテナを扱うように、OllamaはLLMのモデルを扱います。

たとえば、モデルを取得する場合は次のようにします。

ollama pull gemma3:4b

実行する場合は次のようにします。

ollama run gemma3:4b

モデル名を指定するだけで、必要なファイルの取得や実行をOllamaが面倒を見てくれます。


Ollamaをインストールする

Ollamaは次のOSで利用できます。

  • Windows
  • macOS
  • Linux

まずは公式サイトからインストーラーをダウンロードします。

Ollama公式サイト

インストール後、ターミナルまたはPowerShellで次のコマンドを実行してみます。

ollama --version

バージョン情報が表示されれば準備完了です。

Windowsの場合は、インストール後にOllamaがバックグラウンドで起動していることがあります。
うまく動かない場合は、一度PCを再起動するか、Ollamaアプリを起動してから再度コマンドを試してください。


モデルをダウンロードする

Ollamaでは、モデルを次の形式で指定します。

モデル名:タグ

たとえば、Gemma 3の4Bモデルを使う場合は次のようになります。

gemma3:4b

4b は、おおよそ40億パラメータ規模のモデルであることを表しています。

モデルをダウンロードするには、次のコマンドを使います。

ollama pull gemma3:4b

初回はモデル本体をダウンロードするため、回線速度やモデルサイズによって時間がかかります。

モデル一覧はOllamaのライブラリページから確認できます。

Ollama Models


モデル名とタグについて

Ollamaのモデルにはタグがあります。

たとえば次のような形式です。

gemma3:4b qwen3:0.6b llama3.2:3b

タグを省略した場合、多くのモデルでは latest が使われます。

つまり、次のコマンドは、

ollama pull gemma3

実質的には次のような意味になります。

ollama pull gemma3:latest

ただし、latest は将来的に中身が変わる可能性があります。
再現性を重視する場合は、できるだけ明示的にタグを指定したほうが安心です。


モデルを実行する

モデルをダウンロードしたら、次のコマンドでチャットを開始できます。

ollama run gemma3:4b

実行すると、ターミナル上でプロンプト入力ができるようになります。

たとえば次のように入力できます。

日本語で、Ollamaとは何かを初心者向けに説明してください。

終了したい場合は、通常は次のように入力します。

/bye

または Ctrl + D で終了できる環境もあります。

もしまだダウンロードしていないモデルを ollama run した場合、Ollamaは自動的にモデルを取得してから起動します。


ローカルLLMをAPIとして使う

Ollamaの便利な点は、コマンドラインだけでなくAPIからも使えることです。

Ollamaには大きく分けて2種類のAPIがあります。

  • Ollama独自API
  • OpenAI API互換API

Ollama独自API

Ollama本来のAPIを使うと、チャット生成、通常のテキスト生成、モデル一覧取得などができます。

Ollamaが起動している状態で、通常は次のURLでAPIサーバーが動いています。

http://localhost:11434

たとえば、チャット形式で問い合わせる場合は次のようにできます。

curl http://localhost:11434/api/chat -d '{ "model": "gemma3:4b", "messages": [ { "role": "user", "content": "Ollamaについて短く説明してください" } ] }'

Windows PowerShellの場合、引用符の扱いが少し面倒なので、うまくいかない場合はPythonやJavaScriptのライブラリを使うほうが楽です。

Pythonから使う場合は、Ollama公式のPythonパッケージを使えます。

pip install ollama

簡単な例は次の通りです。

import ollama response = ollama.chat( model="gemma3:4b", messages=[ { "role": "user", "content": "ローカルLLMのメリットを3つ教えてください" } ] ) print(response["message"]["content"])