はじめに
LM Studio は、手元の PC で大規模言語モデル(LLM)を動かすためのデスクトップアプリです。モデルの検索・ダウンロード・チャット・API サーバー化までを GUI でまとめて扱えるため、「ローカル LLM を触ってみたいけれど、環境構築で詰まりたくない」という人の最初の一歩として定番になっています。
本記事では、LM Studio の全体像を Mermaid の図で整理しながら、次の流れで使い方を見ていきます。
- LM Studio の構成を理解する
- インストールとモデル選び(量子化・メモリ見積もり)
- チャット画面の使い方とパラメータ
- OpenAI / Anthropic 互換 API サーバーとして使う
- コーディングに活用する(Continue / Cline / Aider / Claude Code / 自作スクリプト)
- CLI(
lms)とヘッドレス運用(llmster) - トラブルシューティング
info
本記事は LM Studio 0.4 系を前提にしています。バージョンによってメニュー名や機能が変わることがあるため、最新情報は 公式ドキュメント と Changelog も合わせて確認してください。
LM Studio の全体像
まずは LM Studio がどんな部品で構成されているかを俯瞰します。
ポイントは 3 つです。
| 要素 | 役割 |
|---|---|
| ランタイム | 実際に推論を行うエンジン。GGUF 形式は llama.cpp、Apple Silicon 向けの MLX 形式は MLX で動く |
| 推論コア(llmster) | モデルのロード・アンロード、リクエスト処理を担う本体。0.4 系から GUI なしでも単独起動できるようになった |
| API サーバー | ロードしたモデルを OpenAI 互換・Anthropic 互換などの HTTP API として公開する |
GUI はあくまで「推論コアを操作するためのフロントエンド」の 1 つで、CLI や API からも同じコアを操作できる、という構造を押さえておくと後の理解が楽になります。
インストール
公式サイト から OS に合ったインストーラーをダウンロードして実行するだけです。
| OS | 対応状況・備考 |
|---|---|
| macOS | Apple Silicon(M1 以降)が対象。MLX ランタイムが使える |
| Windows | x64 / ARM64。NVIDIA GPU なら CUDA、AMD / Intel GPU なら Vulkan が使える |
| Linux | AppImage で配布。x64 / ARM64 |
info
LM Studio は個人利用だけでなく、業務利用も無償で可能になっています(2025 年 7 月にライセンスが変更)。社内で使う場合も、念のため最新の利用規約を確認しておくと安心です。
初回起動時にはオンボーディング画面が表示され、おすすめのモデルをダウンロードするよう促されます。スキップしても問題ありません。
画面構成
LM Studio の左サイドバーには主に 4 つのタブがあります。
基本的な流れは Discover で探す → My Models に入る → Chat か Developer でロードして使う です。
モデル選び
ローカル LLM で一番悩むのがモデル選びです。ここでは「量子化」と「メモリ見積もり」の 2 つの観点で整理します。
量子化とは
LLM の重みは本来 16bit(FP16 / BF16)の浮動小数点で保存されています。これを 8bit・4bit などに圧縮したものが 量子化モデル です。精度を少し犠牲にする代わりに、ファイルサイズと必要メモリを大きく減らせます。
Discover 画面でモデルを開くと、同じモデルでも Q4_K_M、Q5_K_M、Q8_0 など複数のファイルが並んでいます。これが量子化の種類です。
迷ったら Q4_K_M を選ぶのが定番です。サイズと品質のバランスがよく、多くの環境で実用的な速度が出ます。メモリに余裕があれば Q5_K_M や Q6_K に上げる、という順番で考えるとよいでしょう。
GGUF と MLX
| 形式 | ランタイム | 向いている環境 |
|---|---|---|
| GGUF | llama.cpp | Windows / Linux / Mac すべて。GPU と CPU の併用(部分オフロード)が可能 |
| MLX | Apple MLX | Apple Silicon Mac。ユニファイドメモリを活かして高速に動くことが多い |
Mac を使っているなら、同じモデルに MLX 版があればそちらを試してみる価値があります。
必要メモリの見積もり
モデルを動かすのに必要なメモリは、ざっくり次の式で見積もれます。
必要メモリ ≈ パラメータ数 × (量子化ビット数 ÷ 8) + KV キャッシュ + 余裕(1〜2GB)
たとえば 8B(80 億パラメータ)モデルを Q4_K_M(実効約 4.5bit)で動かす場合、
8B × 4.5 ÷ 8 ≈ 4.5GB + KV キャッシュ(コンテキスト長に比例)
となり、8GB 程度の VRAM / ユニファイドメモリがあれば快適に動く計算です。
ただし見落としがちなのが KV キャッシュ です。会話の文脈を保持するためのメモリで、コンテキスト長に比例して増えます。
同じモデルでも、コンテキスト長を 8K から 32K に伸ばしただけで 8GB に収まらなくなります。「モデルは載ったのに長い会話で落ちる」ときは、まずここを疑いましょう。
目安を表にすると次のようになります。
| パラメータ数 | Q4_K_M のファイルサイズ目安 | 推奨メモリ(VRAM / ユニファイドメモリ) |
|---|---|---|
| 1〜4B | 1〜2.5GB | 4〜6GB |
| 7〜9B | 4〜5.5GB | 8GB 以上 |
| 12〜14B | 7〜9GB | 12〜16GB 以上 |
| 24〜32B | 14〜20GB | 24〜32GB 以上 |
| 70B | 40GB 前後 | 48〜64GB 以上 |
info
LM Studio の Discover 画面では、各ファイルに「Full GPU Offload Possible」「Partial GPU Offload Possible」「Likely too large」といった目安が表示されます。まずはこの表示を信用して選ぶのが手っ取り早いです。
メモリ量から選ぶ
Discover 画面ではモデルごとに 👁️(Vision)や 🔧(Tool Use)、🧠(Reasoning)といった能力アイコンが表示されるので、用途に合わせて絞り込めます。
また、最近は MoE(Mixture of Experts) モデルも増えています。総パラメータ数は大きくても、推論時に使うのは一部の「エキスパート」だけなので、同規模の Dense モデルより高速に動く傾向があります。ただし重み全体はメモリに載せる必要があるため、必要メモリは総パラメータ数で見積もる 点に注意してください。
おすすめモデル(2026 年 10 月時点)
ここまでの考え方を踏まえて、2026 年 10 月時点で LM Studio から入手できる定番モデルをメモリ別にまとめました。
| モデル | 開発元 | 構造 | 特徴 | こんな人に |
|---|---|---|---|---|
| Qwen3.5-9B | Alibaba (Qwen) | Dense / 画像入力対応 | 小型ながら汎用性が高い。262K コンテキスト | 最初の 1 本。8GB 環境 |
| Gemma 4 E4B | Dense / マルチモーダル | 端末向けに最適化された軽量モデル | ノート PC で画像も扱いたい | |
| gpt-oss-20b | OpenAI | MoE | 推論(Reasoning)とツール呼び出しが安定。Apache 2.0 | 16GB 環境の本命 |
| Gemma 4 26B-A4B | MoE(総 25.2B / アクティブ 3.8B) | 4B 相当の速さで動く。256K コンテキスト | 速さと賢さを両立したい | |
| Qwen3.8-27B | Alibaba (Qwen) | Dense / 画像入力対応 | 同サイズ帯で高い性能。262K コンテキスト | 24GB GPU で品質重視 |
| Qwen3.6-35B-A3B | Alibaba (Qwen) | MoE(総 35B / アクティブ 3B) | エージェント的なコーディングやリポジトリ単位の推論を強化 | ローカルでコーディングエージェント |
| gpt-oss-120b | OpenAI | MoE | ローカルで動かせる最上位クラス | 64GB 以上の Mac / マルチ GPU |
LM Studio では Discover 画面でモデル名を検索するか、CLI から取得できます。
# 8GB クラス
lms get qwen/qwen3.5-9b
# 16GB クラス
lms get openai/gpt-oss-20b
# 24〜32GB クラス(コーディング向け)
lms get qwen/qwen3.6-35b-a3b
info
ローカル LLM の世界は数か月単位で主役が入れ替わります。上の表はあくまで 2026 年 10 月時点の目安です。Discover 画面の「Staff Picks」や各モデルの Hugging Face ページで、最新のバージョンとライセンスを確認してから使ってください。
チャットで使う
モデルのロード
- 画面上部の「Select a model to load」をクリック(または
Cmd/Ctrl + L) - ダウンロード済みのモデルを選ぶ
- ロード設定を確認して「Load Model」
ロード時の主な設定は次のとおりです。
| 設定 | 説明 | 目安 |
|---|---|---|
| Context Length | 一度に扱えるトークン数 | 大きいほど KV キャッシュでメモリを食う。まずは 4096〜8192 |
| GPU Offload | GPU に載せるレイヤー数 | 全部載るなら最大に。足りなければ減らして CPU と分担 |
| Flash Attention | 高速な Attention 実装 | 対応環境なら ON でメモリと速度が改善することが多い |
| KV Cache Quantization | KV キャッシュの量子化 | 長いコンテキストでメモリが足りないときに試す |
GPU Offload の考え方を図にすると次のようになります。
全レイヤーを GPU に載せられれば最速ですが、VRAM が足りない場合は一部を CPU 側に残すことで「遅いけれど動く」状態にできます。これが GGUF + llama.cpp の強みです。
推論パラメータ
右側のパネルでは、生成時のパラメータを調整できます。
| パラメータ | 効果 | 使い分け |
|---|---|---|
| Temperature | 出力のランダムさ | 正確さ重視なら 0.1〜0.3、創作なら 0.7〜1.0 |
| Top P / Top K | 候補トークンの絞り込み | 基本はモデルの推奨値のまま |
| Repeat Penalty | 同じ表現の繰り返しを抑える | ループするときに少し上げる |
| System Prompt | モデルの役割・口調の指定 | 「日本語で簡潔に答えて」など |
モデルによっては推奨パラメータが設定済みのプリセットとして読み込まれます。まずはデフォルトで試し、気になる点があれば調整する、くらいで十分です。
ファイル添付と RAG
チャット欄にはドキュメント(PDF・テキストなど)や画像を添付できます。
短いファイルは全文がそのまま渡され、長いファイルは自動的に RAG(検索拡張生成)で関連部分だけが渡されます。画像を読ませたい場合は Vision 対応モデルを選ぶ必要があります。
MCP 連携
LM Studio は MCP(Model Context Protocol) クライアントとしても動作します。mcp.json に MCP サーバーを登録すると、チャット中のモデルが外部ツールを呼び出せるようになります。
{
"mcpServers": {
"filesystem": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/Users/me/Documents"]
}
}
}
右サイドバーの「Program」タブで「Install」→「Edit mcp.json」を選ぶと編集できます(書式は Cursor の mcp.json と同じです)。ツール呼び出しには 🔧 アイコン付きの Tool Use 対応モデルを使ってください。
alert
MCP サーバーはローカルのファイルやコマンドにアクセスできます。信頼できないサーバーは登録しないようにし、ツール実行時の確認ダイアログも内容を読んでから許可しましょう。
API サーバーとして使う
LM Studio の真価は、ロードしたモデルを ローカル API サーバー として公開できる点にあります。既存の OpenAI 向けツールやライブラリを、接続先を変えるだけでローカル LLM に向けられます。
サーバーの起動
GUI から: Developer タブを開き、「Status: Stopped」のトグルを ON にします。
CLI から:
lms server start
デフォルトでは http://localhost:1234 で待ち受けます。
提供されるエンドポイント
| 種類 | 用途 |
|---|---|
| OpenAI 互換 | OpenAI SDK や LangChain など、既存エコシステムをそのまま使う |
| Anthropic 互換 | Claude Code など Anthropic API 前提のツールをローカルモデルで動かす |
| ネイティブ REST API | モデルのロード状態や詳細な統計など、LM Studio 固有の情報を扱う |
リクエストの流れ
Developer タブの設定で JIT(Just-In-Time)ロード を有効にしておくと、リクエストで指定されたモデルが未ロードでも自動的に読み込まれます。さらに Auto Unload(TTL) を設定すれば、しばらく使われないモデルを自動でアンロードしてメモリを解放してくれます。
curl で試す
# ロード済み・利用可能なモデル一覧
curl http://localhost:1234/v1/models
# チャット
curl http://localhost:1234/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{
"model": "qwen/qwen3.5-9b",
"messages": [
{"role": "system", "content": "日本語で簡潔に答えてください。"},
{"role": "user", "content": "LM Studio とは何ですか?"}
],
"temperature": 0.3
}'
model には /v1/models で返ってきた ID を指定します。
Python(OpenAI SDK)から使う
from openai import OpenAI
client = OpenAI(
base_url="http://localhost:1234/v1",
api_key="lm-studio", # ダミーで OK(認証を有効にしていない場合)
)
stream = client.chat.completions.create(
model="qwen/qwen3.5-9b",
messages=[{"role": "user", "content": "ローカル LLM の利点を 3 つ挙げて"}],
stream=True,
)
for chunk in stream:
print(chunk.choices[0].delta.content or "", end="", flush=True)
既存コードの base_url を書き換えるだけで、クラウドの API からローカル LLM に切り替えられます。
構造化出力(JSON Schema)
response_format に JSON Schema を渡すと、出力をスキーマに沿った JSON に制約できます。
schema = {
"type": "object",
"properties": {
"name": {"type": "string"},
"category": {"type": "string", "enum": ["fruit", "vegetable"]},
"price": {"type": "integer"},
},
"required": ["name", "category", "price"],
}
res = client.chat.completions.create(
model="qwen/qwen3.5-9b",
messages=[{"role": "user", "content": "りんごの情報を出力して"}],
response_format={
"type": "json_schema",
"json_schema": {"name": "item", "schema": schema, "strict": True},
},
)
print(res.choices[0].message.content)
# => {"name": "りんご", "category": "fruit", "price": 150}
データ抽出や分類タスクをローカルで回したいときに便利です。
公式 SDK(lmstudio-python / lmstudio-js)
OpenAI 互換 API のほかに、LM Studio 専用の SDK も用意されています。モデルのロード管理なども含めて扱えるのが特徴です。
pip install lmstudio
import lmstudio as lms
model = lms.llm("qwen/qwen3.5-9b") # 未ロードならロードされる
result = model.respond("Mermaid で使える図の種類を教えて")
print(result)
TypeScript 向けには @lmstudio/sdk があります。
LAN 内の別マシンから使う
Developer タブのサーバー設定で「Serve on Local Network」を有効にすると、localhost 以外からも接続できるようになります(CLI なら lms server start --bind 0.0.0.0)。
alert
ネットワークに公開する場合は、設定で API トークンによる認証 を有効にしてください。認証なしでインターネットに直接公開するのは避けましょう。離れた場所から使いたい場合は、後述の LM Link や VPN(Tailscale など)を経由するのが安全です。
コーディングに活用する
LM Studio の API サーバーを立てておけば、エディタの AI アシスタントやコーディングエージェントのバックエンドとしてローカル LLM を使えます。ソースコードを外部に送らずに済むので、社外秘のコードを扱う場面でも試しやすいのが利点です。
全体像
用途別のモデルの選び方
コーディング用途では、役割ごとにモデルを分ける のがポイントです。
| 用途 | 求められる性質 | モデルの目安 | コンテキスト長 |
|---|---|---|---|
| コード補完(Tab 補完) | とにかく低レイテンシ | 1〜3B のコード特化モデル(FIM 対応) | 2K〜4K |
| チャット・質問・リファクタ | コード理解力 | 7〜14B のコード特化モデル | 8K〜16K |
| エージェント(ファイル編集・コマンド実行) | Tool Use の安定性・長文脈 | 30B クラス(MoE が速くておすすめ) | 32K 以上 |
ロード例(CLI):
# エージェント・チャット用(長めのコンテキスト)
lms load qwen/qwen3.6-35b-a3b --context-length 32768 --gpu max --identifier coder
# 補完用の小型モデル(同時にロード)
lms load qwen2.5-coder-1.5b-instruct --context-length 4096 --identifier autocomplete
Continue(VS Code / JetBrains)
Continue は、チャット・インライン編集・Tab 補完をまとめて提供する OSS の拡張機能です。LM Studio をプロバイダーとして直接指定できます。
~/.continue/config.yaml の例:
name: Local LM Studio
version: 0.0.1
schema: v1
models:
- name: Coder (LM Studio)
provider: lmstudio
model: coder # lms load の --identifier で付けた ID
apiBase: http://localhost:1234/v1/
roles:
- chat
- edit
- apply
- name: Autocomplete (LM Studio)
provider: lmstudio
model: autocomplete
apiBase: http://localhost:1234/v1/
roles:
- autocomplete
これで、
- サイドバーのチャット でコードについて質問する
- コードを選択して
Cmd/Ctrl + Iでインライン編集を指示する - 入力中に Tab 補完 の候補を出す
といった操作がすべてローカル LLM で動きます。
Cline(VS Code)
Cline は、ファイルの読み書きやコマンド実行まで自律的に行うコーディングエージェントです。
- VS Code に Cline 拡張をインストール
- Cline の設定で API Provider に「LM Studio」 を選択
- Base URL に
http://localhost:1234、Model ID にcoderを指定
Cline は各操作の前に承認を求めてくるので、ローカルモデルの判断が怪しいときもその場で止められます。
Aider(ターミナル)
Aider は Git と連携したターミナル型のペアプログラミングツールです。変更ごとに自動でコミットしてくれるので、ローカルモデルの出力が微妙でも git で簡単に戻せます。
pip install aider-install && aider-install
export LM_STUDIO_API_BASE=http://localhost:1234/v1
export LM_STUDIO_API_KEY=dummy
# lm_studio/ の後ろに LM Studio 上のモデル ID を指定
aider --model lm_studio/coder
> src/utils.py の parse_date に、ISO 8601 以外の形式もサポートするよう修正して
Claude Code
LM Studio 0.4.1 で追加された Anthropic 互換エンドポイント(/v1/messages)を使うと、Claude Code の接続先を LM Studio に向けられます。
lms server start --port 1234
export ANTHROPIC_BASE_URL=http://localhost:1234
export ANTHROPIC_AUTH_TOKEN=lmstudio # 認証を有効にしている場合は LM Studio の API トークン
export CLAUDE_CODE_ATTRIBUTION_HEADER=0
claude --model coder
Claude Code はコンテキストを大量に消費するため、公式ドキュメントでは 25K トークン以上 のコンテキスト長でモデルをロードすることが推奨されています。
info
ローカルモデルは Claude 本体に比べるとエージェント的なタスクの性能が大きく劣ることが多いです。「オフライン環境で試す」「API コストをかけずに挙動を確認する」といった用途として割り切るのがおすすめです。
自作スクリプトで開発作業を自動化する
ツールを使わず、SDK から直接呼び出して開発フローに組み込むこともできます。
例 1: git diff をローカル LLM にレビューさせる
import subprocess
from openai import OpenAI
client = OpenAI(base_url="http://localhost:1234/v1", api_key="lm-studio")
diff = subprocess.run(
["git", "diff", "--staged"], capture_output=True, text=True, check=True
).stdout
if not diff:
raise SystemExit("ステージされた変更がありません")
res = client.chat.completions.create(
model="coder",
temperature=0.2,
messages=[
{
"role": "system",
"content": (
"あなたは経験豊富なレビュアーです。"
"バグ・セキュリティ上の問題・可読性の順に、"
"指摘箇所のファイル名と行を添えて日本語で簡潔に指摘してください。"
),
},
{"role": "user", "content": f"次の差分をレビューしてください。\n\n```diff\n{diff}\n```"},
],
)
print(res.choices[0].message.content)
git add -p
python review.py
Git の pre-commit フックに組み込めば、コミット前に毎回ローカルでレビューを走らせることもできます。
例 2: コミットメッセージを生成する
git diff --staged | python -c '
import sys
from openai import OpenAI
c = OpenAI(base_url="http://localhost:1234/v1", api_key="x")
r = c.chat.completions.create(model="coder", temperature=0.2, messages=[
{"role": "system", "content": "Conventional Commits 形式で 1 行のコミットメッセージだけを出力して"},
{"role": "user", "content": sys.stdin.read()},
])
print(r.choices[0].message.content.strip())
'
例 3: lmstudio-python の .act() でツールを使わせる
公式 SDK の .act() を使うと、Python 関数をツールとしてモデルに渡し、モデルが必要に応じて呼び出す「エージェントループ」を数行で書けます。
from pathlib import Path
import lmstudio as lms
ROOT = Path("./src").resolve()
def list_files() -> list[str]:
"""src 配下の Python ファイル一覧を返す"""
return [str(p.relative_to(ROOT)) for p in ROOT.rglob("*.py")]
def read_file(path: str) -> str:
"""src 配下のファイルの内容を返す"""
target = (ROOT / path).resolve()
if not target.is_relative_to(ROOT):
return "src 外のファイルは読めません"
return target.read_text(encoding="utf-8")
model = lms.llm("coder")
model.act(
"src 配下のコードを読んで、例外処理が不足している関数を一覧にしてください",
[list_files, read_file],
on_message=print,
)
alert
ツールとしてファイル書き込みやシェル実行を渡すと、モデルの判断でそれらが実行されます。対象ディレクトリを限定する・書き込み系は人間の確認を挟むなど、安全策を入れてから使いましょう。
コーディング用途での Tips
- Temperature は低め(0.1〜0.3): コード生成は再現性が大事なので、ランダム性を抑えます
-
lms log streamで実際のプロンプトを見る: ツールが何を送っているか分かると、うまくいかない原因を特定しやすくなります - JIT ロード + TTL を有効に: 補完用・チャット用のモデルを必要なときだけ自動でロード/アンロードできます
CLI(lms)を使う
LM Studio には lms という CLI が同梱されています。初回は一度 LM Studio を起動したあと、次のコマンドでパスを通します。
# macOS / Linux
~/.lmstudio/bin/lms bootstrap
# Windows (PowerShell)
cmd /c %USERPROFILE%/.lmstudio/bin/lms.exe bootstrap
新しいターミナルを開いて lms が使えれば準備完了です。
よく使うコマンド
| コマンド | 説明 |
|---|---|
lms ls |
ダウンロード済みモデルの一覧 |
lms ps |
現在ロード中のモデルの一覧 |
lms get <model> |
モデルを検索・ダウンロード |
lms load <model> |
モデルをロード |
lms unload <model> / lms unload --all
|
モデルをアンロード |
lms chat |
ターミナル上でチャット |
lms server start / lms server stop
|
API サーバーの起動・停止 |
lms server status |
サーバーの状態確認 |
lms log stream |
リクエストやモデルのログをリアルタイム表示 |
lms runtime ls / lms runtime update
|
ランタイム(llama.cpp / MLX)の確認・更新 |
使用例
# モデルをダウンロード
lms get qwen/qwen3.5-9b
# コンテキスト長と GPU オフロードを指定してロード
lms load qwen/qwen3.5-9b --context-length 8192 --gpu max --identifier my-qwen
# ロード状態を確認
lms ps
# サーバーを起動して、ログを流しながら動作確認
lms server start
lms log stream
--identifier を付けると、API から呼び出すときのモデル ID を自分で決められます。スクリプトから扱うときに便利です。
典型的なワークフロー
ヘッドレス運用(llmster)
0.4 系からは、GUI を使わずに推論コアだけを動かす llmster が利用できます。GPU サーバーや CI 環境など、デスクトップ環境がないマシンで LM Studio を動かしたいときに使います。
# Linux / macOS
curl -fsSL https://lmstudio.ai/install.sh | bash
# デーモンを起動して、モデルをロード・サーバーを開始
lms daemon up
lms get qwen/qwen3.5-9b
lms load qwen/qwen3.5-9b
lms server start
info
インストールスクリプトのコマンドやデーモン関連のサブコマンドは、バージョンによって変わることがあります。実行前に 公式ドキュメント で最新の手順を確認してください。
GUI 版と比べた使い分けは次のとおりです。
0.4.5 で追加された LM Link を使うと、別のマシンで動いている LM Studio に接続し、そのモデルをあたかもローカルにあるかのように使えます。「普段はノート PC、重いモデルは自宅の GPU マシンで」といった使い方ができます。
Ollama との比較
ローカル LLM ツールとしてよく比較される Ollama との違いもまとめておきます。
| 比較軸 | LM Studio | Ollama |
|---|---|---|
| 主なインターフェース | GUI(+ CLI / ヘッドレス) | CLI(+ 公式アプリ) |
| モデル入手 | Hugging Face を GUI で検索 |
ollama pull で公式ライブラリから |
| Apple Silicon 最適化 | MLX ランタイムに対応 | Metal(llama.cpp 系)が標準。2026 年 3 月から MLX バックエンドをプレビュー提供 |
| 量子化の選択 | 同じモデルの量子化違いを GUI で比較して選べる | タグで指定 |
| API | OpenAI / Anthropic 互換 + ネイティブ | OpenAI 互換 + ネイティブ |
| ライセンス | アプリ本体はプロプライエタリ(無償) | MIT(オープンソース) |
どちらも OpenAI 互換 API を持っているので、アプリ側から見れば差し替えは容易です。「まず GUI で色々なモデルを試して当たりをつけ、本番の常駐は好きな方で」という使い分けも現実的です。
トラブルシューティング
特によくあるのが 「Context Length を大きくしすぎてメモリ不足」 です。モデル本体が載っても、KV キャッシュはコンテキスト長に比例して増えるため、32K や 128K を指定すると一気にメモリが足りなくなります。まずは小さめで動作確認し、必要に応じて増やしていくのがおすすめです。
また、lms log stream でサーバーのログを見ながらリクエストを送ると、どのモデルにどんなプロンプトが渡っているかを確認でき、原因の切り分けに役立ちます。
まとめ
LM Studio の使い方を、全体の流れとしてもう一度整理します。
- GUI でモデル探しから試用までを手軽にこなせる
- 量子化(Q4_K_M が基準) と メモリ見積もり を押さえればモデル選びで迷いにくい
- OpenAI / Anthropic 互換 API で既存ツールをそのままローカル LLM に向けられる
- Continue・Cline・Aider・Claude Code などのコーディング支援ツールも、接続先を変えるだけでローカル LLM で動く
-
lmsCLI や llmster を使えば、スクリプト化やサーバー運用もできる
クラウドの LLM と比べると性能面での差はまだありますが、「データを外に出さずに済む」「API コストがかからない」「オフラインで動く」というメリットは大きいです。まずは手元のマシンに合ったサイズのモデルを 1 つダウンロードして、触ってみるところから始めてみてください。
参考
この記事はZennでも公開しています。


















