【イベントレポート】『AI駆動開発(AI-Driven Development) 勉強会(第1回)』に参加してきました

2024.02.08

2024年2月2日に開催されたAI駆動開発(AI-Driven Development) 勉強会(第1回)に参加してきました。

当日現地で参加したのですが、満員御礼で勢いを感じられました...!

「AI駆動開発」ということで、普段自分がバックエンド側の開発をしている際にすぐに取り入れたい情報をたくさん知る事ができたり、初めての技術を知ることで良い刺激が得られました!

登壇の内容と私の感想を共有します。

次回参加される方や、今回参加できなかった方の参考になれば幸いです!

イベント概要

AI駆動開発勉強会では、ChatGPT, GitHub Copilot, Cursor などを開発で活用する知見を共有したり、コーディング以外にもデザインやドキュメント作成など開発に関わるあらゆる事柄とAI利用の知見を共有する勉強会です。

開催形式: ハイブリット形式(オンサイト・オフサイト)

参加人数: 合計430名程度(現地参加30, オンライン 400程度)

場所: KDDI DIGITAL GATE(虎ノ門)

AIネイティブ開発における GitHub Copilot

スピーカー: GitHub Architect Yuki Hattori さん (@yuhattor

概要

GitHub Copilotの直感的な使用感、Copilot Chatの機能紹介、AIツール選定や使いこなすためのテクニックの紹介。

感想

GitHub Copilotは普段から使っているので、「特に意識しなくても使えるように作っている」という話に共感しました。確かに、事前の勉強なしに直感的に使用できています。 唯一、Copilot Chatのスラッシュコマンドを学んだ程度です。

Copilot Chatの言語設定の変更やコンテキスト変数の活用方法を今回のセッションで新たに知る事ができました。これらの機能は早速取り入れてみたいです。

GitHub Enterpriseには魅力的な追加機能があるようで、これらを実際に試してみるのが楽しみです。

ライセンスに関する話題では、MITライセンスのコードを基にしても、GPLライセンス違反を避けられないこともあるため、GPLライセンスのコードと突合してチェックを行っていることが明かされました。 確かにライセンス周りは気になるところですが、GitHubがライセンス周りをクリアにすることに力を入れていることが伝わってきました。

気になったポイント

  • AIは開発支援ツールであるとともに最強の学習促進ツールである
    • エンジニアも、AIとのやり取りで学習する
    • AIも学習する(GitHub Copilot では AcceptもDeclineも学習している)
  • AIツールを使いこなすにはツールの特性を理解する
    • それぞれのツールで解決したい目的が異なるため、目的に合わせてツールを選択する
  • コミットメッセージの自動入力機能
  • ライセンス周りの話
    • 96TBのソースを検索して、ライセンス違反をチェックしている
    • GitHub Copilot Businessを使えば、学習に使われない。個人でも設定することで学習に使われない
    • Copilot Trust センターを確認しよう
    • それでも気になるなら、GitHubの営業に尋ねる

内容と関連するリンク

ChatGPTを利用したアプリケーション自動構築フレームワーク

スピーカー: Fabo 佐々木さん (@gclue_akira

概要

Jetson上で動作するカメラ認識からGStreamerパイプラインの自動構築までを行う「Small World」というフレームワークを紹介。

デモでは、ChatGPTを介して自然言語でカメラ情報やGStreamerのパイプラインを構築する様子が示され、ロール情報を用いたスクリプト作成プロセスが説明されました。

感想

作成したSmall Worldというフレームワークを使い、自然言語で命令してGStreamerのコードをJetson上で生成するデモを見ることができました。

ロール情報を設定することでChatGPTの出力をコントロールしている様子がわかりました。

ChatGPTがコマンドを生成するプロセスについての説明があり、詳細な方法がわかったので勉強になりました。

具体的には、ChatGPTが理解可能な方法でメソッドを定義し、その使い方をロール設定の中で説明することで、ユーザーの入力に基づいてコマンドが生成されるという流れです。

気になったポイント

  • ChatGPTとの間で取り決めた仮想的なメソッドを用意し、ロール設定の中でChatGPTに共有する
  • ChatDEVでのゲーム開発
    • ChatGPTでも同じことができるか試したところ、試行錯誤で500回くらいは掛かった
  • 大学でChatGPTでColabアプリを開発する授業
    • オセロ開発、テトリス開発
    • 最初はそこまで詳しくなくても、アプリが作れている
    • 新人類だ…!

内容と関連するリンク

AI-Fast Coder Cursorの機能紹介とユースケース

スピーカー: Creationline 荒井さん (@kimotuki

概要

「Cursor」の機能紹介、新機能の紹介、開発全体でのAIツール利用について

感想

Cursorの紹介前には開発工程全体でのAIツールの関わり方の紹介があり、その中でv0やtldrawの紹介がありました。

現状自分ではバックエンドのコーディングとそれに関わる質問をすることくらいにしか活用できていませんが、開発工程全体でAIツールの名前が飛び交う未来も近いんだろうなと感じました。

Cursorを用いたプロジェクト作成では、プロンプトに応じてコードが効率的に生成される様子が印象的でした。

また、Cursorの便利な使い方や、Azure AIのAPIキーの利用法、GitHub Copilotとの連携方法についての知見が共有されました。

VSCodeとGitHub Copilotでの開発体験に比べると、Cursorが提供するAIとのシームレスな対話が際立ち、今後の機能追加によってはCursorを活用した開発も検討したいです。

気になったポイント

  • GitHub Enterprise
    • Issueをかくと、コーディングからデバッグまで実行
  • 開発サイクル全体で見たAIツール
    • v0, tldraw
    • GitHub Copilot, Cursor
    • ghostest
  • v0でのコンポーネント作成、作成後は差分取り込みを手動で行う必要がある
  • Cursor
    • VSCodeをフォークして作られた
    • Cursorは5人ほどでAnysphere社が開発していた
  • アップデート情報
    • @Web で外部サイトに検索をかけられる
    • DevContainer に対応した
  • @Docs を使うことで、ライトなRAGとして利用できる
  • コードサジェストはGitHub Copilot, EditにはCursorを利用している

内容と関連するリンク

3大クラウドLLMバトル!?

スピーカー:

  • KAG Generative AIラボ 御田さん (@monorun365
  • KAG Generative AIラボ 三宅さん
  • KAG Generative AIラボ 中島さん (@piyonakajima

ファシリ: KAG Generative AIラボ 豊嶋さん

概要

KDDIアジャイル開発センターの3名によるパネルディスカッションでは、AWS、Azure、GCPの各クラウドのAIサービスに焦点を当てました。

各パネリストは、自らの経験に基づき、それぞれのプラットフォームの特徴と魅力を熱弁。

感想

Azure, AWS, GCP派にそれぞれのスピーカーが別れて、おすすめポイントを話す、という内容でした。

最終的には「元々使っていたクラウドサービスに依存しがちではある」と話されてました。

どの会社のAIも追いつけ追い越せでやっており、それぞれの違いを理解する以上にRAGなど基本的な要素を理解していくことが大事という話は、なるほど、と思いました。

気になったポイント

  • Azure
    • エンタープライズで使う、となったらMicrosoft、嬉しいよね
    • メタデータを入れておくことで、検索するときに絞り込んで撮ってくることができ、RAGの精度が向上する
    • 圧倒的な情報量: Learn ここに来れば全て揃う
  • AWS
    • 成熟した各種AWSサービスと連携しやすい
    • いろんな生成AIモデルを使える
    • コミュニティの叡智を最高に生かせる、アウトプットの数がすごい
    • Agents for Amazon Bedrock
      • AWSマネコンから簡単にAIエージェントが作れる
  • Google Cloud
    • Firebaseと一緒に使っている
    • Firebaseは同時に処理できるリクエスト数、インスタンス数を柔軟に変えられる

内容と関連するリンク

LT: AI駆動開発への取り組み

スピーカー: VMware 鈴木さん (@shosuz

概要

デザインから実装・テストまで、AIツールを利用して開発されたものを紹介。

感想

VS Code内でほとんど全てが完結するように拡張機能を駆使している様子が分かりました。

現状自分はバックエンドの実装のみで、デザイン・フロントエンドまで含めてAIツールを駆使して開発するイメージが出来てなかったのですが、近い将来にはAIツールが当たり前にバックエンドだけではなく開発全体に関わっていくのだろうというイメージが沸きました。

気になったポイント

  • Postman for VS Code
    • API開発とテストのサイクルを合理化
  • Uizard
    • 作ったものをSVGでも吐き出せる、それをFigma for VSCodeで使う
  • Locofy.ai
    • Figmaのデザインから、ReactのコードやFlutterのコードを吐き出せる
    • FigmaでLocofy.aiプラグインを利用する

内容と関連するリンク:

LT: VoicyのodaさんによるLT

スピーカー: Voicy odaさん (@bariero

概要

GitHub Copilot Chatを利用してTerraformでS3バケット作成を試したり、様々なAI Chatサービスを利用して同じ質問から異なる回答が返ってくる様子を紹介。

気になったポイント

  • OpenAIのWhisperを使用して文字起こしなどやっている
  • S3バケットを作成するコードを聞いてみたが、改行してくれなかった
  • それぞれのモデルで情報の更新頻度が異なる
  • スケルトン作成には良い

内容と関連するリンク

LT: 🧑‍🤝‍🧑→🤖と移りゆくアプリ開発

スピーカー: @eltociear さん

概要

「なぜ人からAIに?」というテーマで、multi-agent AIについてそれぞれのツールの特性を紹介

感想

人からAIにmulti-agent AI に焦点を当てた内容で、それぞれのツールの特性を知ることができました。

コーディングやデザインのみではなく、チーム内のコミュニケーションまでも、それぞれのロールを模したAIによって行われるという概念を初めて知ることができました。

それぞれの multi-agent AI の比較図も非常に分かりやすかったです。

気になったポイント

  • MetaGPT
    • ソフトウェア会社の概念を具体化したマルチエージェント
  • ChatDEV
    • 仮想のソフトウェア企業を演じるマルチエージェント
    • エージェント間のやり取りをログで確認できる
  • AutoGen
    • エージェントを何人、といった定義ができる
  • crewAI
    • エージェントのカスタマイズができる
    • とっつきやすい

内容と関連するリンク:

まとめ

基本的なプロンプトの考え方や、新しいツールについても知ることができ、これからの開発現場で取り入れられていく技術の先取りをできました。

特に、普段あまり経験のないデザインやフロントエンドの分野でのAIツールについて学べたのは、新鮮でとても良かったです。

Multi-Agent AIなど、すぐに触ってみたい技術についても学べたので、試してみたいと思います!