Skip to content

Ollamaは、Claude Codeなどの既存アプリケーションをOllamaに接続できるように、Anthropic Messages APIとの互換性を提供します。

使用方法

環境変数

Anthropic API(Claude Codeなど)を想定したツールでOllamaを使用するには、以下の環境変数を設定してください:

shell
export ANTHROPIC_AUTH_TOKEN=ollama  # 必須だが無視される
export ANTHROPIC_BASE_URL=http://localhost:11434

シンプルな /v1/messages の例

ストリーミングの例

ツール呼び出しの例

Claude Codeでの使用

Claude Codeは、バックエンドとしてOllamaを使用するように設定できます。

推奨モデル

コーディングのユースケースでは、glm-4.7minimax-m2.1qwen3-coderなどのモデルが推奨されます。

使用前にモデルをダウンロードしてください:

shell
ollama pull qwen3-coder

注:Qwen 3 coderは300億パラメータのモデルで、スムーズに実行するには少なくとも24GBのVRAMが必要です。より長いコンテキスト長を使用する場合は、それ以上のVRAMが必要です。

shell
ollama pull glm-4.7:cloud

クイックセットアップ

shell
ollama launch claude

このコマンドを実行すると、モデルの選択、Claude Codeの自動設定、および起動を求められます。起動せずに設定だけ行うには:

shell
ollama launch claude --config

手動セットアップ

環境変数を設定してClaude Codeを実行します:

shell
ANTHROPIC_AUTH_TOKEN=ollama ANTHROPIC_BASE_URL=http://localhost:11434 claude --model qwen3-coder

または、シェルのプロファイルで環境変数を設定します:

shell
export ANTHROPIC_AUTH_TOKEN=ollama
export ANTHROPIC_BASE_URL=http://localhost:11434

その後、任意のOllamaモデルでClaude Codeを実行できます:

shell
claude --model qwen3-coder

エンドポイント

/v1/messages

サポートされている機能

  • [x] メッセージ
  • [x] ストリーミング
  • [x] システムプロンプト
  • [x] マルチターンの会話
  • [x] ビジョン(画像)
  • [x] ツール(関数呼び出し)
  • [x] ツール結果
  • [x] Thinking/拡張Thinking

サポートされているリクエストフィールド

  • [x] model
  • [x] max_tokens
  • [x] messages
    • [x] テキスト content
    • [x] 画像 content(base64)
    • [x] コンテンツブロックの配列
    • [x] tool_use ブロック
    • [x] tool_result ブロック
    • [x] thinking ブロック
  • [x] system(文字列または配列)
  • [x] stream
  • [x] temperature
  • [x] top_p
  • [x] top_k
  • [x] stop_sequences
  • [x] tools
  • [x] thinking
  • [ ] tool_choice
  • [ ] metadata

サポートされているレスポンスフィールド

  • [x] id
  • [x] type
  • [x] role
  • [x] model
  • [x] content(テキスト、tool_use、thinkingブロック)
  • [x] stop_reason(end_turn、max_tokens、tool_use)
  • [x] usage(input_tokens、output_tokens)

ストリーミングイベント

  • [x] message_start
  • [x] content_block_start
  • [x] content_block_delta(text_delta、input_json_delta、thinking_delta)
  • [x] content_block_stop
  • [x] message_delta
  • [x] message_stop
  • [x] ping
  • [x] error

モデル

Ollamaはローカルモデルとクラウドモデルの両方をサポートしています。

ローカルモデル

使用前にローカルモデルをプルしてください:

shell
ollama pull qwen3-coder

推奨ローカルモデル:

  • qwen3-coder - コーディングタスクに最適
  • gpt-oss:20b - 強力な汎用モデル

クラウドモデル

クラウドモデルはプルすることなくすぐに使用できます:

  • glm-4.7:cloud - 高性能クラウドモデル
  • minimax-m2.1:cloud - 高速クラウドモデル

デフォルトのモデル名

claude-3-5-sonnetなど、デフォルトのAnthropicモデル名に依存するツールの場合は、ollama cpを使用して既存のモデル名をコピーしてください:

shell
ollama cp qwen3-coder claude-3-5-sonnet

その後、この新しいモデル名をmodelフィールドで指定できます:

shell
curl http://localhost:11434/v1/messages \
    -H "Content-Type: application/json" \
    -d '{
        "model": "claude-3-5-sonnet",
        "max_tokens": 1024,
        "messages": [
            {
                "role": "user",
                "content": "Hello!"
            }
        ]
    }'

Anthropic APIとの違い

動作の違い

  • APIキーは受け付けられるが検証されない
  • anthropic-versionヘッダーは受け付けられるが使用されない
  • トークン数は基盤となるモデルのトークナイザーに基づく概算値

サポートされていない機能

以下のAnthropic API機能は現在サポートされていません:

機能説明
/v1/messages/count_tokensトークン数カウントエンドポイント
tool_choice特定のツール使用の強制またはツールの無効化
metadataリクエストメタデータ(user_id)
プロンプトキャッシュキャッシュプレフィックスのためのcache_controlブロック
バッチAPI非同期バッチ処理のための/v1/messages/batches
引用citationsコンテンツブロック
PDFサポートPDFファイルを含むdocumentコンテンツブロック
サーバー送信エラーストリーミング中のerrorイベント(エラーはHTTPステータスで返される)

部分的にサポートされている機能

機能ステータス
画像コンテンツBase64画像はサポート;URL画像はサポートされていない
拡張Thinking基本サポート;budget_tokensは受け付けられるが強制されない