######################################################################## Chat GPTを利用したCNAPマニフェストの作成支援 ######################################################################## 概要 ====== **<CNAPマニフェスト生成支援 GPTs 公開リンク>** https://chatgpt.com/g/g-68a3128b349881918c7361761c06afb7-cnapmanihuesutosheng-cheng?model=gpt-5 本GPTsは、CNAPサービスを初めてご利用いただくユーザが、スムーズにマニフェストファイルを作成するためのサポートを目的としています。 GPTからの指示通りにヒアリング項目を回答していくことで、yamlファイルを自動で生成することが可能です。 手動でマニフェスト作成する場合と比較し、スキーマ不正やyamlの構文エラーを未然に防ぐことができ、 また、各パッケージの仕様や設定項目の意味・設定例等を回答してくれるため、効率的にマニフェスト作成を行うことが出来ます。 利用条件 ========== * CNAP for Mobius をご利用のお客様 注意事項 ========== 本GPTsは、これからCNAPを使い始めるユーザに対し、CNAPのマニフェスト作成に慣れていただくための補助機能として提供されており、 自動生成されたマニフェストファイルの精度を保証するものではございません。 生成されたマニフェストのデプロイ前には、 **必ず目視で妥当性を確認** するようご注意ください。 また、各パッケージの機能追加・改修に伴い、公開中のGPTsに対し予告なく仕様変更を行う可能性があるため、予めご了承ください。 利用手順 ========== (1) GPTsアクセス `こちらのリンク `_ より、ブラウザでGPTsにアクセスします。 (2) モデルの選択 画面左上のプルダウンメニューより、利用するモデルを選択します。 .. image:: /_static/images/gpts_model.png .. note:: 精度の低いモデルを選択した場合、設定項目のヒアリング不足等、マニフェストの生成が正常に動作しない可能性があります。 また、高度な推論モデル( ``GPT-5 Thinking`` 等)を選択した場合は、GPTの応答に時間がかかるため、「GPT 作成者の推奨」モデルである ``GPT-5`` を選択することを推奨します。 (3) パッケージ指定 利用したいユーザパッケージをプロンプトに入力し、マニフェストの作成を開始します。 *プロンプトの例)* rdbパッケージのマニフェストを作成 下記サンプルキャプチャの通り、マニフェスト生成のためのヒアリングが開始されます。 .. image:: /_static/images/gpts_start_chat.png なお、GPTsのトップ画面に表示されている会話のきっかけより、 ``「利用可能なパッケージを教えて」`` を押下することで、利用可能なユーザパッケージの一覧を表示することが可能です。 .. image:: /_static/images/gpts_select_package.png .. image:: /_static/images/gpts_display_package.png (4) metadata入力 GPTの指示に従い、各パラメータをプロンプトに入力していきます。まずはmetadataおよびパッケージバージョンをヒアリングされるため、任意の設定値を回答します。 以下のキャプチャは、 ``staging`` というnamaspaceに ``postgres`` という名前でApplicationリソースを作成する場合のサンプルです。 .. image:: /_static/images/gpts_input_meta.png (5) values入力 続いて、指定したパッケージのvalues.schemaに定義されている各パラメータについてのヒアリングが開始されます。 各パラメータ毎に、設定要否と設定値を順にヒアリングされるため、GPTの指示に従い回答を入力します。 以下のキャプチャは、 ``databaseType`` に ``postgres`` を指定する場合のサンプルです。 .. image:: /_static/images/gpts_input_values.png なお、デフォルト値をそのまま設定する場合やパラメータの定義自体が不要な場合は、設定要否のヒアリングに **「いいえ」** と回答することで、当該パラメータの設定がスキップされます。 .. image:: /_static/images/gpts_input_non.png (6) 完成したマニフェストを確認 全てのパラメータのヒアリングが完了すると、生成されたマニフェストファイルが表示されるため、設定項目の過不足や不備がないことを確認します。 .. image:: /_static/images/gpts_input_end.png 必要に応じて、修正内容をプロンプトで指示します。 以下のキャプチャは、 ``location`` を ``eastus`` に修正する場合のプロンプトのサンプルです。 .. image:: /_static/images/gpts_fix_param.png 以上がカスタムGPTsを利用したCNAPマニフェストの作成手順になります。 補足 GPTにCNAPの仕様を質問する ======================================== 各パッケージの仕様や設定項目の意味・設定例等を確認したい場合は、以下のサンプルのようにGPTに質問プロンプトを投げることで、回答を得ることが可能です。 *プロンプトの例)* これはどのような設定パラメータですか? .. image:: /_static/images/gpts_question_param.png *プロンプトの例)* keepOnDeleteをfalseにした場合、どのような挙動になりますか? .. image:: /_static/images/gpts_question_param2.png