ChatGPTの使い方を整理してみた

 

こんにちは。

我々インフラグループは、社内のシステムのインフラ開発を担当し、AWSやAzureなどのクラウドインフラの開発を主にしています。システムが安定して運用できるような仕組みの開発や提供を開発チームや運用チームと一緒に作業をすることが多いです。

そんなインフラエンジニアの集まりのインフラグループですが、最近、社内で生成AIサービスが利用できるようになりました。

インフラエンジニアの生成AIサービスの使い方をプロンプト例も交えながら紹介しようと思います。

 

社内の生成AI

パーソルキャリアでは、ChatPCAという生成AIを利用することができます。LLMとしてはGPT-4とGPT-3.5が利用することができます。

パーソルキャリア社員であれば社員IDでログインし、クローズドな環境で利用可能になっています。

クローズドな環境ですので、普段の業務にも生成AIを活用することが可能です。

 

インフラエンジニアの生成AIの使い方

調べ物をする

最もオーソドックスな使い方として、Google検索するのと同じような感じで利用しています。

ちょろっと調べたいことをよく確認します。

<プロンプト例>

- AWSのロードバランサの標準タイムアウト時間を教えてください。

 

パラメータの説明をしてもらう/まとめてもらう

基盤の構築はTerraformを中心に使っています。既存コードの理解を深めるために、該当コードをChatPCAに渡してパラメータの説明をしてもらうような使い方もよくします。

<プロンプト例>

- 以下のコードのパラメータの説明をしてください。

 

また、`terraform plan`の結果をChatPCAに流して、どのリソースが作られて、他に変化がないかをplan結果を貼り付けて確認する使い方もよくします。

<プロンプト例>

- 以下のTerraform Planの結果から、「新規に作成されるもの」「変更があるもの」「削除されるもの」をリソース名でまとめてください。

 〜〜〜 ここに`terraform plan`の結果を貼り付ける 〜〜〜

 

エラー解析をする

Terraformやスクリプト開発をやっている際は、当然のことながらエラーがよく発生します。そのエラー文言をそのままChatPCAに流して、エラー解析にも利用しています。この使い方が一番多いかもしれません。

<プロンプト例>

- 以下のエラーが発生しました。原因と対策方法を教えてください。

 〜〜〜 ここにエラーメッセージを貼り付ける 〜〜〜

 

コードを書いてもらう

業務としてTerraformコードはもとより、CI/CDのパイプラインのコードも書いたりします。

AzurePipelineのyamlや、BashやPowerShellを使ったデプロイスクリプト、awscliやpythonを使ったAWSリソースの操作なども業務でよく発生します。

そのコードの叩き台を作るのにもよく使っています。

<プロンプト例>

以下の要件を満たすコードを書いてください。
- PowerShellで作成してください
- "Default Web Site"を削除します
- 新しいサイト(SampleSite)を作成します
- 新しいサイトにアプリケーションを追加します

生成されたコードはそのまま使えるケースは稀で、エラーが発生することが多いです。そのエラーの原因や対策もChatPCAに聞いて確認するといったループを繰り返してコードの精度を高めていっています。

 

ディスカッションをする

検討している構成に何か懸念点や他の方式がないかなど意見を聞きたい場合にもChatPCAを利用しています。

クラウド環境としてはAWSをよく使っていますが、AWSでは似たようなサービスがあり、無数の選択肢があります。そういう時に1人壁打ち用として相談するような使い方です。

<プロンプト例>

- CICDを行うのに、CodeBuildにてスクリプトを書いてデプロイする方法のほうが柔軟だと考えていますが、その他の方法はありますか。メリットデメリットを整理してください。

上記のようなプロンプトからスタートし、別の方法の提案や方式の違い、懸念点などをディスカッションしています。

TerraformのModule化の際にも、どういう区分で分けるのかいいのかを壁打ちしたりもしています。

他の使い方とはちょっと違って、自分の考えに対して意見をもらう使い方です。

 

まとめ

インフラエンジニアとしての生成AIの使い方をまとめてみました。

数ヶ月ChatPCAを業務に使用してきましたが、エンジニアにとっては確実にプラスとなっており、これからもどんどん活用していきたいと思っています。

ChatPCAはAPIでの利用がまだ解放されていないですが、今後対応予定とのことでAPI利用できたらさらにCICDパイプラインに組み込んで使ったりとさらに業務に活用を考えています。

本記事が使い方の参考になれば幸いです。

インフラグループ

インフラ基盤統括部 システム共通BITA部 インフラグループ

パーソルキャリアのプロダクト、事業システムのパブリッククラウド上でのインフラ構築を担当しているグループ。対応範囲拡大のため体制増強の真っ最中(2023/12現在)。

※2023年12月現在の情報です。