> For the complete documentation index, see [llms.txt](https://unsloth.ai/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://unsloth.ai/docs/jp/ji-ben/api.md).

# Unsloth を API エンドポイントとして使う方法

実行できます **ローカルLLM** 次のようなツールとともに [Claude Code](/docs/jp/ji-ben/claude-code.md) と [Codex](/docs/jp/ji-ben/codex.md) それらのツールをUnslothの **OpenAI互換APIエンドポイント**。これにより、次のようなモデルを [Qwen](/docs/jp/moderu/qwen3.6.md) と [Gemma](/docs/jp/moderu/gemma-4.md) ローカルで動かしてエージェント的コーディングに使えます。Unslothには、自己修復型の **ツール呼び出し**, **コード実行**、そして **Web検索**.

Unslothを使えば、次の機能を備えた高速API推論エンドポイントを簡単にデプロイできます:

* [**自己修復ツール呼び出し**](/docs/jp/shii/studio/chat.md#auto-healing-tool-calling)により、壊れた、または不正なツール呼び出しを 50% 削減できます
* [**コード実行**](/docs/jp/shii/studio/chat.md#code-execution) サポート。より正確なコード出力のために Bash と Python の実行を許可します。
* **高度な** [**Web 検索**](/docs/jp/shii/studio/chat.md#advanced-web-search) で、ページを実際に訪問して読み込み、詳細な情報を収集します。
* [**自動推論** 設定](/docs/jp/shii/studio/chat.md#auto-parameter-tuning) GGUF モデル用（temp、top-k など）

{% columns %}
{% column %}
Unslothで読み込まれたモデル（GGUFを含む）は、 **認証付きAPI** 経由で `llama-server`で公開されます。OpenAIと同様に、セキュリティ上の理由から長いAPIキーが生成されます。

あなたの **ローカルモデル** は、お好みのAIエージェント、SDK、またはチャットクライアントで直接使用できます。Unslothは同じポートで2つの形式に対応しています。どちらもストリーミング、ツール呼び出し（OpenAI `のツール`  / Anthropic `のツール`）、および視覚入力をサポートします:
{% endcolumn %}

{% column %}

<figure><img src="/files/cd14dc2e77f7e3bc0f971559d5a82c3f4a5dd4ea" alt=""><figcaption></figcaption></figure>
{% endcolumn %}
{% endcolumns %}

モデルがUnslothの推論で動作していても、独自のリモートOpenAI互換エンドポイントで動作していても、Web検索、コード実行、深いリサーチなどを含むUnslothのすべてのツールを利用できるようにできます。

* **Anthropic互換 `/v1/messages`**  Claude Code、OpenClaw、Anthropic SDK、そしてMessages APIを想定するあらゆるクライアント向け。
* **OpenAI互換 `/v1/chat/completions`** と **`/v1/responses`** OpenAI SDK、OpenCode、Cursor、Continue、Cline、Open WebUI、SillyTavern、そして任意のOpenAI互換ツール向け。

### ⚡ クイックスタート

{% stepper %}
{% step %}

#### Unslothをダウンロード

始める最も簡単な方法は、次のものをインストールすることです [Unsloth Desktop](/docs/jp/desktop.md) アプリです。対応環境は [macOS](/docs/jp/meru/install/mac.md)、Linux、 [Windows](/docs/jp/meru/install/windows-installation.md), [NVIDIA](/docs/jp/meru/install/pip-install.md), [AMD](/docs/jp/meru/install/amd.md)、Intel、およびCPU構成です。

<a href="https://unsloth.ai/download" class="button primary" data-icon="down-to-bracket">Unslothをダウンロード</a>

* <i class="fa-apple">:apple:</i> [macOS版をダウンロード](https://unsloth.ai/download/mac)
* <i class="fa-windows">:windows:</i> [Windows版をダウンロード](https://unsloth.ai/download/windows)
* <i class="fa-linux">:linux:</i> [Linux版をダウンロード](https://unsloth.ai/download/linux)

あるいは、手動インストールを希望する場合:

**macOS、Linux、WSL:**

```bash
curl -fsSL https://unsloth.ai/install.sh | sh
```

**Windows PowerShell:**

```bash
irm https://unsloth.ai/install.ps1 | iex
```

{% endstep %}

{% step %}

#### インストール

1. Unslothインストーラを開き（`.dmg`, `.exe` ファイル）
2. MacではUnslothをアプリケーションにドラッグし、Windowsではセットアップを完了してください。
3. アプリを起動し、インストール完了を待ちます
   {% endstep %}

{% step %}

#### モデルを選択

上部の『モデルを選択』ドロップダウンまたは『Model hub』タブを開き、デバイスに合ったモデルと量子化を選んでダウンロードします。完了したら、すぐにチャットを開始できます。セットアップは不要です。

<figure><img src="/files/158354856e78d615be54ae9d6435c9ce561b7d4e" alt="" width="563"><figcaption></figcaption></figure>
{% endstep %}

{% step %}

#### Unslothの準備が整いました

チャットを始めるには、メッセージを入力してEnterを押します。

* **APIキーを作成します。** 左下のあなたの **Unsloth** のアバターをクリック → **設定** → **API** → キー名を入力 → **作成**。次に `sk-unsloth-…` と表示される値をコピーしてください。Unslothでは一度しか表示されません。
* **クライアントをUnslothに向けます。** 次を使用: `http://localhost:PORT` をベースURLにし、認証にはあなたの `sk-unsloth-…` キーを使います。以下のツールの手順へ進んでください。

<figure><img src="/files/e80de67ed3ea23603ff90d3a5750d20c31d2e56d" alt="" width="563"><figcaption></figcaption></figure>
{% endstep %}
{% endstepper %}

### 🔑 APIキーの作成

1. サイドバーを開き、左下のあなたの **Unsloth** アバターをクリックします。
2. 移動します **設定** → **API** （地球儀 :globe\_with\_meridians: アイコン）。
3. 覚えやすい名前を入力します（例: `claude-code-macbook`）。有効期限を設定します（任意）
4. クリックして **作成**.
5. **キーをコピーします。** Unslothはハッシュのみを保存するため、再表示はできません。

<div data-with-frame="true"><figure><img src="/files/1b282bea666795966ec3dcfb59cb09fc131a972d" alt="" width="563"><figcaption></figcaption></figure></div>

すべてのキーは次の `sk-unsloth-` プレフィックスで始まります。キーは同じページからいつでも失効できます。失効したキーで行われたリクエストは次で失敗します `401 Unauthorized`.

{% hint style="warning" %}
APIキーはパスワードのように扱ってください。キーとUnslothインスタンスへのネットワークアクセスを持つ人なら誰でも、読み込まれたモデルにリクエストを送れます。
{% endhint %}

### ⏳ モデルの読み込み

{% stepper %}
{% step %}

#### モデルを選択

APIを使用する前に、 **モデルを選択** チャットページ左上のドロップダウンからモデルを読み込みます。

<figure><img src="/files/e29038cb1426e393aee3cb144c904bc7a9438f27" alt=""><figcaption></figcaption></figure>

このガイドでは、以下を使用します：

`unsloth/gemma-4-26B-A4B-it-GGUF` 推奨の `UD-Q4_K_XL` 量子化を使用します。
{% endstep %}

{% step %}

#### モデルのテスト

クライアントを使用する前に、短いメッセージを送信します：

<div data-with-frame="true"><figure><img src="/files/6037fb7bcfd78472b5ddadc37e90255377de6580" alt="" width="563"><figcaption></figcaption></figure></div>

{% hint style="info" %}
これで、モデルが正しく読み込まれ、応答可能な状態であることを確認できます。
{% endhint %}
{% endstep %}

{% step %}

#### **Unsloth APIキー**

Unslothで **Settings → API** を開き、APIキーを表示または作成します。

<figure><img src="/files/ff7840d9317331aed891f8636717121d17346f61" alt=""><figcaption></figcaption></figure>

APIキーはパスワードのように扱い、スクリーンショットやリポジトリで公開しないでください。
{% endstep %}
{% endstepper %}

### <i class="fa-terminal">:terminal:</i> Unsloth実行コマンド

1. **Unsloth Studioをインストールまたは更新します。** 古いバージョンでは外部APIが公開されません。インストールを参照してください。
2. **GGUFモデルを読み込みます。** runコマンドを使ってGGUFモデルを読み込みます。これにより、デフォルトポートでUIも起動します。エンドポイントURLとAPIキーがコンソールに表示され、好みのクライアントでそのまま使用できます。

   ```bash
   unsloth run --model unsloth/qwen3.8-27B-GGUF-GGUF:UD-Q4_K_XL
       --temp 1.0 \
       --top-p 0.95 \
       --top-k 20 \
       --min-p 0.0 \
       --chat-template-kwargs '{"reasoning_effort":"medium"}'
   ```

必要に応じて設定を調整します。

#### CLIからモデルを読み込む

次を使えば、モデルを読み込み、APIキーを自動で作成できます `unsloth` CLIツールです。モデルの読み込みが完了すると、エンドポイントURLとAPIキーがコンソールに表示されます。好みのクライアントにコピーすれば、すぐに使えます。

#### 始める前に

古いバージョンでは外部APIが公開されないため、Unsloth Studioの最新バージョンを使用してください。参照: [インストール](/docs/jp/shii/studio/install.md).

#### すばやい方法

ターミナルを開き、GGUFモデルを読み込みます:

```bash
unsloth run --model unsloth/gemma-4-26B-A4B-it-GGUF:UD-Q4_K_XL
```

これで、デフォルトポートでサーバーが起動し、UIが読み込まれ、エンドポイントURLとAPIキーが表示されます。

#### モデル名の仕組み

モデルの指定方法はいくつかあります。いちばん簡単な方法を選んでください:

```bash
# まとめて指定: リポジトリと量子化バリアントを1つの文字列で（推奨 — 最短）
unsloth run --model unsloth/gemma-4-26B-A4B-it-GGUF:UD-Q4_K_XL

# 分けて指定: リポジトリとバリアントを2つのフラグで（旧方式ですが、今でも使えます）
unsloth run --model unsloth/gemma-4-26B-A4B-it-GGUF --gguf-variant UD-Q4_K_XL

# -hf / --hf-repo を使う（llama.cppの表記に合わせたもので、そちらから来た場合に便利です）
unsloth run -hf unsloth/gemma-4-26B-A4B-it-GGUF:UD-Q4_K_XL
```

### 実行の調整（任意）

基本的な読み込みには不要ですが、 `unsloth run` パフォーマンス、メモリ使用量、コンテキスト長、生成挙動、ネットワーク、ツールアクセスを調整するための多くのllama-server実行時フラグに対応しています。

追加フラグは下層の推論サーバーへ直接渡され、指定した値がUnslothのデフォルトを上書きします。

#### 生成挙動を調整する

サンプリング設定は、生成時のモデルの創造性、集中度、決定性を制御します。

```bash
# ランダム性を下げ、再現性を高める
unsloth run \
  --model unsloth/Qwen3-1.7B-GGUF \
  --temp 0.6 \
  --seed 42
```

temperatureを低くすると通常はより安定した出力になります。top-p、top-k、min-p、repeat penaltyの設定は、トークン選択と繰り返しをさらに制御します。

```bash
# トークン選択と繰り返しの挙動を調整
unsloth run \
  --model unsloth/Qwen3-1.7B-GGUF \
  --top-p 0.95 \
  --top-k 20 \
  --min-p 0.05 \
  --repeat-penalty 1.1
```

#### コンテキスト長とCPUスレッド数を増やす

大規模プロジェクト、長いチャット、またはより多くのメモリを必要とするエージェントワークフローで役立ちます。

```bash
# より大きなコンテキストウィンドウとより多くのCPUスレッドを使う
unsloth run \
  --model unsloth/gemma-4-26B-A4B-it-GGUF:UD-Q4_K_XL \
  -c 131072 \
  --threads 32
```

#### ローカルネットワーク上にAPIを公開する

既定では、Unslothはローカルマシン上でのみ動作します。次にバインドすることで、ネットワーク上の他のデバイスにAPIを公開できます `0.0.0.0`.

```bash
# LANデバイスの接続を許可
unsloth run \
  --model unsloth/gemma-4-26B-A4B-it-GGUF:UD-Q4_K_XL \
  -H 0.0.0.0 \
  -p 8888
```

#### 推論挙動を制御する

一部の推論対応モデルは、思考と推論の挙動を制御する追加フラグに対応しています。

```bash
# 推論／思考出力を無効にする
unsloth run \
  --model unsloth/Qwen3-1.7B-GGUF \
  --reasoning off
```

```bash
# 推論モードを有効にする
unsloth run \
  --model unsloth/Qwen3-1.7B-GGUF \
  --reasoning on
```

推論対応はモデルとバックエンドの機能に依存します。

#### サーバーサイドツールを有効または無効にする

Web検索やコード実行などのツールを推論サーバーに公開するかどうかを制御します。

```bash
# ツールを明示的に有効にする
unsloth run \
  --model unsloth/gemma-4-26B-A4B-it-GGUF:UD-Q4_K_XL \
  --enable-tools
```

```bash
# ツールを明示的に無効にする
unsloth run \
  --model unsloth/gemma-4-26B-A4B-it-GGUF:UD-Q4_K_XL \
  --disable-tools
```

Unslothは、コンテキストサイズ、GPUレイヤー、スレッド、サンプリング、ネットワーク、ツール設定など、ほとんどのllama-server実行時フラグをサポートしています。

次を参照してください [llama-server](https://github.com/ggml-org/llama.cpp/tree/master/tools/server) 対応している実行時フラグの完全一覧はドキュメントをご覧ください。

#### **サーバーサイドツールのポリシー**

`unsloth run` は、サーバーサイドツール（Web検索、コード実行など）を推論サーバーに公開するかどうかを制御します。既定値はバインド先アドレスに基づきます:

* **`127.0.0.1` （localhost）** — ツール **有効** が既定です。サーバーにアクセスできるのはあなたのマシンだけです。
* **`0.0.0.0` または任意の非ループバックアドレス** — ツール **無効** が既定です。ネットワークに公開されたサーバーでAPIキーが漏れると、ホスト上で任意のコード実行につながります。

**フラグ:**

* `--enable-tools` / `--disable-tools` — 強制的に有効または無効にします。有効にすると `0.0.0.0`, `--enable-tools` y/Nのセキュリティ確認プロンプトが表示されます。
* `--yes` / `-y` — プロンプトをスキップします（自動化向け）。

解決されたポリシーはプロセスレベルの強制上書きです。個々のリクエストは次を使ってこれを回避できません `enable_tools=true` をリクエスト本文に指定しても同様です。

<div data-with-frame="true"><figure><img src="/files/c83a32967cec19ed5df47338a161004dc2a0dba9" alt=""><figcaption></figcaption></figure></div>

### 🌐 **エンドポイント**

Unslothは、起動時に使用したポート上でこれらのエンドポイントを公開します（通常は `http://localhost:8000` または `http://localhost:8888`):

| エンドポイント                     | 互換性                         | 使用先                                                         |
| --------------------------- | --------------------------- | ----------------------------------------------------------- |
| `POST /v1/messages`         | Anthropic Messages API      | Claude Code、Anthropic SDK、OpenClaw、Anthropic互換のものすべて        |
| `POST /v1/chat/completions` | OpenAI Chat Completions API | OpenAI SDK、opencode、Cursor、Continue、Cline、Open WebUI、curlなど |
| `GET /v1/models`            | OpenAIのモデル一覧                | 現在Unslothで読み込まれているモデルを一覧表示します                               |

認証には次を使用します: `Authorization: Bearer sk-unsloth-…` を各リクエストに含めます。

{% hint style="info" %}
2つの形式で別々のサーバーを実行する必要はありません。Unslothは同じポートで両方を処理します。
{% endhint %}

### 🖇️ クライアントを接続する

Unslothを使えば、次を含むほとんどのフレームワーク経由でローカルLLMを実行できます [Claude Code](/docs/jp/ji-ben/claude-code.md), [Codex](/docs/jp/ji-ben/codex.md), [OpenClaw](/docs/jp/tong-he/openclaw.md), [OpenCode](/docs/jp/tong-he/opencode.md) など。手順は以下の各ツールをクリックしてください:

{% columns %}
{% column width="50%" %}
{% content-ref url="/pages/ee610b22aa43d29d8415fd27eb7de15ba88f7385" %}
[Claude Code](/docs/jp/ji-ben/claude-code.md)
{% endcontent-ref %}

{% content-ref url="/pages/c87896ff7159620f4c01bb39fe9df1fd1a55274e" %}
[OpenAI Codex](/docs/jp/ji-ben/codex.md)
{% endcontent-ref %}

{% content-ref url="/pages/f70478a97a94b1f315a2c502fe67fb5f4f746cb9" %}
[Curl & HTTP](/docs/jp/tong-he/curltohttpwounslothni.md)
{% endcontent-ref %}
{% endcolumn %}

{% column width="50%" %}
{% content-ref url="/pages/1040e353b555381fe4f250e6417f1e51602685b2" %}
[OpenClaw](/docs/jp/tong-he/openclaw.md)
{% endcontent-ref %}

{% content-ref url="/pages/3864bcb37ba6a47277fdce43a7f1d4bc977d7edb" %}
[OpenCode](/docs/jp/tong-he/opencode.md)
{% endcontent-ref %}

{% content-ref url="/pages/1cb063d078a6ee398eff3b5e436d43e1fb2d6e52" %}
[Python SDK](/docs/jp/tong-he/python-sdkwounslothni.md)
{% endcontent-ref %}
{% endcolumn %}
{% endcolumns %}

別のマシンからこのエンドポイントに到達するには、次で起動します `unsloth studio --secure`。Unslothはlocalhostにバインドしたまま、無料のCloudflare HTTPS URLで公開されます。次の代わりにそのURLを使用してください `http://127.0.0.1:8888` をクライアントのベースURLにします。server-sent eventsはCloudflare quick tunnelを通ると維持されないため、次を設定してください `stream: false` その経由で呼び出す際に。

### 🧰 ツール呼び出し

どちらのエンドポイントも、ネイティブ形式での関数／ツール呼び出しに対応しており、さらにUnslothの組み込みツール用のUnsloth独自の省略形式もあります。

**OpenAI形式のツール:** 送信し `のツール` と `tool_choice` に `/v1/chat/completions` OpenAIと同じようにそのまま送ります。Claude Code（ `/v1/messages`経由）、opencode、Cursor、Continue、Clineはすべてそのまま使えます。

**Anthropic形式のツール:** 送信し `のツール` （ `input_schema`）と `tool_choice` に `/v1/messages` Claudeと同じようにそのまま使えます。

Unslothのサーバーサイドツール: UnslothはPython、Web検索、bashを実行できます *サーバーサイドで* そして結果を次の形式でストリーミング返却します `tool_result` イベント。任意のエンドポイントに次の追加フィールドを入れて有効化します:

```json
{
  "messages": [{"role": "user", "content": "123 * 456 はいくつですか？ Pythonを使ってください。"}],
  "stream": true,
  "enable_tools": true,
  "enabled_tools": ["python", "web_search","terminal"],
  "session_id": "my-session"
}
```

モデルは各ツールの出力を次のターンで確認します。より詳しい説明（スキーマ、ストリーミングイベント、チェーン処理）については、を参照してください。

{% hint style="info" %}
Anthropicの `/v1/messages` エンドポイントを使っている場合、 `tool_choice` 次のようにきれいに対応します: Anthropic `自動` → OpenAI `自動`、Anthropic `任意` → OpenAI `必須`、Anthropic `{type: "tool", name: "x"}` → OpenAI `{type: "function", function: {name: "x"}}`、Anthropic `なし` → OpenAI `なし`.
{% endhint %}

### 📈 APIモニター

このエンドポイント経由のすべての呼び出しは、Studio内の2か所でリアルタイム表示されます:

APIキーの通信が届くとすぐに、APIモニターのサイドパネルが自動で隅に開きます。アクティブなモデル、ライブリクエスト、エラー、平均レイテンシを要約表示します。

<div data-with-frame="true"><figure><img src="/files/bd4eb53084bf24040da18b0fbda1138839ed38e0" alt=""><figcaption></figcaption></figure></div>

「Expand to full monitor」を押すか、Settings>API Monitorに移動して完全な **API** ページでは、モデルの読み込み、プロンプト、応答、トークン数、最初のトークンまでの時間、スループット、エラーメッセージがモニターに表示されます。

<div data-with-frame="true"><figure><img src="/files/b222c3f5ab1f9db4ae0a5e19ebb15fc747febe23" alt="" width="563"><figcaption></figcaption></figure></div>

### ❔ トラブルシューティング

**`401 Unauthorized`** ：次のいずれかが原因です `Authorization` ヘッダーがないか、キーが間違っています。キーは次の形式で渡す必要があります `Authorization: Bearer sk-unsloth-…`。キーをなくした場合は、次から新しいものを作成してください **設定 → API。** Unslothは作成後に古いキーを表示しません。

**`モデルサーバーへの接続が失われました`** ：Unsloth は基盤の llama.cpp サーバーに接続できませんでした。通常、モデルの読み込みは完了したもののクラッシュしたか、Unsloth 内でモデルタブが閉じられた場合です。モデルを再読み込みしてください **新しいチャット** そして再試行してください。

**Claude Code にデフォルトの Anthropic モデルが表示され、ローカルのものが表示されない** ：3つの環境変数がすべてエクスポートされていることを確認してください、 **同じ** 実行するシェルで `claude`:

```bash
echo $ANTHROPIC_BASE_URL
echo $ANTHROPIC_AUTH_TOKEN
echo $ANTHROPIC_MODEL
```

次に実行してください `/model` Claude Code 内で確認してください。Windows PowerShell では次を使用します `$env:ANTHROPIC_BASE_URL` など。

**`stream: true` SSE ではなく単一の JSON ブロブを返します** ：正しいパス（`/v1/messages` または `/v1/chat/completions`）にアクセスしていることを確認し、HTTP クライアントがレスポンスをバッファリングせず、実際にストリームとして消費していることを確認してください。

**opencode（または OpenClaw / その他のクライアント）に追加するモデル名が見つかりません** ：Unsloth に直接問い合わせてください。 `GET /v1/models` クライアントの「Model ID」欄に入力する必要がある正確なモデル ID を返します：

```bash
curl http://localhost:8888/v1/models \
  -H "Authorization: Bearer sk-unsloth-xxxxxxxxxxxx"
```

次の形式の JSON ペイロードが返ってきます `{"data": [{"id": "gemma-4-26B-A4B-it-GGUF", ...}]}`。次に `id` 値です。これが opencode の文字列 **Model ID** フィールド（左列）と OpenClaw の `models[].id` が期待するものです。右側の表示名は、ユーザーに見せたい任意の名前です。

**ツール呼び出しが実行されない** ：モデルはクライアント側ツールのためにツール呼び出しをサポートしている必要があります（`のツール` / `tool_choice`）。Unsloth の組み込みツールについては、次を設定するのを忘れないでください `enable_tools: true` **と** で使いたいものを列挙してください `enabled_tools` （例： `["python", "web_search"]`).

* **クライアントが接続エラーを報告しています。** API モニターを開いてください。呼び出しの行がない場合は、Unsloth に到達していません。クライアントのベース URL を次と比較してください **ベース URL** そのページ上部に表示されているもの。
* **応答が途中で切れます。** 確認してください **使用されたコンテキスト** API モニター内のリクエストで。100% に近い、または停止理由が `length`の場合は、モデルの失敗ではなくコンテキストウィンドウがいっぱいになったという意味です。


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://unsloth.ai/docs/jp/ji-ben/api.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
