生成AIを使ってプロジェクト資料からインフラ構成図を書かせてみた

はじめに

はじめまして。サービシンクの生成AI推進活動 インフラチームです。
突然ですが、生成AIの話は最近どこにいっても聞こえてきますよね。
プログラムや画像の自動生成サービス・ツールがどんどん世の中に出てきています。
ものすごい速さでできることが増えて、精度も上がっています。
エンジニアとして、生成AIが身近な社会は嬉しい反面、脅威にも感じています。
弊社では、「生成AIを使いこなすこと」を目的として、生成AI推進活動が発足されました。
そこで、私たちインフラチームでは生成AIを使って「インフラ領域に対して何ができるか」を考えてみました。
どうせ生成AIにやらせるなら、手間がかかるところをやらせたい!!
手間なのは、やはり資料作成でしょうか。
中でも、まだ受注が決まる前の提案資料は、手早く時間を使わずに資料を作りたいところです。
決して手抜きではない、と断言しておきます。

実現したいこと

今回は「提案書や要件定義書からインフラ構成図をAIに作らせる」ことをゴールとしました。
相談内容によって要件定義の内容は様々です。
AIに精度の高いインフラ構成図を作らせるためにはどうすれば良いのかを実際に手を動かしながら検証してみました。

実際にやったこと

実際にやったことは大きく以下の3つになります。

  • 使用する生成AIツールの選定
  • プロンプトに使用するプロジェクト資料の選定
  • 出力されたインフラ構成図の精査&プロンプトの修正

使用する生成AIツールの選定

今回使用する生成AIは、ChatGPT(GPT-5)を選定しました。 ChatGPTはオプトアウトの設定が可能で、普段から業務でも活用しているからです。

プロンプトに使用するプロジェクト資料の選定

プロンプトに使用するプロジェクト資料としての候補を「提案書」「見積書」「要件定義書」「機能一覧」としました。
本活動は、将来的に実際のプロジェクトで「インフラ構築における見積もりを考える場面」や「インフラ構築を考える場面」に役立てたいため、プロジェクト資料の中でも早い段階で作成する「提案書」をプロンプトに使用するプロジェクト資料として選定しました。
また、本活動では出力されたインフラ構成図の妥当性を精査するために、弊社で過去に対応したプロジェクトの「提案書」をプロンプトに使用しました。
プロジェクトの大まかな概要としては、「事業用物件マッチングサービス」になります。
利用ユーザーとしては管理会社・出店希望者・運営者・一般公開サイトの4つに分けられ、それぞれに対してサイトを提供し、LINE通知連携といった外部連携機能も存在します。

出力されたインフラ構成図の精査&プロンプトの修正

まずは雑にプロンプトを投げてみて、どのようなインフラ構成図を出力するのかを確認しました。
ChatGPTには添付の画像の通り、

今回、システムの提案書からインフラ構成図を作成したいです。 添付の提案書をもとにシステムのインフラ構成図を作成してください。 また、高品質(精度が高く最適である)なインフラ構成図を作成するために、別途必要な情報があれば列挙してください。

という指示と併せて「提案書」を投げてみました。

 

出力結果は以下の通りです。

出力されたインフラ構成図はAWSのインフラ構成となっていました。
サーバインスタンスがプライベートサブネットに配置されていたり、WAF、CDNも構成に含まれていたりと一般的なセキュリティを考慮したインフラ構成になっていることがわかります。
外部システムとの連携用にAPI Gatewayもあるので、構成的にはそこそこ妥当なものが出力される結果となりました。
ただ、一部に表示崩れなどがあるので、まだまだ改善の余地がありそうです。
「プロンプト資料の出来が良かった」という可能性もありますが、雑に投げてもこれくらいは作ってくれるということは理解できました。
また、以下の項目があれば、さらに高品質なインフラ構成図を出力することができるとChatGPTから言われました。

  • 可用性・復旧
  • 認証/セキュリティ
  • ネットワーク/接続
  • トラフィック・容量
  • アプリ/バッチ
  • データストア
  • 運用・監視・デプロイ
  • コスト前提

これを受けて、プロンプトを添付の画像の通りに修正し、再度実行してみました。

高品質(最適)なインフラ構成図を出力するために、追加で情報を記載します。 以下を参考に再度インフラ構成図を出力してください。 また、前回出力されたインフラ構成図を確認したところ、インフラ構成図左下の「アプリケーション」部分が重なってしまっており、確認できません。インフラ構成図に表示崩れがないように出力してください。 高品質(最適)なインフラ構成図を出力するための追加情報 可用性・復旧:管理用サイト以外については可用性を考慮したいので、99.99に設定したい。また、復旧については可能な限り短時間で行いたい。

 

出力結果は以下の通りです。

出力されたインフラ構成図(2)

まず、指摘した箇所についての「表示崩れ」が改善されましたが、全体的にはまだ表示崩れが残っている状態です。
また、肝心なインフラ構成には大きな変更はなく、上部に「可用性・復旧」についての記載が加えられました。
既に一般的なセキュリティを考慮したインフラ構成になっているため、今回指示をした「可用性・復旧」については現状の構成のままでもカバーできると判断されたと考えます。

まとめ

本活動から、現時点では「大まかな機能や仕様が記載されているプロジェクト情報」から、そこそこ妥当なインフラ構成図を出力することができるということがわかりました。
ただし、1度の指示で出力されるインフラ構成図はクオリティの高いものとはかけ離れており、実際にまだまだ改善の余地があります。
同時に、指摘することによって「表示崩れ」が改善されたように、プロンプトの質を高めることでクオリティの高いものに近づけることができると思いました。
今後の取り組みとして、「クオリティの高いものに近づけるために必要な情報」「出力されたインフラ構成図に対する細かい指摘」等を整理し、プロンプトの修正と実行を繰り返していきます。
また、インフラ構成図から構築コストや運用コストも出力することができれば、プロジェクトの提案時にさらに役立てると思うので、コスト面についてもアプローチしていこうと思います。

Webサイト・システムの
お悩みがある方は
お気軽にご相談ください

お問い合わせ 03-6380-6022(平日09:30~18:30)

出張またはWeb会議にて、貴社Webサイトの改善すべき点や
ご相談事項に無料で回答いたします。

無料相談・サイト診断 を詳しく見る

多くのお客様が気になる情報をまとめました、
こちらもご覧ください。