Amazon Web Services ブログ
【開催報告 & 資料公開】生成 AI が切り拓く、今後のエンジニアリング環境
こんにちは。ソリューションアーキテクトの徳永です。2024 年 11 月 15 日に「生成 AI が切り拓く、 今後のエンジニアリング環境」というというテーマで、セミナーをオンラインにて開催いたしました。本ブログでは、イベント内容を簡単にご紹介しつつ、アセット資料を紹介致します。このセミナーでは、生成 AI を活用して実際にエンジニアリング環境の改善を進めている3 社様の先進的な取り組みをご紹介させて頂きました。
リポジトリをまるごと AI でレビューする LongContext モデルを利用したレビューシステムの紹介
合同会社 EXNOA
技術統括本部 技術推進部
高嶋 俊作 様
技術統括本部 情報管理室
小野寺 崇 様
EXNOA 様には、 LongContext モデルを活用してソースコードを含むプロジェクトの改善提案を自動生成する取り組みについてご紹介頂きました。ソースコードを ZIP ファイルとして固めてアップロードすると、LLM が選択したレビュー観点に従って、どのファイルに、どのような問題があり、どのように改善すればよいのかをマークダウン形式でフィードバックしてくれます。また、改善のためのコードまで提案されていました。有効な改善提案まで AI が判定して出力するという形になっており、実践的な内容となっていました。例では、 JSON のデコードに関するエラー処理が不足しているなど、見落としやすい箇所に関しての指摘がなされていました。実際にすでに現場でのレビューに利用されており、レビューの初期コストの削減とレビューの精度向上に寄与しています。 LLM は Claude 3.5 Sonnet をメインとし、Gemini 1.5 Pro をサブとして採用されたとのことです。 AWS を採用した理由としては、すでに AWS を利用していたためノウハウがあったことが大きいとのことです。
コードレビューはひとつのプロンプトで行うのではなく、多段構成でレビューを実施していました。最初にレビューファイルのパスを展開し、レビュー対象に対して、レビュー観点ごとに調整したプロンプトを投げる形でレビューをする形です。プロンプトは英語で構成することで精度を高めている点や、 API による呼び出しに対して Exponential Backoff によるリトライ処理を行っている点など、 LLM を扱う上での工夫がみられました。
ペアーズにおける Amazon Bedrock を活用した障害対応支援生成 AI ツールの導入事例
株式会社エウレカ
MLOps Engineer
成川 聖 様
エウレカ様での障害対応プロセスで LLM を使ったチャットボットを構築した事例をご紹介いただきました。
エウレカ様では、障害対応における属人性の高さや業務の複雑性など様々な課題を軽減するために障害対応報告の自動生成機能を開発されました。エウレカ様では、これまでも ChatOps による障害対応の円滑化を図られてきましたが、さらにコマンド操作だけで障害の内容を要約し、報告書やポストモーテムとしてまとめられるように拡張されています。
この機能は Amazon Bedrock と Claude 3.5 Sonnet を使って実現されており、Amazon Elastic Kubernetes Service (EKS) との統合や、Knowledge Bases for Amazon Bedrock などによる Managed RAG 機能が利用できることが採用理由として挙げられていました。
また、障害対応時に専用の Slack チャンネルを作成してコミュニケーションを集約させており、チャンネル作成時に自動的に Pairs Navi という Chat Bot が参加します。エウレカ様では Knowledge Bases for Amazon Bedrock を活用し 1,500 ページ以上のドキュメントから RAG を構築しており、対応メンバーは Pairs Navi を介して障害対応プロセスをキャッチアップすることができます。
実際に導入してみると、障害対応そのものよりもオンボーディングで利用される割合のほうが高いこと、緊急性の高い業務の中でわざわざ Chat Bot をメンションすることに敷居があることなどが分かったため、より自律的に振る舞う Agent 型への改良を進められているそうです。
生成 AI ソリューションとサイバーエージェントの変化
サイバーエージェント様
System Security 推進 Group (SSG)
開発チーム マネージャ
小笠原 清志 様
サイバーエージェント様では AI を活用し様々な生産性の改善に取り組まれており、今回はセキュリティにおける生成 AI 活用事例を紹介していただきました。まず紹介していただいたのが、サイバーエージェントのすべての社員が利用できる、セキュリティ相談ができるチャットツールです。プライバシーやセキュリティを意識した設計となっており、 AI により、いままでよりも気軽にセキュリティの相談ができるようになりました。過去に起票された社内のセキュリティチケットを参照しているため、社内の事情に精通した回答を返すことが可能になっております。ただの RAG アプリケーションではなく、専門性の高いエージェントを複数用意しており、個人情報の相談ができるエージェントなど、ユースケースに沿った形で使えるようになっています。課題解決までのリードタイムが短縮され、社内でも活用が進んでいます。
この取り組みは、サイバーエージェント様の Developers Blog – 生成AIでセキュリティの課題をどこまで改善できるか考えるでも紹介されています。あわせてご参照ください。
また、生成 AI を使える人から、生成 AI アプリを作れる人へとステップアップをしてもらうという目的で、 Dify の環境を構築している事例を紹介していただきました。この事例に関しては builders.flash にて詳しく紹介されております。エンジニア不要な業務改善を狙っているとのことでした。
クロージング | 生成 AI が切り拓く、今後のエンジニアリング環境
アマゾンウェブサービス ジャパン 合同会社
ソリューションアーキテクト
徳永 貴大
最後に、クロージングとしてソリューションアーキテクトの徳永から Amazon Q Developer と Failure Analysis Assistant の紹介をさせていただきました。Amazon Q Developer ではソフトウェア開発ライフサイクル全般を統合支援するサービスです。コードの推薦や、セキュリティの問題のある箇所をスキャンして、改善提案を受けることができます。
Failure Analysis Assistant は障害対応時のログ解析を LLM にさせて一次対応をさせるためのサンプル実装です。 Slack 上でアラートを受信したのちに、 Slack 上に表示されるフォームに必要な情報をいれることで、自動的にログを収集し、 Bedrock の API を通じて LLM による解析処理を行った後に、障害の原因の分析結果を Slack 上で受け取ることができます。AWS Blog Failure Analysis Assistant – AIOps で障害分析を効率化してみよう – と aws-samples のリポジトリから詳しい情報をご覧いただけますのでご活用ください。
おわりに
本ブログでは 2024 年 11 月 15 日に開催された「生成 AI が切り拓く、 今後のエンジニアリング環境」の内容をご紹介させていただきました。本セミナーに参加いただいた皆さま、誠にありがとうございました。引き続き皆様に役立つ情報を、セミナーやブログで発信していきます。どうぞよろしくお願い致します。
本ブログはソリューションアーキテクト徳永が担当しました。
(Updated : 2024/12/04 日本時間) 12/4 の AWS re:Invent 2024 の Matt Garman の基調講演で、徳永のセッションでご紹介した Amazon Q Developer に関連する下記のアップデートが出ました。ぜひそれぞれの解説ブログもご参照ください。
- New Amazon Q Developer agent capabilities include generating documentation, code reviews, and unit tests
- Investigate and remediate operational issues with Amazon Q Developer (in preview)
- Announcing Amazon Q Developer transformation capabilities for .NET, mainframe, and VMware workloads (preview)
- Introducing GitLab Duo with Amazon Q