【完全ローカル】Ollama × VS Code(Continue)で構築する「情報漏洩ゼロ」の無料AI開発環境(Qwen2.5-Coder対応)

近年、GitHub CopilotやCursor、Claude 3.5 Sonnetなどの登場により、AIを活用したシステム開発は当たり前のものとなりました。しかし、企業のソースコードや機密データを外部のクラウド(SaaS型AI)に送信することには、常に情報漏洩や規約違反のリスクが付きまといます。

「企業のセキュリティポリシーが厳しく、外部AIツールが使えない」「社外秘のソースコードをAIに読み込ませたいが、送信されるのが不安」

そうしたエンジニアやITビジネス層の課題を完璧に解決するのが、ローカルマシン上でAIを完結させる**「完全ローカルLLM開発環境」**です。本記事では、ローカルLLMの実行エンジンである Ollama と、VS Codeの強力なオープンソース拡張機能 Continue、そして現時点で最高峰のコーディング用ローカルLLM Qwen2.5-Coder を組み合わせ、セキュリティと実用性を兼ね備えた無料のAI開発環境を構築する手順を徹底解説します。


1. なぜ「Ollama × Continue」なのか?

完全ローカル環境を構築するメリットは、単に「セキュリティが安全である」という点に留まりません。以下のような強力なメリットが存在します。

  • 情報漏洩リスクがゼロ: すべての推論が自身のローカルPC(または社内LAN内のサーバー)で完結するため、インターネット接続を切断しても動作します。
  • 完全無料・無制限: API利用料金や月額サブスクリプション料金を気にせず、24時間何万回でもAIにコードを生成させることができます。
  • オープンソースモデルの進化: 近年のオープンソースLLM(OSS LLM)の進化は目覚ましく、特にAlibabaが公開した「Qwen2.5-Coder」は、商用の閉鎖型モデル(ClaudeやGPT-4など)に匹敵するコーディング性能を発揮します。

これらのローカルモデルをスムーズにハンドリングするために、モデルのライフサイクルを管理する Ollama GitHub リポジトリ と、VS CodeやJetBrainsなどの統合開発環境(IDE)にシームレスにAI機能を組み込める Continue 公式ドキュメント の組み合わせが、現在のデファクトスタンダードとなっています。


2. システム構成と準備

今回は、以下の構成でローカルAI開発環境を構築します。

  • OS: Windows / macOS / Linux
  • LLM実行エンジン: Ollama
  • IDE(統合開発環境): VS Code
  • AIアシスタントプラグイン: Continue(VS Code拡張機能)
  • 使用するLLM:
    • チャット・リファクタリング用: qwen2.5-coder:7b-instruct(または14b/32bなど、マシンスペックに合わせて選択)
    • コードのタブ補完(Autocomplete)用: qwen2.5-coder:1.5b-base

マシンスペックの目安

ローカルLLMを動かすには、GPU(VRAM)の性能が重要です。

  • M1/M2/M3 Mac (Unified Memory 16GB以上): 7bクラスのモデルが非常に快適に動作します。
  • Windows (NVIDIA GPU / VRAM 8GB以上): 7bクラスが快適に動作します。VRAMが4GB〜6GBの場合は、1.5b3bクラスの軽量モデルを選択することで実用的な速度を確保できます。

SaaS型の高機能なエディタ(Cursor等)の導入やデプロイを検討している方は、過去に執筆した Cursor・Vercel・Supabaseによるモダン開発ガイド も参考になりますが、今回の構成はそれらを完全にローカルに置き換えるものとなります。


3. 完全ローカルAI環境の構築手順

ここからは、具体的な手順をステップバイステップで説明します。

Step 1: Ollamaのインストールとモデルのダウンロード

  1. Ollamaの公式サイトから、お使いのOSに対応したインストーラーをダウンロードし、インストールします。
  2. ターミナル(Windowsの場合はPowerShellまたはコマンドプロンプト)を開き、以下のコマンドを実行してモデルをダウンロード(プル)します。
# チャット・指示用の7Bモデル(指示に従ってコードを書くのが得意なモデル)
ollama pull qwen2.5-coder:7b-instruct

# タブ自動補完用の1.5Bモデル(高速なコード補完に適した軽量モデル)
ollama pull qwen2.5-coder:1.5b-base

※初回ダウンロード時は数GBのデータ転送が発生するため、Wi-Fi環境等に注意してください。

Step 2: VS Codeへの「Continue」拡張機能の導入

  1. VS Codeを起動し、拡張機能マーケットプレイス(Ctrl+Shift+X / Cmd+Shift+X)を開きます。
  2. 検索窓に 「Continue」 と入力し、Continue公式の拡張機能(パブリッシャー: Continue)をインストールします。

Step 3: Continueの設定ファイル(config.json)のカスタマイズ

Continueをインストールすると、画面左側のサイドバーにContinueのアイコン(「C」のロゴ)が表示されます。設定をOllamaとQwen2.5-Coderに最適化するために、設定ファイルを直接編集します。

  1. Continueのチャット画面の右下にある**歯車アイコン(Configure)**をクリックして、config.jsonを開きます。
  2. config.jsonの内容を以下のように編集して保存します。
{
  "models": [
    {
      "title": "Qwen2.5-Coder 7B (Ollama)",
      "provider": "ollama",
      "model": "qwen2.5-coder:7b-instruct"
    }
  ],
  "tabAutocompleteModel": {
    "title": "Qwen2.5-Coder 1.5B Autocomplete",
    "provider": "ollama",
    "model": "qwen2.5-coder:1.5b-base"
  },
  "customCommands": [
    {
      "name": "test",
      "prompt": "{{{ input }}}\n\n上記のコードに対するユニットテストを記述してください。適切なテストフレームワークを使用し、エッジケースもカバーしてください。",
      "description": "ユニットテストを作成"
    }
  ],
  "contextProviders": [
    {
      "name": "code",
      "options": {}
    },
    {
      "name": "docs",
      "options": {}
    }
  ],
  "slashCommands": [
    {
      "name": "edit",
      "description": "選択したコードを直接編集"
    },
    {
      "name": "share",
      "description": "チャット履歴をMarkdownとしてエクスポート"
    }
  ]
} 
}

設定ファイルを保存すると、自動的にContinueが新しい設定を読み込みます。詳細なカスタマイズオプションについては、QwenのHugging Faceリポジトリ や公式リファレンスを参照してください。


4. Qwen2.5-Coderの実力検証と使い方

設定が完了したら、さっそく動作を確認してみましょう。

① タブ自動補完(Tab Autocomplete)

VS Code上でPythonやTypeScriptのコードを書き進めると、薄いグレーの文字で補完候補が自動で提示されます。これらはすべてローカルにプルした qwen2.5-coder:1.5b-base によってミリ秒単位の超高速で計算・提案されています。確定するには Tab キーを押すだけです。

② サイドバーチャット(Cmd/Ctrl + L)

コードブロックを選択した状態で Cmd + L (Mac) または Ctrl + L (Windows/Linux) を押すと、そのコードが自動的にチャットコンテキストに読み込まれます。右側のチャット画面で「このコードのリファクタリングをして」「バグを指摘して」と日本語で入力すると、瞬時に正確なローカル回答が返ってきます。

③ インラインコード生成(Cmd/Ctrl + I)

コードエディタ上で直接 Cmd + I / Ctrl + I を押すと、エディタ上部にプロンプト入力欄が表示されます。そこに「JavaScriptでFizzBuzz関数を作成して」と入力すると、ソースコードに直接コードが挿入され、差分(Diff)が赤と緑のインライン表示で確認できます。


5. トラブルシューティング(よくあるエラーと解決策)

ローカルLLM環境の構築において、多くの開発者が遭遇しやすい代表的なエラーと、その具体的な対策について解説します。

接続エラー: 「Connection Refused」または「Failed to fetch」が表示される

原因: VS CodeのContinue拡張機能が、ローカルで実行されているはずのOllamaデーモン(ポート:11434)と通信できていない場合に発生します。

解決方法:

  1. Ollamaがバックグラウンドで起動しているか確認する: タスクトレイ(Windows)やメニューバー(Mac)にOllamaのアイコンが表示されているか確認してください。起動していない場合は、アプリケーションから「Ollama」を実行します。
  2. ポートが競合していないか確認する: ターミナルで curl http://localhost:11434 を実行し、Ollama is running というテキストが返ってくるか確認します。返ってこない場合、ポート11434が他のプロセスに占有されている可能性があります。
  3. 環境変数(CORS設定)の確認: ローカルホスト以外(コンテナ内など)からアクセスする場合、環境変数 OLLAMA_ORIGINS* に設定してOllamaを再起動する必要があります。

動作遅延: 推論速度が極端に遅い(1文字ずつ数秒かかる)

原因: LLMの推論処理がGPU(グラフィックボード)ではなく、CPUで実行されている可能性があります。

解決方法:

  1. Ollamaのログを確認する: Ollamaの起動ログでGPUが正しく認識されているか確認します(特にNVIDIAのCUDAやApple SiliconのMetal)。
  2. VRAM容量に対してモデルが大きすぎる: 例えばVRAM 8GBのGPUで、大きな量子化モデル(14Bや32B)を動かそうとすると、メインメモリ(RAM)へのスワップアウトが発生し、著しく速度が低下します。その場合は、7b3b など1クラス下の軽量モデルに落として試してみてください(例: ollama run qwen2.5-coder:3b-instruct)。

6. まとめ

OllamaとContinue、そしてQwen2.5-Coderを組み合わせることで、**「一切のデータがインターネットに出ない」「完全無料」**でありながら、商用AIに肉薄する開発支援環境を、わずか数分で手元のPCに構築できるようになりました。

機密性の高い業務システム開発やプライベートなクローズドソースのハックには、これ以上ない強力な布陣です。まずはご自身の手元で動かしてみて、その驚異的な応答性と快適なコーディング体験をぜひ体感してください。