株式会社ずんだもん技術室AI放送局 podcast 20250612
内容紹介
AI領域における組織の強みを活かすアーキテクチャ設計、Agent Development Kit によるエージェント開発入門、AIエージェント「Cursor」で変わる開発マネジメントの実践論
出演者
関連リンク
AI Shift社が開発する企業向けAIエージェント構築プラットフォーム「AI Worker」について、開発チームとAIチームが協力し、組織の強みを最大限に活かすアーキテクチャ設計をどのように模索したかを紹介します。
AIエージェント開発における課題と変化 かつてはAIチームの研究力がプロダクトの強みでしたが、2024年からのLLM(大規模言語モデル)の急速な進化により、AIチームの研究と市場の変化にずれが生じました。開発チームはLLMのAPI組み込みに注力するようになり、AIチームとの連携が一時的に薄れる課題がありました。しかし2025年、AIエージェントが注目され、LLMだけでなく、多様なツール連携や記憶管理など、より複雑な要素が必要になったことで、開発チームもAIの専門領域に、AIチームも開発ノウハウに踏み込む必要が出てきました。
組織の強みを活かすアーキテクチャ設計のポイント
-
責務の再定義とチーム統合: AIエージェント開発では、AIチームの役割がアプリケーション層まで広がるため、サービス単位で責務を分けるのではなく、開発チームとAIチームを統合し、同じ実行エンジンサービス内でそれぞれの専門性を活かすようにしました。これにより、DB選定やHTTPサーバ構築など、AIチームが開発領域にも関われるようになります。
-
開発言語の統一(TypeScript): 元々異なる言語(AIチーム:Python、開発チーム:TypeScript)を使っていたところを、AIエージェントの実行エンジンもTypeScriptに統一しました。これは、他サービスのアーキテクチャを参考にできる、チーム間の知識共有がしやすくなる、開発速度が向上するといったメリットがあるためです。
-
AIエージェントフレームワーク「Mastra」の採用と向き合い方: TypeScript製のAIエージェントフレームワーク「Mastra」を採用することで、開発の初期スピードを上げられました。Mastraは、エージェントやワークフロー、RAG(検索拡張生成)などの主要機能に加え、デバッグや運用機能も充実しています。 一方で、AIエージェントの分野は変化が激しいため、特定のフレームワークに過度に依存せず、将来的に別のフレームワークに乗り換えられるように、重要な機能(例:データ永続化のための短期記憶)はMastraの機能を使わず、独自でPostgreSQLを導入するなど、疎結合な設計を意識しています。これは、柔軟な設計と将来への備えのためです。
-
疎結合な設計とFeature Flagの活用: 異なるチームが同じコードを触るため、コードベースでの「依存性の逆転」と「疎結合な責務分離」を徹底しました。これは、Mastraのワークフローを「ユースケース層」、記憶管理を「インフラ層」と捉え、それぞれが独立するように設計することで、テストのしやすさや、変更時の影響範囲を小さく保つための工夫です。 また、LLMの不確実性に対応するため、実装と検証を高速で回せる「Feature Flag」の仕組みを導入しました。これにより、新しい機能を本番環境に影響なく検証し、迅速に改善サイクルを回すことが可能になりました。例えば、AIエージェントの振る舞いを刷新するプロジェクトを、Feature Flagを活用することで約1ヶ月で本番リリースまで漕ぎつけ、長期的なR&Dの高速化に貢献しました。
まとめ AIエージェント開発では、開発チームとAIチームがお互いの領域に踏み込み、協力し合うことが重要です。そのためには、疎結合で柔軟なアーキテクチャ設計と、Feature Flagを活用した高速な検証サイクル基盤の構築が不可欠であり、これらが市場の変化に対応し、プロダクトを成長させる鍵となります。
引用元: https://zenn.dev/aishift/articles/c897d0e095c3d8
タイトル: Agent Development Kit によるエージェント開発入門
要約: この資料は、大規模言語モデル(LLM)を基盤とした「AIエージェント」を開発するための入門ガイドです。新人エンジニアの皆さんが、AIエージェントの基本的な仕組みや開発の流れを理解するのに役立つ内容となっています。
まず、LLMが単なる質問応答にとどまらず、より複雑なタスクをこなす「エージェント」として機能するために必要な技術が説明されます。重要なのは、「情報検索(RAG: Retrieval-Augmented Generation)」と「Function Calling」です。RAGは、LLMが持つ既存の知識だけでなく、外部のデータベースやウェブ検索から最新情報を取得し、それを踏まえて回答を生成する仕組みです。これにより、LLMの知識をリアルタイムに拡張し、より正確な情報を提供できるようになります。Function Callingは、LLMがユーザーの意図を理解し、その意図に基づいて外部のツール(APIなど)を呼び出し、特定の処理を実行する能力です。例えば、「東京と京都の気温差を教えて」という質問に対して、LLMが自ら気象情報APIを呼び出し、必要なデータを取得・計算して回答を生成するといった、具体的なタスクの自動実行が可能になります。
これらのエージェントを効率的に開発するためにGoogleが提供するのが「Agent Development Kit (ADK)」です。ADKは、エージェントの構築に必要な機能を抽象化しており、開発者が複雑な実装ロジックを直接書く手間を減らします。ADKでは、LLMの振る舞いを定義するLlmAgent
オブジェクトや、エージェントの実行・管理を行うRunner
オブジェクトといった主要なコンポーネントが提供され、これにより簡単にエージェントアプリケーションを構築できます。
さらに、ADKを活用することで、より複雑なエージェント構成も可能です。例えば、「サブエージェント」という概念では、特定の専門知識や機能を持つ複数のエージェントを用意し、ユーザーの質問内容に応じて最適なエージェントに処理を振り分けます。これにより、それぞれのエージェントが連携しながら、より高度で専門的な対話を実現できます。また、「Agent as a Tool」というパターンでは、別エージェントをあたかも一つのツールであるかのように扱い、他のエージェントから呼び出して利用することも可能です。
開発したエージェントは「Agent Engine」を使ってデプロイ(公開)できます。また、他のAIエージェントとの連携を容易にする「A2A (Agent to Agent) サーバー」と組み合わせたり、「Agentspace」のようなプラットフォームに登録して利用したりすることで、開発したエージェントの活用範囲を広げることができます。
この資料を通じて、AIエージェントがどのように外部の情報やツールと連携し、賢く振る舞うのか、そしてそれらを効率的に開発するための基本的なフレームワークや構成パターンについて、基礎を学ぶことができます。
引用元: https://speakerdeck.com/enakai00/agent-development-kit-niyoruezientokai-fa-ru-men
この記事は、AIを搭載したコードエディタ「Cursor」を使い、開発組織のマネジメントをどのように効率化していくかについて書かれています。AIの活用というと、コードを書く手助け(AI-assisted coding)がまず思い浮かぶかもしれませんが、この記事では、それだけでなく「開発プロセス全体」にAIを導入することの重要性を強調しています。
筆者は、開発プロジェクトにかかる全時間(リードタイム)を分析すると、実際にコードを書く「開発フェーズ」以外にも、企画、会議、ドキュメント作成、管理業務といった部分に多くの時間が費やされていることを指摘しています。これらの「開発フェーズ以外の課題」にAIを導入することで、組織全体の生産性を大幅に向上させることができる、と述べています。
Cursorを活用した具体的なマネジメント術として、以下の点が紹介されています。
-
マネジメントの知見蓄積とワークフロー化: 日々の業務で得られる情報や知識を体系的に整理し、Cursorの自動化機能(Rules)を使って、毎月の工数計算やライセンス費用計算といった定型業務を自動化できます。ただし、チームの経験に基づく判断や、メンバー間の深い対話が必要な1on1ミーティングなどは、AIに任せず人間が行うべきだと注意喚起しています。
-
エンジニアが開発に集中できる環境作り: マネージャーがエンジニアに質問する手間を減らし、エンジニアが本来の開発業務に集中できるよう、AIを活用します。
- 類推見積もり: 「この機能を作るのにどれくらい時間がかかる?」という概算の見積もりを、AIに過去の類似コードを分析させて算出できます。これにより、企画段階でエンジニアに聞かずに大まかな計画を立てることが可能です。
- コードベースからの仕様自動抽出: AIにコードを解析させることで、APIの仕様やデータベースの構造、ビジネスロジックなどを自動で文書化できます。これにより、システムの詳細を知りたいときに、エンジニアに直接聞かずに最新情報を素早く得られます。例えば、シーケンス図の作成もCursorに指示して行えます。
- 投資工数の分析: エンジニアが「新規開発」「既存機能の改善」「保守」「運用」「管理業務」のどの作業にどれくらいの時間を使っているかをAIで分析し、開発業務に集中できているかを確認できます。
これらの活用により、AIはコード作成だけでなく、書類選考の効率化、要件定義のたたき台作成、会議の改善、テストの自動化など、開発組織の様々な業務に貢献し、全体の生産性を向上させると締めくくられています。
新人エンジニアの皆さんにとって、AIがコードを書くだけでなく、開発プロジェクトの運営やチームマネジメントにどのように貢献できるかを知ることは、今後のキャリアを考える上で貴重な視点となるでしょう。
引用元: https://developersblog.dmm.com/entry/2025/06/09/110000
(株式会社ずんだもんは架空の登場組織です)