
ローカルLLMをAIコーディングの補助に使えるか検討した
- 日本語
- ローカルLLM
- AIコーディング
- Codex
- LLM
#はじめに
AIコーディングを日常的に使うようになり、モデルの性能とは別の問題が気になるようになった。
利用量だ。
私はCodexを使いながら、4つほどのプロジェクトを並行して進めることがある。
一つのプロジェクトだけなら問題にならなくても、複数の作業を同時に進めるとモデルの利用量はかなり増える。
そこで、
すべてをクラウドのフロンティアモデルへ任せる必要があるのか
を考えるようになった。
その候補としてローカルLLMを試すことにした。
#フロンティアモデルを完全に置き換えたいわけではない
最初から、
今後はすべてローカルLLMで開発する
と考えていたわけではない。
設計、複雑な修正、大きなリファクタリングなどは、現在のフロンティアモデルへ任せた方が安心できる。
一方で、日常の開発にはそれほど難しくない作業も多い。
- 小さな修正
- 調査
- コードの読み取り
- 定型的な変更
- サブタスクの切り出し
こうした作業の一部だけでもローカルへ分散できれば、クラウド側の利用量を抑えられるかもしれない。
#4プロジェクト並行だと消費量の影響が大きい
私の使い方では、AIコーディングを一つのリポジトリだけで使うことは少ない。
その日の状況によって、複数のプロジェクトを行き来する。
Codex ├─ Project A ├─ Project B ├─ Project C └─ Project D
それぞれで調査や実装を進めれば、当然コンテキストも増える。
一つひとつのタスクは問題なくても、週単位で見ると利用量の差が大きくなる。
この運用を続けるなら、
一番賢いモデルを常に使う
だけではなく、
どの作業をどのモデルへ任せるか
を考えた方が良い。
#ローカルLLMは補助役として考える
ローカルLLMの良いところは、自分のPC上で動かせることだ。
クラウド側の週次レートを消費しない。
ネットワーク越しのAPIを使わずに済む場面もある。
ただし、ローカルで動くからといって、クラウドの最新モデルと同じ性能になるわけではない。
そのため、自分の中では次のような役割分担を考えた。
難しい設計・実装 ↓ フロンティアモデル 軽い調査・小さな修正 ↓ ローカルLLM
このくらいの使い分けなら現実的に見えた。
#手元のGPUでどこまでできるか
自宅のPCには16GB VRAMのRadeon GPUを搭載している。
この環境でローカルLLMを動かし、AIコーディングの補助として利用できるか試し始めた。
モデルサイズが大きくなるとVRAMだけでは足りず、RAMへ一部を逃がすことも考える必要がある。
そのため、
- 20Bクラスはどこまで動くか
- 27Bクラスは実用になるか
- もっと大きなモデルを使うには何が必要か
というハードウェア側の興味も出てきた。
この部分は後からローカルLLM専用の記事として整理する。
#別のクラウドモデルへ分散する方法もある
利用量を分散する方法はローカルLLMだけではない。
複数のAIサービスを契約しているなら、別のクラウドモデルへ一部の作業を任せる方法もある。
ただ、自分の場合はCodexでかなり安定した開発環境ができている。
無理に別の環境へ移すより、まずCodexを中心にして、補助として別モデルを使う方が自然だった。
#このあとAstraの利用量がさらに気になった
この時点では、GPT-6 AstraをAIコーディングで使っていた。
性能面ではかなり良い。
しかし、複数プロジェクトを並行して進めると、週単位の利用量が想定以上に増えた。
その結果、モデルの性能だけではなく「継続して使える量」をかなり意識するようになった。
GPT-6 Astra mediumでは4プロジェクト並行開発のレートが足りなかったに、そのときの状況をまとめている。
#まとめ
ローカルLLMを検討した理由は、フロンティアモデルを置き換えたいからではなかった。
4つほどのプロジェクトを並行してAIコーディングすると、クラウド側の利用量が大きくなる。
そこで、
フロンティアモデル + ローカルLLM
という使い分けを考え始めた。
今後はモデルの性能だけではなく、利用量、速度、ハードウェア、作業の難しさまで含めて役割を決めていくことになりそうだ。