22
24

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

インターネット無しでAIコードアシスタントをVSCodeとOllamaで構築【2アプローチ比較】

22
Last updated at Posted at 2026-04-05

はじめに:なぜローカルで動かすのか?

GitHub CopilotやClaude、ChatGPTはいずれもコードをリモートサーバーに送信する。Samsungが社員のChatGPT利用により機密ソースコードを外部漏洩させた事件は記憶に新しいが、同様のリスクはすべてのクラウドAIコーディングツールに存在する。

ローカルLLM環境なら:

  • コードが一切外部サーバーに送られない
  • APIコスト・レートリミットなし
  • オフライン環境でも動作する
  • 社内コードベースをそのままコンテキストに渡せる

VS Code + Ollamaでローカル環境を構築するアプローチは現在2つある。どちらを選ぶかは用途とトレードオフによる。


2つのアプローチ比較

比較項目 方法A:Copilot Chat + Ollama 方法B:Continue + Ollama
セットアップの手軽さ ⭐⭐⭐⭐⭐ 非常に簡単 ⭐⭐⭐ 設定ファイルが必要
GitHubアカウント 必要(無料プランでOK) 不要
チャット
タブ補完(インライン)
コードベース検索 (@codebase) 限定的
config管理 GUI操作のみ config.json で細かく制御
ツール呼び出し(エージェント) モデル依存 ✅(対応モデルのみ)
ライセンス Copilot Chat:独自 Apache 2.0

結論:チャットだけなら方法A、タブ補完も使いたいなら方法B。
両方インストールして使い分けることも可能だ。


共通の前提:Ollama のインストール

どちらの方法でもOllamaが必要だ。まずここから始める。

インストール

OS コマンド / 手順
macOS ollama.com/download からインストーラーをダウンロード、または brew install ollama
Linux curl -fsSL https://ollama.com/install.sh | sh
Windows ollama.com/download から .exe インストーラー(WSL2推奨)

📚 公式ドキュメント:https://docs.ollama.com/

動作確認

# ブラウザまたはターミナルでアクセス
curl http://localhost:11434
# → "Ollama is running" と表示されればOK

モデルをダウンロード

# チャット用(汎用)
ollama pull gemma4:e4b

# コーディング特化(補完向け)
ollama pull qwen2.5-coder:7b

# インストール済みモデル確認
ollama list

📚 利用可能なモデル一覧:https://ollama.com/library



方法A:GitHub Copilot Chat + Ollama(シンプル派向け)

特徴: VS Codeの組み込みCopilot Chatに直接Ollamaを接続。設定ファイル不要で最短5分で動く。
制限: タブ補完(インライン補完)は使えない。GitHubアカウントが必要(無料プランでOK)。


Step A-1:GitHub Copilot Chat 拡張をインストール

VS Code の拡張機能マーケットプレイスで "GitHub Copilot Chat" を検索してインストール。

🔗 直接リンク:marketplace.visualstudio.com - GitHub Copilot Chat

⚠️ 注意: VS Code 1.113以上、Ollama 0.18.3以上が必要。
GitHubへのログインが必要だが、無料プラン(GitHub Copilot Free)でOK。有料サブスクリプション不要。


Step A-2:ワンコマンドでVS Codeに接続(推奨)

# Ollamaが自動でVS Codeを検出して接続する
ollama launch vscode

📚 公式手順:https://docs.ollama.com/integrations/vscode

コマンド実行後、推奨モデルが表示される。Copilot Chatパネル下部の "Local" を選択すればOllamaモデルが使えるようになる。


Step A-3:手動設定(ollama launch が使えない場合)

  1. VS Code 右上のCopilot Chatアイコンをクリックしてサイドバーを開く
  2. ⚙️ 設定ギアアイコン をクリック → "Language Models" ウィンドウを開く
  3. "Add Models""Ollama" を選択
  4. エンドポイントURLを入力:
http://localhost:11434
  1. Ollamaに登録済みのモデルが自動で表示されるので選択する

Step A-4:使い方

VS Code上部のCopilotアイコンをクリック(または Ctrl/Cmd + Shift + I)でCopilot Chatが開く。

モデルピッカーで "Local" カテゴリからOllamaモデルを選択して普通にチャットする。

# チャット例
「このPython関数のバグを見つけて修正してください」
「このコードにユニットテストを追加して」
「このクラスの設計を改善するには?」

⚠️ 既知の注意点: 一部のモデルはCopilot ChatのAgentモードで ツール呼び出し(tool use)対応が必要。非対応モデルはチャット(Askモード)のみで使用可能。Qwen2.5-Coder系やGemma4は対応している。



方法B:Continue + Ollama(フル機能派向け)

特徴: チャット+タブ補完(インライン補完) の両方が使える。config.json でモデルを細かく制御可能。GitHubアカウント不要で完全にオフライン。


Step B-1:Continue 拡張をインストール

VS Code の拡張機能マーケットプレイスで "Continue" を検索してインストール。

🔗 直接リンク:marketplace.visualstudio.com - Continue

📚 公式ドキュメント:https://docs.continue.dev/quickstart

インストール後、サイドバーにContinueのアイコンが表示される。使いやすさのため、右サイドバーに移動することを推奨(ファイルエクスプローラーと同時に開ける)。


Step B-2:config.json を設定する

Continueの設定ファイルは ~/.continue/config.json にある。
VS Code のコマンドパレット(Ctrl/Cmd + Shift + P)で "Continue: Open Config File" を実行して開く。

📚 設定リファレンス:https://docs.continue.dev/reference

以下がチャット用モデルとタブ補完用モデルを分離した推奨構成だ:

{
  "models": [
    {
      "title": "Gemma 4 E4B (Chat)",
      "provider": "ollama",
      "model": "gemma4:e4b",
      "apiBase": "http://localhost:11434"
    },
    {
      "title": "Qwen2.5-Coder 7B (Chat)",
      "provider": "ollama",
      "model": "qwen2.5-coder:7b",
      "apiBase": "http://localhost:11434"
    }
  ],
  "tabAutocompleteModel": {
    "title": "Qwen2.5-Coder 3B (Autocomplete)",
    "provider": "ollama",
    "model": "qwen2.5-coder:3b",
    "apiBase": "http://localhost:11434"
  },
  "embeddingModel": {
    "title": "Nomic Embed",
    "provider": "ollama",
    "model": "nomic-embed-text",
    "apiBase": "http://localhost:11434"
  },
  "contextLength": 8192,
  "completionOptions": {
    "temperature": 0.1,
    "maxTokens": 512
  }
}

ポイント:

  • tabAutocompleteModel には FIM(Fill-in-the-Middle)対応モデル を必ず使うこと
  • embeddingModel を設定すると @codebase でコードベース全体を検索できる(要 ollama pull nomic-embed-text

Step B-3:基本操作

操作 ショートカット
チャットパネルを開く Cmd/Ctrl + L
選択コードをチャットに送る コード選択 → Cmd/Ctrl + L
インライン編集 Cmd/Ctrl + I
タブ補完を受け入れる Tab
タブ補完を却下する Esc
ファイルをコンテキストに追加 チャット欄で @file
コードベース検索 チャット欄で @codebase
ドキュメント参照 チャット欄で @docs

ハードウェア別モデル選定ガイド

Ollamaが標準で使う Q4_K_M(4bit量子化) は、メモリ削減と品質のベストバランスフォーマット。

🟡 RAM 8GB / GPUなし(CPU推論)

レスポンス速度:〜5 tokens/sec。動くが遅め。

役割 推奨モデル Ollamaコマンド 必要RAM
チャット Gemma 4 E2B ollama pull gemma4:e2b 〜2.5GB
チャット Phi-4 Mini ollama pull phi4-mini 〜2.3GB
補完 Qwen2.5-Coder 1.5B ollama pull qwen2.5-coder:1.5b 〜1.2GB
# 8GB環境向け最適化設定
export OLLAMA_MAX_LOADED_MODELS=1
export OLLAMA_NUM_PARALLEL=1

🟠 VRAM 6〜8GB(RTX 4060 / RX 6700 XT など)

レスポンス速度:40〜50 tokens/sec。快適に使える。

役割 推奨モデル Ollamaコマンド 必要VRAM
チャット Gemma 4 E4B ollama pull gemma4:e4b 〜3.5GB
チャット Qwen2.5-Coder 7B ollama pull qwen2.5-coder:7b 〜5.0GB
チャット Llama 3.3 8B ollama pull llama3.3:8b 〜5.5GB
補完 Qwen2.5-Coder 3B ollama pull qwen2.5-coder:3b 〜2.0GB

おすすめ組み合わせ: チャットに gemma4:e4b、補完に qwen2.5-coder:3b


🔴 VRAM 16〜24GB(RTX 4090 / RTX 4080 / RTX 5090 など)

レスポンス速度:15〜30 tokens/sec(31Bモデル)。品質が大幅に向上。

役割 推奨モデル Ollamaコマンド 必要VRAM
チャット Gemma 4 31B ollama pull gemma4:31b-q4_k_m 〜19GB
チャット Qwen2.5-Coder 32B ollama pull qwen2.5-coder:32b-q4_k_m 〜19GB
チャット DeepSeek-R1 14B ollama pull deepseek-r1:14b 〜9GB
補完 DeepSeek-Coder-V2 Lite ollama pull deepseek-coder-v2:lite 〜4.5GB

Gemma 4 31B はこのティアのキラーモデル。 Arena.aiオープンモデルランキング世界3位(2026年4月時点)の性能を、RTX 4090一枚でローカル実行できる。256Kトークンコンテキストにより大規模コードベース全体を読み込んでの設計相談も可能。


🟣 Apple Silicon Mac(統合メモリ)

AppleシリコンMacはCPUとGPUがメモリを共有する Unified Memory Architecture(UMA) のため、搭載RAM量がそのままモデルサイズの上限になる。

MacとRAM 推奨モデル 速度(目安)
M1/M2/M3 Air (8GB) Gemma 4 E4B / Phi-4 Mini 15〜25 tokens/sec
M1/M2/M3 Pro (16GB) Qwen2.5-Coder 7B 30〜45 tokens/sec
M3/M4 Pro (32GB) Gemma 4 26B MoE 20〜35 tokens/sec
M3/M4 Max (64GB+) Gemma 4 31B 15〜30 tokens/sec

トラブルシューティング

方法A:モデルがCopilot Chatに表示されない

# Ollamaが起動しているか確認
curl http://localhost:11434

# モデルが正常にダウンロードされているか確認
ollama list

VS Code を完全に再起動してから、再度 Add Models → Ollama を試す。
それでも失敗する場合、Help → Toggle Developer Tools でコンソールのエラーを確認する。

⚠️ エージェントモードで使えない場合: モデルがtool use非対応の可能性がある。Askモード(通常チャット)で使用するか、Qwen2.5-CoderなどのFunctionCalling対応モデルに切り替える。


方法B:補完が表示されない

# モデル名がconfig.jsonと一致しているか確認
ollama list

VS Code の Output パネル → "Continue" を選択してエラーログを確認する。
原因の9割はモデル名の不一致(例:qwen2.5-coder:7b vs qwen2.5-coder)。


共通:レスポンスが遅い

# GPUが使われているか確認
ollama ps
# "GPU layers" の数を確認(0なら完全CPU推論)

# NVIDIA環境でGPU使用率確認
nvidia-smi

0 GPU layers の場合はVRAM不足でCPUフォールバックしている。より小さいモデルに切り替えるか、量子化レベルを上げる(Q4_K_M → Q2_K)。


まとめ:どちらを選ぶか

チャットだけでいい、すぐ使いたい
  → 方法A(Copilot Chat + Ollama)

タブ補完も使いたい、設定を細かく制御したい、GitHubアカウントを使いたくない
  → 方法B(Continue + Ollama)

どちらも試したい
  → 両方インストールして使い分けもOK(同時使用も問題なし)
スペック 推奨チャットモデル 推奨補完モデル
RAM 8GB / GPUなし Gemma 4 E2B / Phi-4 Mini Qwen2.5-Coder 1.5B
VRAM 8GB Gemma 4 E4B / Qwen2.5-Coder 7B Qwen2.5-Coder 3B
VRAM 16GB+ DeepSeek-R1 14B DeepSeek-Coder-V2 Lite
VRAM 24GB+ Gemma 4 31B / Qwen2.5-Coder 32B DeepSeek-Coder-V2
Mac 16GB (統合) Qwen2.5-Coder 7B Qwen2.5-Coder 3B
Mac 32GB+ (統合) Gemma 4 26B MoE Qwen2.5-Coder 3B

参考リンク

Ollama

方法A(Copilot Chat)

方法B(Continue)

関連記事

22
24
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
22
24

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?