> 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には、自己修復機能などの便利な機能もあります。 **ツール呼び出し**, **コード実行**、そして **ウェブ検索**.

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) 実際にWebページへアクセスして読み込み、詳細情報を収集します。
* [**自動推論** 設定](/docs/jp/shii/studio/chat.md#auto-parameter-tuning) GGUFモデル用（temp、top-k など）

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

あなたの **ローカルモデル** は、そのままお好みのAIエージェント、SDK、またはチャットクライアントで直接使用できます。Unslothは同じポートで2つの方言を話します。どちらもストリーミング、ツール呼び出し（OpenAI `ツール` ／Anthropic `ツール`）、およびビジョン入力をサポートします：
{% endcolumn %}

{% column %}

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

* **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互換ツール向け。

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

1. **インストールまたは更新** [**Unsloth Studio**](/docs/jp/shii/studio.md)**.** その後、Unslothを起動します。
2. **モデルを読み込みます。** クリック **New Chat**をクリックし、モデル（GGUF）を選択または検索して、読み込みが完了するまで待ちます。
3. **APIキーを作成します。** 左下の **Unsloth** アバターをクリック → **設定** → **API** → キー名を入力 → **作成**。次に、 `sk-unsloth-…` と表示された値をコピーします。Unslothで表示されるのは一度だけです。
4. **クライアントの接続先をUnslothに設定します。** 使用 `http://localhost:PORT` をベースURLにし、 `sk-unsloth-…` 認証用キーを使用します。以下の各ツール向け手順に進んでください。

### 🔑 APIキーの作成

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

<div data-with-frame="true"><figure><img src="/files/56897ad32966d1081797ea8ccf97a7df82f0a550" alt="" width="375"><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で **設定 → API** を開き、APIキーを表示または作成します。

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

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

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

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

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

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

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

#### 始める前に

Unsloth Studioの最新バージョンを使用していることを確認してください。旧バージョンでは外部APIが公開されません。 [インストール](/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の内蔵ツール向けの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 `auto` → OpenAI `auto`、Anthropic `任意の` → OpenAI `必須`、Anthropic `{type: "tool", name: "x"}` → OpenAI `{type: "function", function: {name: "x"}}`、Anthropic `なし` → OpenAI `なし`.
{% endhint %}

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

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

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

**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"]`).


---

# 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.
