【T-06】Claude Code × LM Studio でローカルLLM開発環境を構築する
kome
🔧 TECH ARTICLE 🔧
〜 T-06 〜
Claude Code × LM Studio でローカルLLM開発環境を構築する
⚙️ はじめに — この記事でできるようになること
Claude Code は、ターミナル(黒い画面)から使えるAIコーディングアシスタントです。通常はAnthropicのクラウドサーバーにつないで使いますが、LM Studio というアプリを使えば、自分のPC上でAIモデルを動かして、Claude Codeをクラウドなし・料金ゼロで使えるようになります。
この記事を読み終わると、こんな環境が手に入ります:
- 毎月のAPI料金が0円 — 自分のPCでAIが動くので課金なし
- ネットがなくても使える — 飛行機の中でもコーディングできる
- Claude Codeの機能がそのまま使える — Skills、Agent、Toolsなどの便利な機能はそのまま
- スマホからも同じ環境にアクセス可能 — SSH接続で外出先からも使える
所要時間は約15分です。一緒にやっていきましょう。
⚙️ そもそもの仕組み — なぜこれが動くの?
まず、普通のClaude Codeがどう動いているかを理解しましょう。
【普段の使い方】
あなたのPC(Claude Code)
↓ インターネット経由
Anthropicのサーバー(Claude Sonnet / Opus)
↓
回答が返ってくる(※ここでAPI料金が発生)
LM Studioを使うと、こう変わります:
【ローカルLLM構成】
あなたのPC(Claude Code)
↓ PC内部の通信(インターネット不要)
LM Studio(AIモデルを動かすアプリ)
↓
回答が返ってくる(※料金ゼロ!)
LM Studio 0.4.1以降には、Anthropicの通信方式と同じ形式でやりとりできる機能が入っています。Claude Codeからすると「いつものAnthropicサーバーと話している」ように見えるので、特別な改造なしでそのまま動くわけです。
⚙️ 構築に必要なもの
始める前に、以下を準備してください。
| 必要なもの | 説明 |
|---|---|
| パソコン | Mac、Windows、Linuxのいずれか |
| メモリ(RAM) | 16GB以上(できれば32GB以上だと快適) |
| Claude Code | Anthropicの公式CLIツール(事前にインストール済みであること) |
| ストレージ | 数GBの空き容量(AIモデルのダウンロードに必要) |
Claude Codeがインストールされているか確認するには、ターミナルで以下を実行します:
claude --version
バージョン番号が表示されればOKです。
⚙️ 構築手順 — 4ステップで完了
全体の流れはこうなっています:
STEP 1: LM Studioをインストールして起動する (5分)
↓
STEP 2: AIモデルをダウンロードしてセットする (5〜10分)
↓
STEP 3: Claude Codeの接続先を変更する (1分)
↓
STEP 4: 動作確認 (1分)
↓
完了! 合計 約15分
▸ STEP 1: LM Studioをインストールしてサーバーを起動する
LM Studioは、自分のPCでAIモデルを動かすための無料アプリです。
ダウンロード
公式サイトからお使いのOSに合ったものをダウンロードしてください:
https://lmstudio.ai/download
対応OS: Mac / Windows / Linux
ダウンロードしたらインストールして、一度アプリを起動してください。
Linuxユーザーへの注意
LinuxではAppImage形式で配布されています。以下のコマンドで起動できます:
chmod +x LM_Studio-*.AppImage
./LM_Studio-*.AppImage
重要: Linuxでは、必ず一度GUIを起動してください。これをスキップすると、後で使うコマンドラインツール(
lms)がLM Studioを見つけられず、エラーになります。サーバーを起動する
LM Studioを起動したら、次にターミナルで「サーバーモード」を起動します。これで、Claude Codeからの接続を受け付けられるようになります。
# サーバーを起動(ポート1234で待ち受け)
lms server start --port 1234
起動できたか確認しましょう:
lms status
こう表示されれば成功です:
Server: ON
Port: 1234
▸ STEP 2: AIモデルをダウンロードしてセットする
LM Studioの中で動かすAIモデルを取得します。最初はibm/granite-4-microがおすすめです。軽量で高速、日常的なコーディング作業に十分な性能があります。
# モデルをダウンロード(数分かかります)
lms get ibm/granite-4-micro
ダウンロードが終わったら、モデルを「ロード」(メモリに読み込み)します:
# モデルをメモリに読み込む
lms load ibm/granite-4-micro --context-length 32768
context-length とは?
--context-length 32768 は「AIが一度に覚えていられる文章の量」です。数字が大きいほどたくさん覚えていられますが、そのぶんメモリを消費します。| 設定値 | どうなるか |
|---|---|
| 4096 | Claude Codeでは使えません(すぐに「記憶」があふれます) |
| 16384 | 最低限。短い会話ならなんとか |
| 32768 | おすすめ。日常作業にはこれで十分 |
| 65536 | メモリに余裕がある方向け |
Claude Codeは裏側でたくさんの情報(計画、差分、ツール情報、会話の履歴など)を同時に扱うので、4096では足りません。32768(32K)以上を推奨します。
モデルがちゃんとロードされたか確認:
lms ps
granite-4-micro が表示されていればOKです。
▸ STEP 3: Claude Codeの接続先をローカルに切り替える
ここが今回のキモです。たった2行のコマンドで、Claude Codeの接続先が「Anthropicのクラウド」から「自分のPCのLM Studio」に切り替わります。
export ANTHROPIC_BASE_URL=http://localhost:1234
export ANTHROPIC_AUTH_TOKEN=lmstudio
これだけです。
ANTHROPIC_BASE_URL— Claude Codeが「どこに接続するか」を決める設定。localhost:1234は「自分のPC上のポート1234番」という意味ですANTHROPIC_AUTH_TOKEN— 認証用の文字列。LM Studioは認証チェックをしないので、なんでもOKです(lmstudioはダミーの値)
ターミナルを開くたびに設定するのは面倒?
上のコマンドはターミナルを閉じるとリセットされます。毎回自動で設定されるようにするには、
.bashrc(シェルの設定ファイル)に書き込みます:echo 'export ANTHROPIC_BASE_URL=http://localhost:1234' >> ~/.bashrc
echo 'export ANTHROPIC_AUTH_TOKEN=lmstudio' >> ~/.bashrc
source ~/.bashrc
これで、新しいターミナルを開いても自動で設定されます。
▸ STEP 4: Claude Codeを起動して動作確認
いよいよ起動です:
claude --model ibm/granite-4-micro
以下のようになれば成功です:
- Claude Codeのプロンプトが表示される
- 質問を入力すると返答が返ってくる
- API料金に関する表示が出ない
おめでとうございます! これでクラウドなし・料金ゼロのClaude Code環境が動いています。
💡 もっと便利に使うためのTips
▸ 便利ツール: claude-local コマンド
毎回環境変数を設定するのが面倒なら、専用のコマンドを作ってしまいましょう:
# ~/bin ディレクトリを作成
mkdir -p ~/bin
# claude-local コマンドを作成
cat > ~/bin/claude-local << 'SCRIPT'
#!/usr/bin/env bash
export ANTHROPIC_BASE_URL=http://localhost:1234
export ANTHROPIC_AUTH_TOKEN=lmstudio
exec claude "$@"
SCRIPT
# 実行権限を付与
chmod +x ~/bin/claude-local
# パスに追加
export PATH="$HOME/bin:$PATH"
以降は
claude-local と打つだけでローカルLLMにつながります。クラウド版を使いたいときは通常の claude を使えばいいので、使い分けも簡単です。▸ VS Codeから使う場合
VS Codeの Claude Code 拡張機能を使っている方は、
settings.json に以下を追加してください:"claudeCode.environmentVariables": [
{
"name": "ANTHROPIC_BASE_URL",
"value": "http://localhost:1234"
},
{
"name": "ANTHROPIC_AUTH_TOKEN",
"value": "lmstudio"
}
]
VS Code を再起動すると、拡張機能がローカルLLMに接続します。
▸ スマホから使う(SSH経由)
自宅にLM Studioが動いているPCがあれば、外出先からスマホでSSH接続して同じClaude Code環境を使えます。TERMIUSなどのSSHクライアントアプリを使います。
あなたのスマホ(TERMIUSアプリ)
↓ SSH接続(インターネット経由)
自宅のPC(LM Studio + Claude Code)
↓
回答が返ってくる
サーバー側で
.bashrc に環境変数を設定済みなら、SSH接続するだけで自動的にローカルLLM構成になります。確認方法:# SSH接続後に確認
echo $ANTHROPIC_BASE_URL
# → http://localhost:1234 と表示されればOK
⚠️ 注意:
.profile から .bashrc を読み込む設定が必要な場合があります:# ~/.profile に以下を追加
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
活用例:
- 通勤電車で5分 → 昨日のPRをレビュー
- 昼休みに10分 → 設計メモを整理
- 帰宅後に15分 → じっくり設計検討
⚙️ モデルの選び方と使い分け
▸ 普段使い: granite-4-micro(軽量・高速)
| 特徴 | 内容 |
|---|---|
| サイズ | 軽量(数GB) |
| 速度 | 高速 |
| 必要メモリ | 16GB〜 |
| 得意なこと | コードレビュー、差分の要約、設計の整理 |
| 苦手なこと | 自由な発想、クリエイティブな生成 |
日常作業にはこれで十分です。常時ロードしておいて、いつでも使える状態にしておくのがおすすめです。
▸ 本気モード: gpt-oss-120b(大型・高性能)
| 特徴 | 内容 |
|---|---|
| サイズ | 62.76 GB(大きい!) |
| 速度 | 数十秒〜数分/回答(CPUだと遅い) |
| 必要メモリ | 64GB〜(推奨96GB) |
| 得意なこと | 深い思考が必要な設計検討、複雑な推論 |
| 苦手なこと | 長時間の連続使用(メモリ消費が激しい) |
必要なときだけロードして使う「スポット運用」がおすすめです。
▸ モデルの切り替え方
# 日常はgraniteを使う
lms load ibm/granite-4-micro --context-length 32768
# 本気タスクのとき → graniteをおろして120Bに切り替え
lms unload ibm/granite-4-micro
lms load gpt-oss-120b --context-length 32768
# 終わったらgraniteに戻す
lms unload gpt-oss-120b
lms load ibm/granite-4-micro --context-length 32768
やってはいけないこと:
- 2つのモデルを同時にロードする → メモリ不足でPCがフリーズする可能性あり
- 120Bで長時間作業する → CPU推論だととても遅い
- context-length 65536を常用する → メモリを大量消費する
⚙️ Python SDKからの利用
自分でPythonプログラムを書いてLM Studioに接続することもできます:
from anthropic import Anthropic
# 接続先をローカルに変更するだけ
client = Anthropic(
base_url="http://localhost:1234",
api_key="lmstudio",
)
message = client.messages.create(
max_tokens=1024,
messages=[{"role": "user", "content": "Hello from LM Studio"}],
model="ibm/granite-4-micro",
)
print(message.content)
Anthropicの公式Python SDKがそのまま使えます。
base_url を変えるだけです。⚙️ 困ったときは — トラブルシューティング
| こんな症状が出たら | 原因 | 対処法 |
|---|---|---|
| Claude Codeがクラウドに接続してしまう | 環境変数が設定されていない | echo $ANTHROPIC_BASE_URL で確認。空なら STEP 3 をやり直す |
| 「接続できない」エラーが出る | LM Studioのサーバーが起動していない | lms status で確認。ONでなければ lms server start --port 1234 |
| 何も返答がない | AIモデルがロードされていない | lms ps で確認。何も表示されなければ STEP 2 をやり直す |
| ENOENT エラー(Linuxのみ) | LM StudioのGUIを起動していない | 一度GUIアプリを起動してから、再度コマンドを試す |
| 途中で会話がおかしくなる | context-lengthが小さすぎる | --context-length 32768 以上でモデルを再ロードする |
| Tool呼び出しが動かない | モデルが対応していない | granite か gpt-oss を使う |
| 回答が異常に遅い | 大型モデルをCPUで動かしている | graniteに切り替える。GPUがあれば改善される |
⚙️ まとめ
必要なもの:
ソフトウェア: LM Studio + Claude Code CLI
AIモデル: ibm/granite-4-micro(日常用)
設定: 環境変数たった2つ
構築時間: 約15分
手に入るもの:
・毎月のAPI料金ゼロ
・ネットなしでも動く
・Claude Codeの機能がそのまま使える
・スマホからも同じ環境にアクセス
・モデルを切り替えて用途に合わせた使い分けができる
AIを「賢くする」ことも大事ですが、「いつでも安定して使えるようにする」ことの方が実務では効きます。graniteのような軽量モデルでも、CLAUDE.md(プロジェクトごとの設定ファイル)で振る舞いを固定すれば、十分に頼れる作業パートナーになります。
ぜひ試してみてください。
⚙️ 参考リンク
この記事はLM StudioとClaude Codeを使ったローカルLLM開発環境の構築記録です。
⚙️ Tech Series – T-06 🔧
Engineering the future…