Wi-Fiのない飛行機の中でも、AIにコードを書かせたい。そんな場面に対応するオープンソースのデスクトップアプリが登場しました。
Googleが公式アカウントで紹介した「Gemma Chat」は、Gemma 4をMac上で完全ローカル実行し、プロンプトからコードを生成するバイブコーディング(Vibe Coding)ツールです。APIキーもクラウドも不要で、初回のモデルダウンロード後はインターネット接続なしで動作します。
この記事でわかること
- Gemma Chatの仕組みと主な機能
- Apple Silicon上でのセットアップ手順
- 選べる4つのモデルと動作要件
- OllamaやLM Studioとの違い
Gemma Chatとは
Gemma Chatは、GoogleのオープンソースLLM「Gemma 4」をApple Silicon Mac上でネイティブに動かすElectronアプリです。Googleデザイナーの Ammar Reshi氏が開発し、MITライセンスで公開しています。2026年4月の公開から約10日でGitHubスター数は500を超えました。
GoogleのGemma公式アカウントも「Offline vibe coding with Gemma 4」としてこのアプリを紹介しており、注目度の高さがうかがえます。
どんな課題を解決するのか
ローカルLLMを使ったコード生成には、これまでいくつかのハードルがありました。Ollamaやllama.cppでモデルを動かしても、コード生成とプレビューは別のツールで行う必要があります。環境構築にはPythonやCUDAの設定知識が求められ、初心者にとっては敷居が高い作業です。
Gemma Chatは、モデルの実行・コード生成・ライブプレビューを1つのアプリに統合しました。初回起動時にPythonの仮想環境作成からMLX-LMのインストール、モデルのダウンロードまで自動で完了します。ユーザーが手動で設定する項目はありません。
主な機能
ビルドモード
「レトロな電卓アプリを作って」「コーヒーショップのランディングページを作って」のように自然言語で指示すると、HTML・CSS・JavaScriptのコードを生成します。生成中はリアルタイムでプレビューが更新され、コードが書かれていく様子を確認できます。
内部では、モデルの出力からXML形式のアクション(ファイル書き込み、bashコマンドなど)を解析し、実行結果を次のターンにフィードバックするエージェントループが動いています。1回のユーザーメッセージにつき最大40ラウンドの反復が可能です。
生成されたファイルは会話ごとにサンドボックス化されたワークスペースに保存されるため、プロジェクト間でファイルが混ざることはありません。
チャットモード
通常の会話型AIとしても使えます。Web検索、URL取得、計算、bashコマンドの実行といったツールにも対応しており、コード生成以外の用途でも活用できます。
音声入力
ブラウザ内で動作するWhisper(transformers.js)による音声認識を搭載しています。音声データもローカル処理されるため、外部に送信されません。
モデルの切り替え
実行中に4つのGemma 4バリアントをホットスワップで切り替えられます。タスクの軽重に合わせてモデルを選択できるのは、ローカル実行ならではの利点です。
選べるモデルと動作要件
| モデル | サイズ | 用途 | 推奨RAM |
|---|---|---|---|
| Gemma 4 E2B | 約1.5 GB | 簡単なQ&A、軽いタスク | 8 GB |
| Gemma 4 E4B(推奨) | 約3 GB | 速度と性能のバランス | 8 GB |
| Gemma 4 27B MoE | 約8 GB | より高度な推論 | 16 GB以上 |
| Gemma 4 31B | 約18 GB | 最高品質 | 32 GB以上 |
動作にはApple Silicon搭載のMac、Python 3.10〜3.13、Node 20以上が必要です。推奨モデルのGemma 4 E4Bであれば、M3チップ・16 GB RAMの環境で毎秒40〜60トークンの生成速度が出ます。コードがエディタにスクロール表示される速度は、人間がタイピングするのとほぼ同じです。
なぜMLXなのか
Gemma ChatがOllamaやllama.cppではなくMLXを採用した理由は、Apple Siliconのアーキテクチャにあります。
Apple Siliconでは、CPUとGPUが同じ物理メモリを共有するユニファイドメモリアーキテクチャを採用しています。MLXはこの設計を前提に作られたApple公式のフレームワークで、テンソルのコピーなしにGPUがCPUと同じメモリ領域を直接読み書きします。
この最適化により、MLXはllama.cppと比較して20〜50%高速な推論速度を実現しています。Gemma Chatが軽快に動く背景には、このフレームワーク選択があります。
セットアップ手順
ターミナルで以下のコマンドを実行するだけです。
git clone https://github.com/ammaarreshi/gemma-chat-public.git
cd gemma-chat-public
npm install
npm run dev
初回起動時に、Pythonの検出→仮想環境の作成→MLX-LMのインストール→モデルのダウンロード(約3 GB)が自動で行われます。完了すればすぐにバイブコーディングを始められます。
Pythonが未インストールの場合は、事前にbrew install python@3.13で導入しておきます。
配布用の.dmgファイルを作成する場合はnpm run distを実行します。生成されたファイルをApplicationsフォルダにドラッグするだけでインストールできます。
OllamaやLM Studioとの違い
OllamaやLM Studioもローカルでのモデル実行に対応していますが、Gemma Chatとは目的が異なります。
Ollamaはモデルの管理と推論サーバーとしての機能に特化しており、コード生成やプレビューは別のフロントエンドが必要です。LM Studioは対話型のGUIを備えていますが、コードのライブプレビュー機能はありません。
Gemma Chatは「プロンプトから完成物を見る」までの体験を1つのウィンドウに集約している点で、バイブコーディング専用ツールとしての立ち位置が明確です。対応モデルがGemma 4に限定される代わりに、セットアップの手間を極限まで減らしています。
制約と注意点
Gemma Chatにはいくつかの制約があります。Apple Silicon Macでしか動作しないため、Intel MacやWindows・Linuxユーザーは利用できません。また、対応モデルがGemma 4シリーズに限定されており、Claude やGPTなど他のモデルは使えません。
生成できるコードはHTML・CSS・JavaScriptが中心です。PythonやRustなどのバックエンド言語のプロジェクトには向いていません。Gemma 4 E4B(推奨モデル)は3 GBと軽量ですが、その分、大規模なコード生成や複雑なロジックの推論ではクラウドのLLMに及ばない場面もあります。
あくまで「オフラインでのバイブコーディング」というコンセプトの実証であり、本格的な開発環境を置き換えるものではありません。しかし、プロトタイプの素早い作成や、ネット接続なしでアイデアを形にしたい場面では十分に実用的です。
まとめ
Gemma Chatは、ローカルLLMの敷居を一段下げるツールです。モデルのダウンロードから推論環境の構築、コード生成、プレビューまでがワンパッケージにまとまっており、Apple Silicon Macがあればすぐに試せます。オフライン環境でのプロトタイピングや、プライバシーを重視するユーザーにとって、選択肢の1つになるでしょう。