フォーム読み込み中
こんにちは。AutoInfra開発チームの夏山です。
普段はサーバやクラウドのインフラの開発、検証、運用などを行っていますが、そのような業務をAIを用いて抜本的に効率化・自動化できる見込みのあるツールであるAutoInfraをチームで開発中です。
今回は、現在私たちが進めている「マルチ AI Agent(CrewAI)」の実装とユースケースについて紹介します。
ぜひ、AIを用いたアプリ開発やインフラ業務の自動化などに興味がある方は最後まで読んでいただけたらと思います!
この記事では…
インフラ業務を効率化・自動化可能とするAutoInfraというソフトバンク社内で開発しているツールのマルチAI Agent(CrewAI)機能について紹介します。
OSSのCrewAIというライブラリを用いて実装しています。
AIを用いた業務改革・ツール開発に興味がある方、インフラ業務に携わっている方などに読んでいただきたいです。
チームのメンバーを紹介します。同じ部署の6名で開発・推進しています。
クラウドエンジニア
末益 航洋
クラウドエンジニア
夏山 健斗
クラウドエンジニア
増岡 千智
クラウドエンジニア
鈴木 雅典
クラウドエンジニア
矢島 高広
クラウドエンジニア
石井 花珠
AutoInfraとはAutonomous Infrastructureの略で、SSHクライアント、LLMチャットおよびAI Agentを統合した新たなインターフェースを持ったインフラ管理ツールです。現時点ではソフトバンク社内向けのツールとなっています。
AutoInfraでは同一インターフェースでSSHクライアントおよびLLMチャットを活用できるため、エンジニアは異なるツール・ウィンドウを切り替える必要はなく、SSHクライアントで操作した内容はLLMと自動的に連携されるので、LLMチャットはインフラ機器の実データを元に回答してくれるのが大きな特徴です。
さらに、マルチAI Agent(CrewAI)もAutoInfraから操作できることによって、より柔軟な自動化が可能になります。AI Agent連携については今後詳しく紹介していきます。ここではそんな機能もあるんだと認識していただくだけでOKです。
まとめると、AutoInfraはあらゆるインフラ業務をAIを用いて効率化および自動化を実現可能とするツールを目指して開発をしています。
インフラエンジニアが抱える多くの課題をAutoInfraで解決できるように開発していきます。
※AutoInfraの詳細は前回の記事も併せて参照ください。
AutoInfraは、LLMチャット・SSHクライアント・AI Agentを統合したインフラ業務自動化ツールですが、今回はAI Agentについて紹介します。AutoInfraではOSSのライブラリであるCrewAIを用いてマルチAI Agentを実装しています。また、定期実行できるようなスケジュール機能を開発しており、毎日実行するような定常業務を定期的に実行させることも可能です。
タスクの目的や評価基準に応じて自律的に役割を分担
結果を評価しながら、必要ならタスクのやり直しも実施
現状は以下2つのAgentをプロンプトベースで定義しています。
インフラ業務を遂行するチームのマネージャーです。
チームが解決すべき問題や課題にフォーカスし、それを確実に解決できるようにチームを導きます。
ユーザーから依頼されたタスクをもう1つのAgentであるEngineer Agentに委譲します。
ネットワークおよびLinuxシステムのスペシャリストエンジニアです。
Manager Agentからタスクを受領して、実際に下記のように手を動かします。
あらゆるインフラ業務の遂行を可能とするAgentで、自律的に必要なコマンドを生成し、ターゲット機器にコマンドを実行します。また、そのコマンド実行結果を自律的に解釈し、次のコマンドを生成してタスク完了に導くAgentです。
こちら(画像3.)のシーケンス図では、タスクを与えられたときの流れになります。
ユーザーが「Webサーバを構築したい」と依頼
Manager Agentが目的や評価軸を把握
Engineer Agentにタスクを割り振り、Engineer Agentが自律的にコマンドを生成し、SSH経由でターゲットサーバーやNW機器にコマンドを自動実行
実行結果をもとに、次のコマンドや再実行を判断
4をタスクが完了するまで繰り返す
タスクが完了したら結果をManager Agentに報告
指摘があれば再度Engineer Agentにタスク依頼
3~6を繰り返す
Manager AgentからOKと判断されたアウトプットがユーザーに表示される
このように、マルチ AI Agent(CrewAI)を活用することで、人間の手を介さず、AIが協力しながら自律的に処理を進められる点が大きな特徴となっています。これにより、今まで人の手で実施していたコマンド操作中心の業務は、本機能によって大幅に効率化・自動化できると考えています。
実際に以下のような処理をAgentが自律的に遂行しました:
Engineer Agentが自律的に遂行したこと
dnfコマンドでWebサーバのインストール
echoコマンドでWebページの作成
systemctlコマンドでApacheのサービス正常性確認
Manager Agentが自律的に遂行したこと
タスクをEngineer Agentに委譲
Engineer Agentのタスク結果を評価
しかも、ユーザーは「この内容のWebページを立てて」というような自然言語の指示を出すだけで済みます。
このように、今回は簡単なタスクのデモでしたが、トラブルシュートの原因調査から復旧までのタスクや、設定変更から動作確認までのタスク等、様々なタスクをAIに丸ごと任せることが可能になります!
環境構築や毎月の脆弱性チェックのような定型業務をすべてマルチAI Agent(CrewAI)に任せることで、作業効率が飛躍的に向上します。例えば、Webサーバーの構築や設定ファイルの編集といったタスクも自動化できます。さらに、AutoInfraではマルチAI Agent(CrewAI)を定期実行できるため、日次のエラー監視チェック、週次のNW機器設定ファイルバックアップ、月次脆弱性チェックなども自動化可能です。従来のCronやスクリプトによる定期実行と比べ、マルチAI Agent(CrewAI)は、まるでベテランエンジニアが実行したかのように、自律的に実行結果に応じて柔軟に対応できるのが大きな特徴です。これにより、担当者が手動でエラー復旧対応等を行う必要がなくなり、ヒューマンエラーの防止や運用負荷の大幅な軽減が期待できます。
夜間や休日に発生する障害対応や定期メンテナンスも、マルチAI Agent(CrewAI)が事前に定義された手順やルールに従って自律的に対応します。例えば、夜間にサーバーのリソース異常を検知した際に自動でサービスを再起動したり、セキュリティパッチの適用作業を人の手を介さずに実施したりすることが可能です。これにより、夜間でも緊急時の初動対応をマルチAI Agent(CrewAI)に任せることができ、運用担当者の負担を大きく減らすことができます。
「この作業は特定の担当者しか分からない」といった属人化した業務も、マルチAI Agent(CrewAI)にノウハウや手順をタスクとして登録・学習させることで、誰でも同じ品質で対応できるようになります。例えば、ベテランエンジニアが行っていた複雑なトラブルシューティングや、システム全体に影響する設定変更も、マルチAI Agent(CrewAI)が自動で判断・実行します。これにより、知識の継承や標準化が進み、担当者の異動や長期離脱時など、様々な状況に対応できます。
マルチ AI Agent(CrewAI)は、AutoInfraの中でも今後の展開の中核を担う機能です。
「インフラ業務におけるAIの自律性をどこまで高められるか?」をテーマに、さらなる開発を進めています。
今後の記事では、実際の導入部門での運用例や、AutoInfraとDifyの連携事例も紹介していく予定です。
条件に該当するページがございません