ollama について
Ollama での開発に役立つドキュメントとコード例をまとめたスキルです。ローカルモデルや API を使う開発者向けに、生成、埋め込み、画像処理、サーバー設定、クラウドモデルを扱います。
主な機能
- 01API によるチャットとテキスト生成
- 02テキスト埋め込みと構造化出力の作成
- 03ストリーミング応答とツール呼び出しの解説
- 04ビジョンモデルと OpenAI 互換 API の紹介
- 05クラウド認証とサーバー設定の案内
活用シーン
- 01Ollama API を使ったチャットアプリの構築
- 02セマンティック検索用の埋め込み生成
- 03プロキシやリモート接続の設定
- 04GPU 読み込みやモデル動作の問題調査
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ rawveg/ skillsforge-marketplace --skill ollamaインストール後、Claude Code で/ollamaを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
plugin.jsonreferences/index.mdllms-full.mdllms-txt.mdllms.md詳細
Ollama スキル
Ollama の開発を包括的に支援します。Ollama は、LLM をプログラムから実行し、対話するためのローカル AI モデルランタイムです。
このスキルを使用するタイミング
次のような場合に、このスキルを使用してください。
- Ollama でローカル AI モデルを実行する
- Ollama の API と連携するアプリケーションを構築する
- チャット補完、埋め込み、ストリーミング応答を実装する
- Ollama の認証またはクラウドモデルを設定する
- Ollama サーバーを設定する(環境変数、ポート、プロキシ)
- Ollama を OpenAI 互換ライブラリとともに使用する
- Ollama のインストールや GPU 互換性に関する問題を解決する
- ツール呼び出し、構造化出力、または画像認識機能を実装する
- Docker 内またはプロキシ経由で Ollama を使用する
- Ollama モデルを作成、コピー、プッシュ、または管理する
クイックリファレンス
1. 基本的なチャット補完(cURL)
シンプルなチャット応答を生成します。
curl http://localhost:11434/api/chat -d '{
"model": "gemma3",
"messages": [
{
"role": "user",
"content": "Why is the sky blue?"
}
]
}'
2. シンプルなテキスト生成(cURL)
プロンプトからテキスト応答を生成します。
curl http://localhost:11434/api/generate -d '{
"model": "gemma3",
"prompt": "Why is the sky blue?"
}'
3. OpenAI ライブラリを使った Python チャット
OpenAI Python ライブラリで Ollama を使用します。
from openai import OpenAI
client = OpenAI(
base_url='http://localhost:11434/v1/',
api_key='ollama', # required but ignored
)
chat_completion = client.chat.completions.create(
messages=[
{
'role': 'user',
'content': 'Say this is a test',
}
],
model='llama3.2',
)
4. 画像認識モデル(画像分析)
画像について質問します。
from openai import OpenAI
client = OpenAI(base_url="http://localhost:11434/v1/", api_key="ollama")
response = client.chat.completions.create(
model="llava",
messages=[
{
"role": "user",
"content": [
{"type": "text", "text": "What's in this image?"},
{
"type": "image_url",
"image_url": "data:image/png;base64,iVBORw0KG...",
},
],
}
],
max_tokens=300,
)
5. 埋め込みの生成
テキストのベクトル埋め込みを作成します。
client = OpenAI(base_url="http://localhost:11434/v1", api_key="ollama")
embeddings = client.embeddings.create(
model="all-minilm",
input=["why is the sky blue?", "why is the grass green?"],
)
6. 構造化出力(JSON Schema)
構造化された JSON 応答を取得します。
from pydantic import BaseModel
from openai import OpenAI
client = OpenAI(base_url="http://localhost:11434/v1", api_key="ollama")
class FriendInfo(BaseModel):
name: str
age: int
is_available: bool
class FriendList(BaseModel):
friends: list[FriendInfo]
completion = client.beta.chat.completions.parse(
temperature=0,
model="llama3.1:8b",
messages=[
{"role": "user", "content": "Return a list of friends in JSON format"}
],
response_format=FriendList,
)
friends_response = completion.choices[0].message
if friends_response.parsed:
print(friends_response.parsed)
7. JavaScript/TypeScript チャット
OpenAI JavaScript ライブラリで Ollama を使用します。
import OpenAI from "openai";
const openai = new OpenAI({
baseURL: "http://localhost:11434/v1/",
apiKey: "ollama", // required but ignored
});
const chatCompletion = await openai.chat.completions.create({
messages: [{ role: "user", content: "Say this is a test" }],
model: "llama3.2",
});
8. クラウドモデルの認証
クラウドモデルを使用するにはサインインします。
# Sign in from CLI
ollama signin
# Then use cloud models
ollama run gpt-oss:120b-cloud
または、API キーを使ってクラウドに直接アクセスします。
export OLLAMA_API_KEY=your_api_key
curl https://ollama.com/api/generate \
-H "Authorization: Bearer $OLLAMA_API_KEY" \
-d '{
"model": "gpt-oss:120b",
"prompt": "Why is the sky blue?",
"stream": false
}'
9. Ollama サーバーの設定
サーバー設定用の環境変数を指定します。
macOS:
# Set environment variable
launchctl setenv OLLAMA_HOST "0.0.0.0:11434"
# Restart Ollama application
Linux(systemd):
# Edit service
systemctl edit ollama.service
# Add under [Service]
Environment="OLLAMA_HOST=0.0.0.0:11434"
# Reload and restart
systemctl daemon-reload
systemctl restart ollama
Windows:
1. Quit Ollama from task bar
2. Search "environment variables" in Settings
3. Edit or create OLLAMA_HOST variable
4. Set value: 0.0.0.0:11434
5. Restart Ollama from Start menu
10. モデルの GPU 読み込み状況を確認する
モデルが GPU を使用しているか確認します。
ollama ps
出力の見方:
100% GPU- GPU に完全に読み込まれています100% CPU- システムメモリに完全に読み込まれています48%/52% CPU/GPU- CPU と GPU の両方に分散されています
主な概念
ベース URL
- ローカル API(デフォルト):
http://localhost:11434/api - クラウド API:
https://ollama.com/api - OpenAI 互換:OpenAI ライブラリ用の
/v1/エンドポイント
認証
- ローカル:
http://localhost:11434では認証は不要です - クラウドモデル:サインイン(
ollama signin)または API キーが必要です - API キー:
https://ollama.com/apiへのプログラムからのアクセスに使用します
モデル
- ローカルモデル:お使いのマシンで実行されます(例:
gemma3、llama3.2、qwen3) - クラウドモデル:接尾辞
-cloudが付きます(例:gpt-oss:120b-cloud、qwen3-coder:480b-cloud) - 画像認識モデル:画像入力に対応しています(例:
llava)
よく使われる環境変数
OLLAMA_HOST- バインドアドレスを変更します(デフォルト:127.0.0.1:11434)OLLAMA_CONTEXT_LENGTH- コンテキストウィンドウのサイズを指定します(デフォルト:2048トークン)OLLAMA_MODELS- モデルの保存ディレクトリOLLAMA_ORIGINS- CORS で追加の Web オリジンを許可しますHTTPS_PROXY- モデルのダウンロードに使用するプロキシサーバー
エラー処理
ステータスコード:
200- 成功400- 不正なリクエスト(無効なパラメーター)404- 見つかりません(モデルが存在しません)429- リクエストが多すぎます(レート制限)500- 内部サーバーエラー502- ゲートウェイエラー(クラウドモデルに到達できません)
エラー形式:
{
"error": "the model failed to generate a response"
}
ストリーミングと非ストリーミング
- ストリーミング(デフォルト):応答チャンクを JSON オブジェクト(NDJSON)として返します
- 非ストリーミング:
"stream": falseを設定すると、完全な応答を 1 つのオブジェクトで取得できます
リファレンスファイル
このスキルには、references/ に包括的なドキュメントが含まれています。
-
llms-txt.md - 以下を網羅した完全な API リファレンスです。
- すべての API エンドポイント(
/api/generate、/api/chat、/api/embedなど) - 認証方法(サインイン、API キー)
- エラー処理とステータスコード
- OpenAI 互換レイヤー
- クラウドモデルの使用方法
- ストリーミング応答
- 設定と環境変数
- すべての API エンドポイント(
-
llms.md - 以下の利用可能なトピックをまとめたドキュメントのインデックスです。
- API リファレンス(バージョン、モデルの詳細、チャット、生成、埋め込み)
- 機能(埋め込み、ストリーミング、構造化出力、ツール呼び出し、ビジョン)
- CLI リファレンス
- クラウド連携
- プラットフォーム別ガイド(Linux、macOS、Windows、Docker)
- IDE 連携(VS Code、JetBrains、Xcode、Zed、Cline)
次の情報が必要な場合は、リファレンスファイルを参照してください。
- API パラメーターの詳細な仕様
- エンドポイントの完全なドキュメント
- 高度な設定オプション
- プラットフォーム別のセットアップ手順
- 特定のツールとの連携ガイド
このスキルの使い方
初心者向け
よく使われる次のパターンから始めましょう。
- シンプルな生成:プロンプトを指定して
/api/generateエンドポイントを使用します - チャットインターフェース:メッセージ配列を指定して
/api/chatを使用します - OpenAI 互換性:
base_url='http://localhost:11434/v1/'を指定して OpenAI ライブラリを使用します - GPU 使用状況の確認:
ollama psを実行して、モデルが読み込まれていることを確認します
基礎的な概念については、llms-txt.md の「Introduction」と「Quickstart」のセクションをお読みください。
中級者向け
次の内容に取り組みましょう。
- 埋め込み:セマンティック検索や RAG アプリケーション向け
- 構造化出力:JSON スキーマによる検証
- ビジョンモデル:画像分析向け
- ストリーミング:リアルタイムの応答生成向け
- 認証:クラウドモデル向け
パラメーターオプションの詳細については、llms-txt.md で該当する API エンドポイントを確認してください。
上級者向け
次の内容を検討してください。
- ツール呼び出し:関数の実行向け
- カスタムモデルの作成:Modelfile を使用
- サーバー設定:環境変数を使用
- プロキシのセットアップ:ネットワークが制限された環境向け
- Docker へのデプロイ:カスタム設定を使用
- パフォーマンスの最適化:GPU 設定を使用
llms.md のプラットフォーム別セクションと、llms-txt.md の設定詳細を参照してください。
よくあるユースケース
チャットボットの構築:
/api/chatエンドポイントを使用します- アプリケーション内でメッセージ履歴を維持します
- UX を向上させるため、応答をストリーミングします
- エラーを適切に処理します
検索用の埋め込みの作成:
/api/embedエンドポイントを使用します- ベクトルデータベースに埋め込みを保存します
- 類似度検索を実行します
- RAG(検索拡張生成)を実装します
ファイアウォールの背後での実行:
HTTPS_PROXY環境変数を設定します- コンテナを使用する場合は、Docker でプロキシを設定します
- 証明書が信頼されていることを確認します
クラウドモデルの使用:
ollama signinを一度実行します-cloudサフィックスを付けてクラウドモデルをプルします- ローカルモデルと同じ API エンドポイントを使用します
トラブルシューティング
GPU でモデルが読み込まれない
確認事項:
ollama ps
解決策:
- ドキュメントで GPU の互換性を確認します
- CUDA/ROCm のインストール状況を確認します
- 利用可能な VRAM を確認します
- より小さいモデルのバリエーションを試します
Ollama にリモートからアクセスできない
問題: Ollama に localhost からしかアクセスできません
解決策:
# Set OLLAMA_HOST to bind to all interfaces
export OLLAMA_HOST="0.0.0.0:11434"
プラットフォーム別の手順については、llms-txt.md の「How do I configure Ollama server?」を参照してください。
プロキシの問題
問題: プロキシの背後からモデルをダウンロードできません
解決策:
# Set proxy (HTTPS only, not HTTP)
export HTTPS_PROXY=https://proxy.example.com
# Restart Ollama
llms-txt.md の「How do I use Ollama behind a proxy?」を参照してください。
ブラウザーでの CORS エラー
問題: ブラウザー拡張機能またはウェブアプリから Ollama にアクセスできません
解決策:
# Allow specific origins
export OLLAMA_ORIGINS="chrome-extension://*,moz-extension://*"
llms-txt.md の「How can I allow additional web origins?」を参照してください。
リソース
公式ドキュメント
- メインドキュメント:https://docs.ollama.com
- API リファレンス:https://docs.ollama.com/api
- モデルライブラリ:https://ollama.com/models
公式ライブラリ
- Python:https://github.com/ollama/ollama-python
- JavaScript:https://github.com/ollama/ollama-js
コミュニティ
- GitHub:https://github.com/ollama/ollama
- コミュニティライブラリ:一覧は GitHub の README をご覧ください
注意事項
- このスキルは、Ollama の公式ドキュメントから生成されました
- すべての例は、Ollama の API でテスト済みです
- コードサンプルには、シンタックスハイライト用の適切な言語判定が含まれています
- 参照ファイルは、機能するリンクを含め、公式ドキュメントの構成を維持しています
- OpenAI との互換性により、ほとんどの OpenAI コードは最小限の変更で動作します
クイックコマンドリファレンス
# CLI Commands
ollama signin # Sign in to ollama.com
ollama run gemma3 # Run a model interactively
ollama pull gemma3 # Download a model
ollama ps # List running models
ollama list # List installed models
# Check API Status
curl http://localhost:11434/api/version
# Environment Variables (Common)
export OLLAMA_HOST="0.0.0.0:11434"
export OLLAMA_CONTEXT_LENGTH=8192
export OLLAMA_ORIGINS="*"
export HTTPS_PROXY="https://proxy.example.com"