Ollama は、手元の PC でオープンなモデル(ローカル LLM)を動かすツールです。入れたあと ollama run モデル名 と打つと、モデルを取得して対話が始まります。 裏では 127.0.0.1:11434 で HTTP サーバーが動いていて、curl や Python から /api/chat や OpenAI 互換の /v1/chat/completions で呼べます。

ollama run gemma4                      # 取得して対話(/bye で終わる)
ollama run gemma4 "空はなぜ青い?"      # 1回だけ答えて終わる
curl http://localhost:11434/api/chat -d '{"model": "gemma4", "messages": [{"role": "user", "content": "こんにちは"}], "stream": false}'
やりたいこと コマンド・書き方
入れる(macOS・Linux) curl -fsSL https://ollama.com/install.sh を sh に渡す
入れる(Windows) irm https://ollama.com/install.ps1 を iex に渡す
モデルを取得して対話 ollama run gemma4
手元のモデル一覧 ollama ls(ollama list)
読み込み中のモデルと GPU の使い方 ollama ps
メモリから降ろす ollama stop gemma4
独自のモデルを作る ollama create 名前 -f Modelfile
Python から呼ぶ pip install ollama → ollama.chat(...)
OpenAI のライブラリで呼ぶ OpenAI(base_url="http://localhost:11434/v1/", api_key="ollama")

確認環境:Ollama v0.40.3(GitHub の v0.40.3 タグのソース)、Python ライブラリ ollama 0.6.3・openai 3.29.0、Python 3.11.15(Linux)。コマンドとフラグ、対話中のスラッシュコマンド、環境変数と既定値、API のパス、エラー文は v0.40.3 のソース(cmd/cmd.go・cmd/interactive.go・envconfig/config.go・server/routes.go)で確かめました。Python の ollama と openai が送る URL と JSON、受け取り方、例外は、Ollama の API の形を返す擬似サーバー(手元の小さな HTTP サーバー)に向けて確かめました。モデルを動かした速度やメモリ量は載せていません。メモリ・GPU・Docker・インストールは、リポジトリの docs と docs.ollama.com に基づきます(確認日 2026年10月12日)。

本記事の内容は、ご自由にお使いください。
ご利用の際は、出典として本ページへのリンクを記載いただけますようお願いします。

(記載例)出典:株式会社RJC「Ollamaの使い方|ローカルLLMのコマンド一覧とAPIの呼び方」

Ollama とは:何が動いているか

Ollama は「サーバー」と「CLI(コマンド)」の2つでできています。 ollama run などのコマンドは、裏で動くサーバー(ollama serve)に HTTP でお願いを送っているだけです。Python や curl から呼ぶときも、同じサーバーに送ります。

部分 役割
ollama serve モデルを読み込んで答えを作るサーバー。既定は 127.0.0.1:11434
ollama のコマンド サーバーに頼んで、取得・実行・一覧などをする
モデル ollama.com のライブラリから取得。保存先は ~/.ollama/models など
API 独自の /api/... と、OpenAI 互換の /v1/...、Anthropic 互換の /v1/messages

macOS・Windows のアプリや Linux のインストールスクリプトで入れると、サーバーは自動で起動します。Linux で手で入れたときは ollama serve で起動します。

モデル名は 名前:タグ の形です。タグを省くと latest になります(例:gemma4 は gemma4:latest)。使えるモデルは ollama.com のライブラリに並んでいます。本文の例は、公式ドキュメントの例に合わせて gemma4 で書いています。

コマンド早見表(v0.40.3)

ソースの cmd/cmd.go に定義されているコマンドです。

コマンド 意味 よく使うフラグ
ollama serve(start) サーバーを起動 環境変数で設定(後述)
ollama run MODEL [PROMPT] 対話、または1回だけ答える --verbose・--format json・--think・--keepalive 5m
ollama pull MODEL モデルを取得 --insecure
ollama ls(list) 手元のモデル一覧 なし
ollama ps メモリに載っているモデル なし
ollama stop MODEL メモリから降ろす なし
ollama show MODEL モデルの情報 --modelfile・--parameters・--template・--system・--license
ollama create MODEL Modelfile からモデルを作る -f Modelfile・-q(量子化)
ollama cp SOURCE DEST 別名でコピー なし
ollama rm MODEL... 削除(複数可) なし
ollama push MODEL ollama.com へあげる --insecure
ollama signin・signout ollama.com へのサインイン・サインアウト なし
ollama launch Claude Code・Codex・OpenCode などをOllamaのモデルで起動 --model・--config
ollama -v 版を表示 なし
  • ollama -v は、サーバーの版を ollama version is 0.40.3 の形で出します。サーバーにつながらないと Warning: could not connect to a running Ollama instance と、クライアントの版が出ます。
  • serve 以外のコマンドは、実行前にサーバーが動いているかを確かめます(ソースの checkServerHeartbeat)。
  • 環境変数の一覧は ollama serve --help で出ます。

よく使う形

ollama pull gemma4                         # 取得だけ
ollama run gemma4 --verbose                # 答えのあとに速度などの統計を出す
ollama run gemma4 "この画像は? ./screen.png"  # 画像に対応したモデルなら画像のパスを書ける
echo "要約して: $(cat README.md)" | ollama run gemma4   # 標準入力から渡す
ollama run gemma4 "" --keepalive 30m       # 先に読み込んでおく(30分保持)
ollama show gemma4 --modelfile             # そのモデルの Modelfile を見る
ollama ps                                  # GPU に載ったかを見る

対話中のスラッシュコマンド

ollama run の対話画面で /? と打つと出る一覧です(cmd/interactive.go)。

コマンド 意味
/set parameter num_ctx 8192 パラメータを変える(temperature・top_p・num_predict なども)
/set system <文> システムメッセージを決める
/set format json・/set noformat JSON モードの切り替え
/set verbose・/set quiet 統計の表示の切り替え
/set think・/set nothink 考える機能の切り替え
/show info・/show modelfile など モデルの情報
/save <名前>・/load <名前> 今の会話を保存する・読み込む
/clear 会話の文脈を消す
/bye 終わる(Ctrl+D でも終わる)

複数行を入れるときは """ で囲みます。

Modelfile:自分用のモデルを作る

Modelfile は、元のモデル・パラメータ・システムメッセージを書いた設定ファイルです。 ollama create で、名前の付いたモデルになります。

FROM gemma4
PARAMETER temperature 0.2
PARAMETER num_ctx 8192
SYSTEM """あなたは社内ヘルプデスクです。日本語で、100文字以内で答えます。"""
ollama create helpdesk -f Modelfile
ollama run helpdesk
命令 意味(ドキュメント)
FROM(必須) 元のモデル。既存のモデル名、GGUF ファイル、Safetensors のフォルダ
PARAMETER 実行時のパラメータ
TEMPLATE プロンプトの組み立て方(モデルごとに書式が違う)
SYSTEM システムメッセージ
MESSAGE あらかじめ入れておく会話の履歴
LICENSE・REQUIRES・CAPABILITY ライセンス・必要な Ollama の版・追加の機能
PARAMETER 意味
num_ctx コンテキストの長さ(モデルが一度に見られるトークン数)
temperature ランダムさ。表の既定は 0.8
num_predict 出力の上限。表の既定は -1(上限なし)
top_k・top_p・min_p 候補の絞り込み
repeat_penalty・repeat_last_n 繰り返しを抑える
seed 乱数の種。同じ値なら同じ答えになる
stop 止める文字。複数行で複数指定

OpenAI 互換 API にはコンテキストの長さを決める引数がありません。ドキュメントでは、PARAMETER num_ctx を書いた Modelfile でモデルを作る方法を案内しています。

REST API の呼び方(/api/generate・/api/chat)

/api/chat は会話(messages)、/api/generate は1つのプロンプトに答えます。 どちらも既定はストリーム(1行に1つの JSON が続く NDJSON 形式)です。まとめて1つの JSON で受けたいときは "stream": false を付けます。

curl http://localhost:11434/api/chat -d '{
  "model": "gemma4",
  "messages": [
    {"role": "system", "content": "簡潔に答えてください。"},
    {"role": "user", "content": "Ollamaとは?"}
  ],
  "stream": false,
  "options": {"temperature": 0.2, "num_ctx": 8192},
  "keep_alive": "10m"
}'
curl http://localhost:11434/api/generate -d '{
  "model": "gemma4",
  "prompt": "空はなぜ青い?",
  "stream": false
}'
項目 /api/generate /api/chat
入力 prompt(+system・suffix) messages(system・user・assistant・tool)
答え response message.content
画像 images(base64 のリスト) 各メッセージの images
ツール なし tools → message.tool_calls
会話の続き context は非推奨(deprecated) messages に履歴を積む

共通の引数です。

引数 意味
stream false で1つの JSON にまとめる(既定は true)
format "json"(JSON モード)か、JSON Schema(構造化出力)
options Modelfile の PARAMETER と同じ(temperature・num_ctx など)
keep_alive 答えたあとメモリに残す時間。既定 5m。0 ですぐ降ろす、負の数でずっと残す
think 考える機能。true/false か "low"・"medium"・"high"・"max"

最後の JSON(done: true)には統計が入ります。時間はナノ秒です。

フィールド 意味
total_duration 全体の時間
load_duration モデルの読み込み時間
prompt_eval_count 入力のトークン数
eval_count・eval_duration 出力のトークン数と時間
done_reason 止まった理由(stop など)

ドキュメントでは、出力の速さ(トークン/秒)を eval_count / eval_duration * 10^9 で出せるとしています。

ほかの API です(server/routes.go で確認)。

メソッドとパス 中身
GET / Ollama is running を返す(起動の確認)
GET /api/version 版
GET /api/tags 手元のモデル一覧(ollama ls)
GET /api/ps 読み込み中のモデル(ollama ps)
POST /api/pull・/api/create・/api/copy・/api/show 取得・作成・コピー・情報
DELETE /api/delete 削除
POST /api/embed 埋め込み(ベクトル)
POST /v1/chat/completions・/v1/completions・/v1/embeddings・/v1/responses OpenAI 互換
GET /v1/models OpenAI 互換のモデル一覧
POST /v1/messages Anthropic 互換

Python から呼ぶ(ライブラリ ollama)

pip install ollama
from ollama import chat

response = chat(
    model="gemma4",
    messages=[{"role": "user", "content": "こんにちは"}],
)
print(response.message.content)       # response["message"]["content"] でも取れる
print(response.eval_count / response.eval_duration * 1e9, "tokens/s")

Python ライブラリの chat() は、既定で "stream": false を付けて送ります。 REST API の既定(ストリーム)とは逆です。擬似サーバーで受けた JSON です。

POST /api/chat
{"model":"gemma4","stream":false,"messages":[{"role":"user","content":"こんにちは"}],"tools":[]}

ストリーム

from ollama import chat

for part in chat(model="gemma4", messages=[{"role": "user", "content": "Ollamaを説明して"}], stream=True):
    print(part.message.content, end="", flush=True)
print()

2つに分けて返したとき、受け取った断片は次の3つでした。最後は中身が空で done=True です。

'Ollamaは'                         False
'ローカルでLLMを動かすツールです。'   False
''                                 True

generate とオプション

from ollama import generate

r = generate(
    model="gemma4",
    prompt="空はなぜ青い?",
    system="簡潔に",
    options={"temperature": 0.2, "num_ctx": 8192},
    keep_alive="10m",
)
print(r.response)
POST /api/generate
{"model":"gemma4","stream":false,"options":{"temperature":0.2,"num_ctx":8192},"keep_alive":"10m","prompt":"空はなぜ青い?","system":"簡潔に"}

構造化出力(Pydantic)

format に JSON Schema を渡すと、その形の JSON で答えます。Pydantic のクラスなら model_json_schema() を渡し、model_validate_json() で読みます。

from ollama import chat
from pydantic import BaseModel

class CalendarEvent(BaseModel):
    name: str
    date: str
    participants: list[str]

r = chat(
    model="gemma4",
    messages=[{"role": "user", "content": "金曜に佐藤さんと鈴木さんと定例会議"}],
    format=CalendarEvent.model_json_schema(),
    options={"temperature": 0},
)
event = CalendarEvent.model_validate_json(r.message.content)
print(event)

スキーマは "format":{"properties":{...},"required":["name","date","participants"],...} の形で送られていました。方式ごとの違いは、関連記事「LLMの構造化出力とJSON|4方式の違いとPydantic検証の実行結果」で扱っています。

ツール(関数呼び出し)

Python の関数をそのまま tools に渡すと、型ヒントと docstring から定義を作って送ります。モデルが呼びたい関数は message.tool_calls に入ります。実行するのは自分のコードです。

from ollama import chat

def get_weather(city: str) -> str:
    """都市名を受け取り、今日の天気を返す

    Args:
      city: 都市名
    """
    return "晴れ"   # 本当は天気APIを呼ぶ

FUNCS = {"get_weather": get_weather}
messages = [{"role": "user", "content": "東京の天気は?"}]
r = chat(model="gemma4", messages=messages, tools=[get_weather])

if r.message.tool_calls:
    messages.append(r.message)
    for tc in r.message.tool_calls:
        result = FUNCS[tc.function.name](**tc.function.arguments)   # arguments は dict
        messages.append({"role": "tool", "content": str(result), "tool_name": tc.function.name})
    r = chat(model="gemma4", messages=messages, tools=[get_weather])
print(r.message.content)

関数から作られた定義と、2回目に送られた履歴です。

"tools":[{"type":"function","function":{"name":"get_weather","description":"都市名を受け取り、今日の天気を返す","parameters":{"type":"object","required":["city"],"properties":{"city":{"type":"string","description":"都市名"}}}}}]

"messages":[{"role":"user","content":"東京の天気は?"},
 {"role":"assistant","tool_calls":[{"function":{"name":"get_weather","arguments":{"city":"東京"}}}]},
 {"role":"tool","content":"晴れ","tool_name":"get_weather"}]

ツールに対応したモデルは、ollama.com で絞り込めます。仕組みの全体は、関連記事「Function Calling(tool use)の仕組みとPython実装」で扱っています。

画像

r = chat(model="gemma4", messages=[{
    "role": "user", "content": "この画像は?", "images": ["./screen.png"],
}])

ファイルのパスを渡すと、ライブラリが読み込んで base64 に変えて送っていました("images":["iVBORw0KGgo..."])。画像に対応したモデルが必要です。

別のホストにつなぐ

from ollama import Client

client = Client(host="http://192.168.1.10:11434")
r = client.chat(model="gemma4", messages=[{"role": "user", "content": "こんにちは"}])

host を省くと環境変数 OLLAMA_HOST を読み、それも無ければ http://127.0.0.1:11434 です。非同期は AsyncClient を使います。

OpenAI 互換 API で呼ぶ(ライブラリ openai)

OpenAI のライブラリの base_url を http://localhost:11434/v1/ にすると、そのまま Ollama を呼べます。 API キーは必須の引数ですが、Ollama は中身を見ません。

from openai import OpenAI

client = OpenAI(base_url="http://localhost:11434/v1/", api_key="ollama")
response = client.chat.completions.create(
    model="gemma4",
    messages=[{"role": "user", "content": "こんにちは"}],
)
print(response.choices[0].message.content)
POST /v1/chat/completions
{"model":"gemma4","messages":[{"role":"user","content":"こんにちは"}]}
比べる点 ライブラリ ollama(/api/chat) ライブラリ openai(/v1/...)
向く場面 Ollama だけで使う 既存の OpenAI 向けコードを流用、切り替えたい
num_ctx など options で渡せる 引数が無い。Modelfile で作ったモデルを使う
keep_alive 渡せる 無い
応答の形 message.content choices[0].message.content
Responses API なし /v1/responses に対応。previous_response_id は非対応
無いモデルを指定 ResponseError(404) NotFoundError(404)

gpt-3.5-turbo のような OpenAI のモデル名を前提にしたツールには、ドキュメントでは ollama cp gemma4 gpt-3.5-turbo のように別名を付ける方法が紹介されています。OpenAI の SDK の書き方は、関連記事「OpenAI API Python入門|Responses APIのコピペ集」で扱っています。

環境変数(ollama serve --help に出るもの)

サーバーの設定は、ほぼすべて環境変数で決めます。 v0.40.3 のソース(envconfig/config.go)の説明と既定値です。

環境変数 意味 既定
OLLAMA_HOST サーバーが待ち受けるアドレス・ポート(CLI の接続先にもなる) 127.0.0.1:11434
OLLAMA_MODELS モデルの保存先 ~/.ollama/models
OLLAMA_KEEP_ALIVE モデルをメモリに残す時間 5m
OLLAMA_CONTEXT_LENGTH 既定のコンテキスト長 VRAM に応じて 4k/32k/256k
OLLAMA_NUM_PARALLEL 1モデルあたりの同時処理数 1
OLLAMA_MAX_LOADED_MODELS 同時に載せるモデル数 0(自動。FAQ では GPU 数×3、CPU は 3)
OLLAMA_MAX_QUEUE 待たせるリクエストの上限 512
OLLAMA_ORIGINS 許可するオリジン(ブラウザからの呼び出し) 127.0.0.1・0.0.0.0 など
OLLAMA_FLASH_ATTENTION Flash Attention を使う 対応環境では自動
OLLAMA_KV_CACHE_TYPE KV キャッシュの量子化(f16・q8_0・q4_0) f16
OLLAMA_DEBUG 詳しいログ(OLLAMA_DEBUG=1) オフ
OLLAMA_NO_CLOUD クラウドの機能(クラウドのモデル・Web 検索)を止める オフ
CUDA_VISIBLE_DEVICES 使う NVIDIA の GPU すべて
HTTPS_PROXY モデル取得に使うプロキシ なし

OS ごとの設定方法(FAQ)

# Linux(systemd のサービス)
sudo systemctl edit ollama.service
#   [Service]
#   Environment="OLLAMA_HOST=0.0.0.0:11434"
sudo systemctl daemon-reload
sudo systemctl restart ollama

# macOS(アプリ)
launchctl setenv OLLAMA_HOST "0.0.0.0:11434"   # そのあとアプリを再起動

# 手で起動するとき
OLLAMA_HOST=0.0.0.0:11434 OLLAMA_KEEP_ALIVE=30m ollama serve

Windows は、アプリを終了してから「環境変数を編集」でユーザーの環境変数を作り、アプリを起動し直します。

OLLAMA_HOST=0.0.0.0 にすると、同じネットワークのほかの PC から呼べるようになります。 既定の設定では API キーなしで呼べる(OpenAI 互換のドキュメントでも「キーの値は無視される」とある)ので、外に開くときはファイアウォールや、認証つきのリバースプロキシ(nginx など)を前に置く形が安全です。nginx の書き方は、関連記事「nginx location書き方|優先順位とtry_filesをcurlで検証」で扱っています。

FAQ では、HTTP_PROXY を設定するとクライアントからサーバーへの接続を妨げることがあるので避け、HTTPS_PROXY を使うよう書かれています。

メモリ・GPU の目安(ドキュメントの記載)

モデルが GPU に全部載ったかどうかで、速さが大きく変わります。 ollama ps の PROCESSOR 列で確かめます。

NAME             ID              SIZE      PROCESSOR    CONTEXT    UNTIL
gemma4:latest    c6eb396dbd59    9.6 GB    100% GPU     131072     2 minutes from now
PROCESSOR の表示 意味
100% GPU 全部 GPU のメモリ(VRAM)に載った
100% CPU 全部メインメモリ。GPU を使っていない
48%/52% CPU/GPU 一部だけ GPU。遅くなりやすい

コンテキスト長の既定は、VRAM の量で変わります(コンテキスト長のページ)。

VRAM 既定のコンテキスト長
24GiB 未満 4k
24〜48GiB 32k
48GiB 以上 256k
  • ドキュメントでは、Web 検索・エージェント・コーディングツールのように長い文脈を使う用途は、少なくとも 64000 トークンにするよう勧めています。コンテキストを長くするほど、必要なメモリが増えます。
  • OLLAMA_NUM_PARALLEL を上げると、必要なメモリは OLLAMA_NUM_PARALLEL × コンテキスト長 に比例して増えます(FAQ)。
  • KV キャッシュ(会話の文脈を覚えておくメモリ)は、OLLAMA_KV_CACHE_TYPE=q8_0 で f16 の約1/2、q4_0 で約1/4 になります(FAQ。品質への影響はモデルによる)。
  • 対応 GPU:NVIDIA は compute capability 5.0 以上・ドライバ 550 以上(5.0〜6.2 は 570 以上)。AMD は Linux で ROCm v7 のドライバ。Vulkan でも使えます。Apple の GPU は Metal で使えます。
  • ディスク:Windows のページでは、本体に 4GB 以上、モデルは「数十〜数百 GB」になりうるとしています。保存先は OLLAMA_MODELS で変えられます。

FAQ の「既定のコンテキストは 4096」や Modelfile の表の「num_ctx の既定 2048」は、ページによって書かれた時期が違う値です。今の既定はコンテキスト長のページとソースの説明(VRAM に応じて 4k/32k/256k)に合わせて読むのが確実で、実際の値は ollama ps の CONTEXT 列で確かめられます。

Docker で起動する

公式のイメージは Docker Hub の ollama/ollama です。モデルはボリューム ollama に保存されます。

# CPU だけ
docker run -d -v ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama

# NVIDIA の GPU(NVIDIA Container Toolkit を先に入れる)
docker run -d --gpus=all -v ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama

# AMD の GPU(ROCm)
docker run -d --device /dev/kfd --device /dev/dri -v ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama:rocm

# コンテナの中でモデルを動かす
docker exec -it ollama ollama run gemma4

Compose で書くと次の形です(GPU の指定は Docker Compose の deploy.resources の書き方)。

services:
  ollama:
    image: ollama/ollama
    ports:
      - "11434:11434"
    volumes:
      - ollama:/root/.ollama
    environment:
      - OLLAMA_KEEP_ALIVE=30m
    deploy:
      resources:
        reservations:
          devices:
            - driver: nvidia
              count: all
              capabilities: [gpu]
volumes:
  ollama:
  • FAQ では、macOS の Docker Desktop は GPU を渡せないため、GPU は使えないとしています。Mac ではアプリで入れるほうが GPU を使えます。
  • 別のコンテナ(アプリ)から呼ぶときの接続先は http://ollama:11434(サービス名)です。localhost はそのコンテナ自身を指します。
  • ログは docker logs ollama で見ます。

Compose の書き方は、関連記事「Docker Composeの使い方|compose.yamlの書き方と開発環境の作り方」で扱っています。

よくあるエラー

エラー文(抜粋) 原因 直し方
could not connect to ollama server, run 'ollama serve' to start it サーバーが動いていない アプリを起動するか ollama serve。Linux は systemctl status ollama
Failed to connect to Ollama. Please check that Ollama is downloaded, running and accessible.(Python の ConnectionError) 接続先にサーバーがいない OLLAMA_HOST・Client(host=...)・ポートを確かめる
model 'xxx' not found(HTTP 404) そのモデルを取得していない、名前・タグの打ち間違い ollama pull。ollama ls で名前を確かめる
pull model manifest: file does not exist ライブラリに無い名前・タグを取得しようとした ollama.com で正しい名前・タグを調べる
"xxx" does not support chat/does not support generate 埋め込み用など、その使い方に対応しないモデル 用途に合うモデルにする
server busy, please try again. maximum pending requests exceeded(503) 待ちのリクエストが OLLAMA_MAX_QUEUE を超えた 同時に送る数を減らす。上限を上げる
listen tcp 127.0.0.1:11434: bind: address already in use(Go の標準のエラー文) 11434 番をほかが使っている(すでに Ollama が動いている場合も多い) 動いている Ollama を使う。OLLAMA_HOST でポートを変える
ollama ps が 100% CPU GPU が見つからない、VRAM が足りない ドライバを確かめる。小さいモデル・短いコンテキストにする

エラーは {"error": "..."} の JSON で返ります。ストリームの途中で起きたときは、ステータスコードは 200 のまま、最後の行に {"error": "..."} が来ます(ドキュメントの Errors のページ)。ストリームを読むコードでは、各行の error も確かめます。

Python では次のように分けて受けられます。擬似サーバーで 404 を返したとき、ResponseError 404 model 'nope-model' not found と取れました。

import ollama

try:
    r = ollama.chat(model="gemma4", messages=[{"role": "user", "content": "こんにちは"}])
except ollama.ResponseError as e:
    print(e.status_code, e.error)      # 404 model 'gemma4' not found など
    if e.status_code == 404:
        ollama.pull("gemma4")
except ConnectionError as e:
    print("Ollama が起動していない:", e)

ログの場所は、Mac は ~/.ollama/logs/server.log、Linux(systemd)は journalctl -u ollama、Docker は docker logs <コンテナ名> です(トラブルシューティングのページ)。

よくある質問

Q. 社外にデータは送られますか。 A. FAQ では「ローカルで動かすとき、プロンプトやデータは見えない」としています。ollama.com のクラウドのモデルを使うときは処理のために送られます。クラウドの機能を止めるなら OLLAMA_NO_CLOUD=1 か ~/.ollama/server.json の "disable_ollama_cloud": true です。

Q. RAG に使えますか。 A. /api/embed(Python は ollama.embed())で埋め込みを作れるので、検索と組み合わせられます。作り方は関連記事「RAGの作り方|Pythonで動かす最小構成と精度の上げ方」で扱っています。

Q. モデルをすぐメモリから降ろしたいです。 A. ollama stop モデル名、または API で "keep_alive": 0 を送ります。

Q. クラウドの API(OpenAI・Gemini)と書き方をそろえたいです。 A. OpenAI 互換 API を使うと、base_url だけで切り替えられます。Gemini の書き方は、関連記事「Gemini API Python入門|google-genaiのコピペ集」で扱っています。Claude は、関連記事「Claude API Python入門|Anthropic SDKコピペレシピ集」で扱っています。

まとめ

  • ollama run モデル名 で取得と対話。裏のサーバーは 127.0.0.1:11434
  • よく使うのは pull・ls・ps・stop・show・create・rm。GPU に載ったかは ollama ps の PROCESSOR
  • 独自の設定は Modelfile(FROM・PARAMETER・SYSTEM)→ ollama create
  • REST API は /api/chat・/api/generate。既定はストリームで、まとめて受けるなら "stream": false
  • Python の ollama.chat() は既定で stream: false。ストリームは stream=True
  • OpenAI のライブラリは base_url="http://localhost:11434/v1/"。num_ctx は Modelfile で決める
  • 設定は環境変数(OLLAMA_HOST・OLLAMA_MODELS・OLLAMA_KEEP_ALIVE・OLLAMA_CONTEXT_LENGTH)。外に開くときは認証つきのプロキシを前に

参考・出典

確認日はいずれも 2026年10月12日です。

  • GitHub「ollama/ollama」(v0.40.3 のソースと docs):https://github.com/ollama/ollama
  • Ollama ドキュメント「CLI Reference」:https://docs.ollama.com/cli
  • Ollama ドキュメント「API」(Introduction・Errors):https://docs.ollama.com/api
  • Ollama ドキュメント「OpenAI compatibility」:https://docs.ollama.com/api/openai-compatibility
  • Ollama ドキュメント「Modelfile Reference」:https://docs.ollama.com/modelfile
  • Ollama ドキュメント「FAQ」:https://docs.ollama.com/faq
  • Ollama ドキュメント「Context length」:https://docs.ollama.com/context-length
  • Ollama ドキュメント「Hardware support」:https://docs.ollama.com/gpu
  • Ollama ドキュメント「Docker」:https://docs.ollama.com/docker
  • Ollama ドキュメント「Linux」:https://docs.ollama.com/linux
  • Ollama ドキュメント「Troubleshooting」:https://docs.ollama.com/troubleshooting
  • GitHub「ollama/ollama-python」:https://github.com/ollama/ollama-python
  • PyPI「ollama」:https://pypi.org/project/ollama/

本記事の内容は、ご自由にお使いください。
ご利用の際は、出典として本ページへのリンクを記載いただけますようお願いします。

(記載例)出典:株式会社RJC「Ollamaの使い方|ローカルLLMのコマンド一覧とAPIの呼び方」

株式会社RJC ― SI事業・SES事業・AI駆動開発。RJCは一緒に成長を楽しめる会社です。

WE ARE HIRING

RJCで一緒に開発しながら、
成長を楽しみませんか?

RJCは、Web・モバイル・AIを活用した開発プロジェクトで、テックリードやPM・PMOも活躍するシステム開発会社です。会社を知る、待遇を確かめる、話を聞いてみる。気になるところ見てみてください!

  • 127日年間休日
  • 12時間平均残業時間
  • 毎日ガチャ遊びココロも大切にする福利厚生。アマギフなどの賞品ラインナップ!

ほかにも、チケットレストラン、書籍読み放題、2年ごとの慰労報奨(休暇 or 金一封)、11期連続の黒字決算。

ABOUT RJC RJCがどんな会社か知る 考え方、研修、働き方、福利厚生、社員の前職まで。RJCのことが丸わかり! RJC丸わかりページへ JOB DESCRIPTION 仕事内容・待遇を見てみる 仕事内容、給与・待遇、選考の流れ。経験者も未経験も!応募前に知りたいこと、まとめました! 募集要項を見る ENTRY エントリーする エントリーは1〜2分・履歴書不要です。まずは話を聞いてみたい、という方でも歓迎です! エントリーフォームへ

RJCで一緒に開発しながら、 成長を楽しみませんか?