Upgrade to Pro — share decks privately, control downloads, hide ads and more …

AI駆動開発を支える技術

Sponsored · Your Podcast. Everywhere. Effortlessly. Share. Educate. Inspire. Entertain. You do you. We'll handle the rest. →
Avatar for You You
July 11, 2025

 AI駆動開発を支える技術

Avatar for You

You

July 11, 2025

Other Decks in Programming

Transcript

  1. 本発表について 話す内容 • AI駆動開発時代に頭に⼊れておくべき基礎知識 • AI駆動開発時代に念頭においておくべき考え⽅ • プロンプトエンジニアリング、コンテキストエンジニアリング 話さない内容 •

    開発ワークフロー全体の改善の話(次の機会に) • セキュリティとの向き合い⽅(次の機会に) • Claude Code / 他エージェントの具体的なテクニック(次の機会に) 対象になる⽅ • AI駆動開発、VibeCodingに少し触れていて、AIを使った開発が上⼿く扱い切れていないと感じる ⽅。
  2. AIコーディングエージェントの進化の振り返り • 2021年6⽉29⽇:GitHubがVisual Studio Code開発環境でのGitHub Copilotのテクニカルプレ ビューを発表 • 2023年7⽉:CursorがシリーズA(800万ドル調達、評価額5650万ドル)を調達。 •

    2023年12⽉:v0のベータ版がリリース • 2024年11⽉:Windsurfが正式発表 • 2025年2⽉:Cursorがバージョン0.46で⼤規模アップデート、AIエージェント機能追加やWeb 検索対応を強化 • 2025年2⽉24⽇:Anthropicが「Code with Claude」を研究プレビューで発表 • 2025年5⽉22⽇:Anthropicが「Code with Claude」イベントでClaude 4ファミリー(Claude Opus 4とClaude Sonnet 4)を発表、同時にClaude Codeが正式リリース ⋮ AIコーディングエージェントの主要イベントのタイムライン
  3. AIコーディングエージェントの分類 AIコーディングエージェントは4つの類型に分けられる 類型
 自律性
 主な機能
 代表ツール 
 特徴
 ①コード補完・支援型 


    低
 リアルタイム補完・提案 
 GitHub Copilot / Tabnine / Amazon CodeWhisperer / Codeium
 エディタに統合、即座に補完
 ②対話型アシスタント 
 中
 チャット形式でコード生成 
 ChatGPT / Claude / Cursor Chat / Continue.dev
 質問に応じてコード説明・生成
 ③統合開発プラットフォーム 
 中〜高
 開発環境全体を統合 
 Replit Agent / GitHub Copilot Workspace / Cursor Composer / Bolt.new
 ワンストップ開発環境
 ④自律型開発エージェント 
 高
 独立してタスク完了 
 Claude Code / Devin / SWE-agent
 AutoDev
 最小限の指示で自律実行

  4. AIエージェントの動作を考える AIコーディングエージェントの基本的な動き 1 7 • 理解:指⽰を解析し、プロジェクト情報を参照 ↓ • 計画:タスクを分解し、実⾏⼿順を決定 ↓

    • 実⾏:複数ツールを並列で動かしてコード修正 ↓ • 承認:変更内容をdiff表⽰でユーザーに確認 エンジニア個⼈がAIのアウトプットに与えられる影響は限定的
  5. AIコーディングエージェントの進化を⽀える要素技術 • Transformer/LLM基盤技術:GPT-3→GPT-4、Claude系列の⼤規模⾔語モデル進化 • VS Code エコシステム活⽤:既存開発環境のフォーク‧拡張による⾃然な統合 • コードベース意味理解:数億ベクトルでのプロジェクト全体インデックス化‧検索 •

    リアルタイム統合:エディタ内でのインライン提案‧差分表⽰‧コンテキスト認識 • エージェント⾃律実⾏:ファイル編集‧ターミナル実⾏‧ブラウザ制御の複合タスク処理 • マルチツール並列処理:Web検索‧コード実⾏‧思考推論の同時実⾏技術 • プロンプトキャッシュ最適化:⼤規模コンテキストの効率的処理‧コスト削減 AIコーディングエージェントはそれを⽀える要素技術とともに進化
  6. AIが解決できる開発の課題 • SWE-Benchは、「AIが実際のソフトウェア開発問題を解決できるかを測るテスト」。 • GitHubの実際のバグ報告や機能要求(Django、scikit-learnなど12の⼈気Pythonプロジェクトから 2,294問題を収集)を使って、AIエージェントがどれだけ⼈間のエンジニアのように問題解決できるか を評価する。 • 単純なコード⽣成ではなく、問題理解→調査→実装→テスト→修正の全⼯程を⾃律的に⾏う能⼒が問 われる。

    SWE-Benchでは70%以上のタスクをAIが解決可能 初期は1.96%しか解決できませんでしたが、2025年現在では33.83%(SWE-agent 1.0 + Claude 3.7 Sonnet)まで向上している。現在4つのバリエーション(Full、Verified、Lite、Multimodal)があ り、TRAEがSWE-bench Verifiedで75%を達成するなど。「本当に使えるAIエージェント」かどうかを 判定する業界標準ベンチマークとして急速に進歩している。 https://www.swebench.com/
  7. 考え⽅を変える③ 開発⽣産性があがって 楽できるようになった ただ楽できるようになっただけと考えると競争優位が保てない 単位時間あたりに出せる アウトカムの量が増えた 󰢄 󰢏 AIコーディングを「楽になった」と捉えるのは危険な発想です。競合他社も同じAIツールを使えるため、単純に楽に なっただけでは差別化できない。

    正しい視点は、「同じ時間でより多くの価値を⽣み出せるようになった」ことです。従来1週間で1つの機能しか作れな かったのが、AIと協働することで同じ期間で5つの機能を⾼品質で実装できる。つまり、アウトカムの⽣産量が5倍に なったということ。
  8. プロンプトエンジニアリング 基礎的なプロンプトテクニック カテゴリ
 テクニック名 
 具体例
 主な効果
 基本
 ロールプレイング 


    あなたは経験豊富なプロダクトマネージャーです 専門性向上
 基本
 Few-Shot Learning
 例1: 入力→出力、例2: 入力→出力、では次の場合は? パターン学習
 基本
 Chain of Thought
 段階的に考えて、ステップバイステップで解決してください 論理性向上
 構造化
 STAR法
 Situation/Task/Action/Resultの順で構造化してください 網羅性確保
 構造化
 5W1H指定
 誰が、何を、いつ、どこで、なぜ、どのように 情報整理
 構造化
 制約条件明示 
 300文字以内で、初心者にもわかるように、 JSON形式で出力 出力制御
 高度
 Tree of Thoughts
 3つの異なるアプローチで検討し、最適なものを選択 多角的検討
 高度
 Self-Consistency
 同一問題を 3回解いて、結果を比較検討してください 精度向上
 高度
 Critical Thinking
 この主張の根拠は?反対意見は?前提条件は正しい? 批判的思考
 実用
 タスク分解 
 作業を小さなステップに分けて、順番に実行してください 実行性向上
 実用
 出力検証
 回答後に自己チェックし、間違いがないか確認してください 品質保証
 実用
 コンテキスト継続 
 前回の会話を踏まえて、これまでの議論に基づいて 文脈維持

  9. コンテキストエンジニアリング③ コンテキストウィンドウの⽐較 モデル
 コンテキストウィンドウ 
 特徴
 主な用途
 Magic LTM-2
 100M

    トークン
 🏆 最大級(開発中)
 大規模コードベース解析
 Gemini 2.5 Pro
 1M-10M トークン
 🔬 研究・分析特化
 学術論文、法的文書解析
 Claude 4 Opus/Sonnet
 200K トークン
 ⚡ バランス型
 文書解析、コーディング
 GPT-4o/o1シリーズ
 128K トークン
 🎯 汎用性重視
 一般的な対話・開発
 Llama 4 Scout
 256K トークン
 🆓 オープンソース
 カスタム展開
 DeepSeek R1
 128K トークン
 💰 コスト効率
 予算重視の開発
 ⽬安:1トークン = 英語で約3.5⽂字、20万トークンで英語で焼く70万⽂字の情報を扱える。 10万⾏のコードベースをLLMに読ませると約150万トークン。コード量が増えるにつれて、AIエージェ ントのパフォーマンスは落ちると考える。
  10. コンテキストエンジニアリング④ AIエージェントに渡せるコンテキストの種類 コンテキスト種類 
 定義・役割 
 実装方法
 具体例
 ユーザープロンプト 


    ユーザーが入力する具体的な質問やタスク 
 userメッセージとして送信
 「このバグを修正して」「APIドキュメントを作 成して」
 状態・履歴(短期記憶) 
 それまでの会話の流れや現在のタスク状態 
 メッセージ履歴、セッション管理
 前回の質問と回答、進行中のタスクステッ プ
 長期記憶
 過去の対話から学習したユーザーの好みや知識 
 ベクターDB、ユーザープロファイル
 ユーザーの好みのコーディングスタイル、過 去のプロジェクト情報
 システムプロンプト ・ドキュ メント
 AIの基本的な振る舞いを定義する初期設定や ルール
 モデルのsystemパラメータで設定
 例:CLAUDE.md / docs 
 検索された情報 / RAG
 コードやデータベース、 APIなどから取得する外部 の最新情報 
 Vector Search、API呼び出し
 コード情報、外部の情報、エラーログ
 利用可能なツール 
 AIが実行できる MCPサーバーの定義や関数仕様 
 MCP、Function Calling
 ファイル操作、API呼び出し、データベース アクセス

  11. AIが働きやすい環境を整える • 従来の開発プラクティスが、AI駆動開発では全く新しい意味を持つようになった。 • スタイルガイドとコーディングルールは、⼈間の可読性のためだけでなく、AIがコードパターンを学習す るための基準に。 • ドキュメンテーションは、AIが⽂脈を理解する重要な⼿がかりに。 • モノレポは、AIが全体像を把握しやすい構造を提供。

    • CI/CDは、AIが変更を加えた際の品質保証システムとして機能。 • Git / GitHubでのコード管理とコードレビューは、ロールバックポイントと品質チェックの仕組みを。 AI時代に再定義される開発プラクティス これらの開発プラクティスは「⼈間が使いやすいから重要」ではなく、「AIが正確に動作するために 必須」な要素に変わった。AI駆動開発では、従来のプラクティスをAIの視点で再設計することが成功の 鍵。
  12. おまけ AI時代の新ティップス:⾃動コミットコメント⽣成 git commit -m "$(claude -p "ステージされたgitの変更内容を確認して、Conventional Commitsの形 式でコミットメッセージを作成してください。形式:

    <type>(<scope>): <description>。主なタイプ: feat(新機能), fix(バグ修正), docs(ドキュメント), style(フォーマット), refactor(リファクタリング), test(テスト), chore(その他)。説明部分は⼩⽂字で始めてください。タイトルのみを回答してくださ い。")"
  13. • AIは⼗分に賢い、上⼿くいかないと思ったときは引き出せていないと考える。 • 出⼒したコード量でエンジニアの⽣産性はもう測れない。 • 1/Nに楽になったという考え⽅ではなく、単位時間でN倍アウトカムが出せるように なったと考える。 5-1 まとめ AI駆動開発は、もはや未来の話ではない。今この瞬間から取り組むチームが、次の競争優位性を⼿に

    ⼊れる。 考え⽅ AI駆動開発の現在地 • 私たちがいま握ってるレバーはプロンプトエンジニアリングとコンテキストエンジ ニアリング。 • AI駆動開発の普及により、開発ワークフロー全体が根本的に変化している。 • 従来の「⼈間中⼼」から「⼈間とAIの協働」へとパラダイムシフトが起きました。