Slide 1

Slide 1 text

AIは『対話』の時代から『自律 (Agentic)』の時代へ ローカルLLMとVSCode/OpenCodeで 構築する次世代開発のすべて 日本仮想化技術株式会社 技術部 遠山 洋平 2026年07月21日 1

Slide 2

Slide 2 text

会社の紹介 • 社名:日本仮想化技術株式会社 (VirtualTech Japan Inc.) • 設立:2006年12月 / 資本金:3,000万円 • 本社:東京都渋谷区渋谷1-8-1 • URL:http://VirtualTech.jp/ • 仮想化技術に関する研究、開発、各種調査、システムの構築等 • OpenStackやKubernetes、OpenShift、DevOps基盤の導入支援・新 規機能開発、ブログ等での積極的な情報発信 • GPUを活用した生成AI技術の研究、DB高速化技術等 2

Slide 3

Slide 3 text

前回の振り返り 今回は前回の内容の補足編です 3

Slide 4

Slide 4 text

生成AIとLLM 4

Slide 5

Slide 5 text

生成AIとは • AIとは人がこれまで手作業で行っていた判断や作業を支援するため のもの • 最近よく使われるAIは、文章を読んだり書いたりするのが得意な 「生成AI」 • 質問への回答だけでなく、要約、文章校正、翻訳、コードや画像、 動画の生成、音声から文字おこし等 5

Slide 6

Slide 6 text

LLMからAIエージェントへ • 少し前までは、AIに「チャットで質問して答えをもらう」使い方が中心 • 生成AIの進化により、文章作成やコード生成などの作業支援が可能になった • 現在は第3世代(LLM)から第4世代(Agentic AI)への移行期にある 世代 主な技術 代表例 1 ルールベースAI エキスパートシステム 2 機械学習AI Deep Learning、画像認識、音声認識 3 Foundation Model/LLM ChatGPT、Claude、Gemini 4 Agentic AI Deep Research、各種AIエージェント 6

Slide 7

Slide 7 text

最近注目のループエンジニアリングとは • 2026年6月頃から注目されている、AIコーディングエージェントの使い方 ◦ 時代はプロンプトエンジニアリングからループエンジニアリングへ • GoogleのソフトウェアエンジニアであるAddy Osmani氏が提唱 • プロンプトエンジニアリングは、人間が毎回AIに指示を出して修正を繰り返す • ループエンジニアリングは、目的だけを定義してAIが自動的に試行錯誤を繰り 返すシステムを設計する手法 ◦ AIの試行回数が増えるため、計算資源や電力需要が増加すると考えられる 7

Slide 8

Slide 8 text

ループは古い、これからはグラフだ!? • 2026年7月頃から出てきたばかりの、AIコーディングエージェントの新しい使い方 手法 違い ルー プ 実装→テスト→修正を繰り返す、基本的に一本道、「いつまで繰り返すか」を設計 グラ フ 複数のループやエージェントを接続、条件分岐・並列実行・後戻りがある、「次に どこへ進むか」を設計 8

Slide 9

Slide 9 text

SaaSのLLM • 代表的なもの ◦ OpenAI ChatGPT / Codex ◦ Anthropic Claude / Claude Code ◦ Google Gemini • これらはクラウド上で動くため、高性能なモデルを手軽に使える • 最新機能や性能の高いモデルをすぐ使えるのが強み • 利用料金やデータの扱いは意識する必要あり 9

Slide 10

Slide 10 text

ローカルLLM • ローカルLLMは、自分のローカルマシンやサーバーで動かすLLM • 代表的な実行環境として LM Studio, Ollama, llama.cpp, vLLM • インターネット接続依存せず、自環境で完結して使えるのが特徴 • モデル選定や環境構築は必要だが、使い方がはまると非常に便利 • SaaS LLMを補うものであって、代替にはならないと言う認識が必要 10

Slide 11

Slide 11 text

LLMの比較 項目 SaaS LLM ローカルLLM 導入 すぐ使える 構築が必要 性能 高性能モデルを使いやすい 環境に左右 コスト 継続課金になりやすい 初期費用のみ データ 外部送信あり 手元で完結 軽作業 やや贅沢 気軽に回せる 重作業 対応可能 厳しい場合も 用途 校正・変換・たたき台 調査・設計・レビュー → 用途に応じて使い分ける・組み合せるのが現実的 11

Slide 12

Slide 12 text

ローカルLLMのツール 初めての利用ではLM StudioまたはOllamaをおすすめ 種類 概要 LM Studio GUIが使いやすいツール。モデルをGUIして検索で利用。基本機能は CLIも利用可能 Ollama シンプルなツール。シンプルなチャットUI、基本はDockerのような CLI操作。なぜか海外スレでは評判が悪い。Ollama Cloudが便利 llama.cpp 上の二つのバックエンドで利用。ビルドして直接使える。基本的にコ ア部分しかない。クライアントおよびサーバーとして利用可能 vLLM LLMサーバーとして使う場合の候補。並列実行に強い AnythingLLM ローカルLLMにネット検索、RAG、モデルルーティング機能等を追加 12

Slide 13

Slide 13 text

AIエージェントとは いろいろな機能のAIエージェントがあります。 OpenClawとかHermes Agentは今、話題ですよね。 分類 何をしてくれる? 代表的なもの 開発を支援するAI エージェント コーディング、テスト、 リファクタリング Codex、Claude Code、 OpenCode、Goose、Cline 仕事を支援するAI エージェント RAG、文書作成、情報整 理、メール、予定管理 AnythingLLM、OpenClaw、 NemoClaw、Dify 複雑な作業を自動化 するAIエージェント 複数のツールを組み合わ せてタスクを実行 OpenHands、Hermes Agent 13

Slide 14

Slide 14 text

開発を支援するAIエージェントの使い分け 開発支援AIツールは大きくわけて4つ 分類 概要 代表的なもの 自動補完型 コード入力中に次のコードや関数を GitHub Copilot 提案し、実装を支援 対話型 自然言語による対話を通じて設計・ GitHub Copilot, ChatGPT, Claude, 実装・調査を支援 Gemini IDE統合エー ジェント型 IDEと連携し、ファイル編集やコマ GitHub Copilot, Cursor, Codex, ンド実行を含む複数工程を自律的に Continue, Cline 実行 エージェン ト型 ファイル編集・コマンド実行・Git 操作などを自律的に実行。CLIで操 作 GitHub Copilot, Codex, Claude Code, OpenCode, Goose, Continue, Cline 14

Slide 15

Slide 15 text

エージェント型って怖くないの? 一応AIエージェントには「こういう時はこうしなさい」と指示する方法がありますが、指示書 に書いていてもAIは判断を誤ることがありますし、賢過ぎてこんな抜け道を見つけてしまうこ ともあります(元Post: https://x.com/sluongng/status/2060746160558543217 )。 • AIを動かす環境のアカウント権限や設定に気をつけましょう • 作成したコードのセキュリティーにも気を使いましょう 15

Slide 16

Slide 16 text

生成AIとセキュリティ • 「生成AIが生成するコードは安全であるとは限らない」という認識は必要 ◦ 人間が書いたコードも生成AIが生成したコードも一緒 ◦ 今日安全だったコードが明日も安全とは限らない ▪ モジュール、ライブラリーに対するサプライチェーン攻撃対策も必要 ▪ 最近Node npm, Python pipが頻繁に狙われている • セキュリティーに対応するためにDevSecOps ◦ 開発の初期段階からCI/CDを組み込む ◦ セキュリティーテストとコードレビューの自動化 ◦ 運用中のソフトウェアの継続的なモニタリング 16

Slide 17

Slide 17 text

LLMの活用例 17

Slide 18

Slide 18 text

私がローカルLLMを使う理由 • SaaSのLLMを使うほどではない作業を、気軽に任せたいから ◦ 単位変換、文書校正 • 外に出せない情報を含む情報の整理作業に • ローカルリソースの制御をAIに実行してもらう場合 • 節約のため ◦ 初期→ローカルLLM、仕上げ→SaaSのLLM 18

Slide 19

Slide 19 text

作業の重さでLLMを切り替え 19

Slide 20

Slide 20 text

ローカルLLMを使い物にするテクニック(1) • サーバー側を調整する ◦ コンテキスト長を適切に設定 ◦ KVキャッシュの余裕を意識 ◦ 量子化は軽さと品質のバランスで選ぶ ▪ メモリー消費量を取るか、品質重視するかで選択 • 適切なモデルを選ぶ ◦ チャット用とコーディング用は分ける ◦ コーディングでは見かけの性能よりToolsを安定して扱えるモデルを選ぶ 20

Slide 21

Slide 21 text

ローカルLLMを使い物にするテクニック(2) • Tools ◦ 色々なコマンド実行、タスク、バンドルの「Tools」の利用をこなせる能力 ◦ ToDoリスト作成、ファイル作成、実行環境の作成、差分を取って必要箇所だ けを書き換え、コードの実行 ◦ 「Tools」がうまく使えないと、AIエージェント的には使えない 21

Slide 22

Slide 22 text

ローカルLLMを使い物にするテクニック(3) • カットオフ ◦ モデルにはカットオフ(いつまでの知識を持っているか)と言う概念がある ◦ カットオフ後の情報は知らない • クライアント側も合わせる ◦ コンテキスト長をサーバー設定に合わせる ◦ Max Output Tokensを含めて全体量を意識 22

Slide 23

Slide 23 text

ローカルLLMを使い物にするテクニック(4) • GPU ◦ 大きいモデルを快適に動かすには大容量のGPUメモリーが必要 ◦ LLMモデルとキャッシュなどがGPUに載る ◦ 複数GPUもサポートしているソフトウェアもある • Mac ◦ MLXを選ぶと速い ▪ Appleシリコン(M1以降)対応 ▪ Metalを使って推論が高速 ◦ GGUFだと正常に動くが、MLXでは問題発生することがまれにあるので注意 23

Slide 24

Slide 24 text

ローカルLLMを使い物にするテクニック(5) • GGUF ◦ 色々な量子化の種類があるが、基準はQ4_K_M ◦ これより小さいモデルは使うべきではない • MLX ◦ 基準は4ビットのモデルで良い ◦ nvfp4は攻めた量子化なので、Vison向けに使う時は要注意 ▪ 画像分析の品質の劣化が目立つ 24

Slide 25

Slide 25 text

GGUFの場合 (Ollama: Q4_K_M量子化) 25

Slide 26

Slide 26 text

MLXの場合 (Ollama: nvfp4量子化) 26

Slide 27

Slide 27 text

ローカルLLMソフトウェアの使い分け 今回はコーディングが主題なので詳細は省略しますが、作業によってソフトウェアを使 い分けています。 ブログに書いていますので、そちらもぜひご覧ください。 とことんDevOpsブログ • ローカルLLMサーバー ◦ LM Studio, Ollama, vLLM, Llama.cpp • AI Agent (Chat/RAG/Web検索/メモリと履歴/モデルルーティング) ◦ AnythingLLM • コーディング用エージェント ◦ Codex, OpenCode, Gooseで迷い中 27

Slide 28

Slide 28 text

コーディングと生成AIモデル 28

Slide 29

Slide 29 text

ローカルLLMとコーディング • ローカルLLMのモデルはチャット用途とコーディング用途で、向き 不向きがある • エージェント利用でなければ、どのモデルでも良い • エージェント利用の場合は、Toolsの扱いが安定しているモデルを 選ぶのが重要 • 英語圏では評価が高いモデルも日本語で使うと著しくコード品質が 落ちる傾向も ◦ Qwythos 9B V2は英語プロンプトではThinkingと最終結果がほぼ 一致、日本語では90点から30-40点の品質まで低下 29

Slide 30

Slide 30 text

おすすめローカルLLMモデル GPT-OSS 20B • おそらくローカルLLMを試す時に最初に動かすモデル • 16GBメモリーを実装したGPUがあればスムーズに動く (61.72token/s) ◦ NVIDIA RTX2000 Adaで動作を確認 • ある程度の環境で動かせば、コード生成は爆速 • Toolsの利用もOpenCodeでは安定動作を手元で確認 30

Slide 31

Slide 31 text

おすすめローカルLLMモデル Gemma4 26B A4B • 普段使いもコーディングも頼れるモデル • 社内でvLLMを使ってコンテキスト長 32K 128Kで動かしている • ある程度の環境で動かせば、コード生成は爆速 • Toolsの利用も安定 31

Slide 32

Slide 32 text

おすすめローカルLLMモデル Gemma4 12B QAT • Gemma4 26Bよりは劣るが、コーディングにも十分役立つ • 最近でたので試したら、意外と良かった • 頑張ればローカルでも動くレベルのモデル • 社内でllama.cppを使ってコンテキスト長262Kまで受け入れる設定 • ある程度の環境で動かせば、コード生成は爆速 • Toolsの利用も比較的に安定 32

Slide 33

Slide 33 text

おすすめローカルLLMモデル Ornith-1.0 9B • 2026/6/25登場の最新モデル • 397B, 35B, 9Bがオープンソースライセンスで公開 • エージェント型コーディングに特化 • Toolsの利用も安定 • たまに長考する場合も 33

Slide 34

Slide 34 text

今気になっているローカルLLMモデル InternScience Agents-A1 • InternScienceによるオープンモデル • 科学的・専門的推論が得意 • Tools対応、エージェント利用にも使えそう • 4BバージョンでQwen3.5/Qwen3.6 35B-A3B相当の性能をたたき出 す!? • Hugging faceからダウンロード可能 34

Slide 35

Slide 35 text

コーディングにローカルLLMを使う 35

Slide 36

Slide 36 text

VSCode x AIエージェント • VSCodeではいくつか使った中ではCline拡張機能がおすすめ • LLMサーバーからモデルを呼び出せる • Plan/Actで別のプロバイダーモデルを利用する機能 • エディタでそのまま質問、修正、コード生成ができるため、作業の 流れを止めにくい 36

Slide 37

Slide 37 text

Cline拡張機能のセットアップ • VSCodeにCline拡張機能をインストール • 利用するモデルの実行環境に合わせて設定 ◦ ローカルのLM StudioやOllamaをプロバイダーとして追加 ◦ 大規模なモデルを動かしたLLM Serverも利用可能 ▪ OpenAI Compatibleプロバイダで追加。URL、モデル、コンテキ スト長の設定等 37

Slide 38

Slide 38 text

Cline拡張機能の設定例(1) 38

Slide 39

Slide 39 text

Cline拡張機能の設定例(2) 39

Slide 40

Slide 40 text

Clineの利用例 • プロンプトを投げる • 自動的に実装からエラー修正、動作するところまで自動化 • 追加実装をプロンプトに入力 • 追加実装、エラー修正、動作確認まで自動化 → 能動的に動く(AIがモノを自動で作っていく) 40

Slide 41

Slide 41 text

Clineの利用例 41

Slide 42

Slide 42 text

Codex CLIでの利用 • Codex CLIはローカルLLMを利用可能 • モデルIDを確認して設定ファイルに書くことで利用可能 • すべてのローカルLLMモデルが使えるわけでない点に注意 ◦ 確認したモデル ▪ Gemma4:12b-it-qat ▪ Ornith:9b ▪ Qwen2.5-coder:7b 42

Slide 43

Slide 43 text

Codex CLIの設定例 • Codex CLIをインストール • 以下Ollamaの場合。LM Studioの場合はプロバイダー名を lmstudio と書く //このような設定を書く $ cat ~/.codex/ollama_gemma4.config.toml oss_provider = "ollama" model_provider = "ollama" model = "gemma4:12b-it-qat" //プロファイル指定で起動 $ codex --profile ollama_gemma4 43

Slide 44

Slide 44 text

Codex CLIの利用例 44

Slide 45

Slide 45 text

OpenCodeでの利用 • OpenCodeでもローカルLLMを利用可能 • モデルIDを確認して設定ファイルに書くことで利用可能 • コンテキスト長を意識して設定すると安定しやすい • すべてのローカルLLMモデルが使えるわけでない点に注意 • 状況に応じてSaaSのサービスと組合わせて利用 45

Slide 46

Slide 46 text

OpenCodeの設定例(1) • たとえばOllamaを起動 • 次に、APIで見えるモデルIDを確認 curl -s http://127.0.0.1:11434/v1/models | jq • ~/.config/opencode/opencode.jsonc に設定を書く • 他のLLMサーバーでも、設定の書き方はだいたい同じ ◦ Ollama: 11434 / LM Studio: 1234 46

Slide 47

Slide 47 text

OpenCodeの設定例(2) { } "$schema": "https://opencode.ai/config.json", "permission": { "edit": "allow", "bash": "allow", "read": "allow" }, "provider": { "ollama": { "npm": "@ai-sdk/openai-compatible", "name": "Ollama", "options": { "baseURL": "http://127.0.0.1:11434/v1" }, "models": { "ornith:9b": { "name": "Ornith 9B", "tools": true, "limit": { "context": 16384, "output": 4096 } } } } }, "model": "ollama/ornith:9b" 47

Slide 48

Slide 48 text

OpenCode利用例(1) 48

Slide 49

Slide 49 text

OpenCode利用例(2) 49

Slide 50

Slide 50 text

OpenCode利用例(VSCodeから利用) 50

Slide 51

Slide 51 text

エンプラのAIコーディングが自動化へシフト する? 51

Slide 52

Slide 52 text

デモ1 • VSCodeと拡張機能の組み合わせで、AIコーディング • デモのテーマ ◦ Golangで動くSnake gameを作成。ebitenを利用。たまに画面上 に星がランダムに画面内に5つ表示されて、その星をとると100 点がもらえる。敵の蛇はランダムに動いて欲しい。敵の蛇にぶつ かると1機消滅。3機消滅でゲームオーバー。ハイスコアを記録。 • 動画 ◦ Clineで実演 ◦ Continueで実演 52

Slide 53

Slide 53 text

デモ2 • OpenCodeで、AIコーディング • デモのテーマ ◦ Python3で動く、じゃんけんゲームをjyanken.pyというファイルを 作って実装。3回勝負で、最後に結果を集計。プレイヤーが勝った らお祝いをする。 • 動画 ◦ OpenCodeとLM StudioでローカルLLMコーディング 53

Slide 54

Slide 54 text

まとめ • 生成AIは単なる質問応答だけの存在から、調査・整理・コード生成を自動 で行う「AIエージェント」へ進化している • SaaS LLMとローカルLLMは用途に応じて使い分けることが重要 • AIエージェントツールをうまく活用することで、開発作業の多くを自動化 可能 • 生成AIが作成したコードも人間が作成したコードと同様にレビューが必要 • DevSecOpsや継続的なセキュリティチェックを組込み、安全に活用する 54

Slide 55

Slide 55 text

おまけ AIサブスク 月額 Google AI Plus 725円 (400 GB のストレージ) ChatGPT Plus 3000円 OpenCode Go 10ドル (1500円) 合計 月5,225円 • GitHub Copilot Proは最近解約 • 1ドル150円換算 55

Slide 56

Slide 56 text

参考文献 • 服部 佑樹 氏著「技術評論社 コードxAI ソフトウェア開発者のため の生成AI実践入門」 • 2027年までに、エージェント型コーディングを利用するエンジニ アリングチームの65%超が、統合開発環境(IDE)を「必要不可 欠」と考えなくなると予測、自動化プラットフォームに移行へ • Loop Engineering • Gemma4 テンプレートの修正パッチ • OpenCode • Cline 56