曖昧な指示も不要！GPTsで始まるヒアリングからの明確なコーディング体験

# 概要
利用者の意図をしっかりと**ヒアリング**して、**フローチャート**を作ってからプログラミングしてくれるGPTsを作成しました。その試行結果とGPTs作成のコツを整理しました。

# GPTsとは
2023年11月6日にOpenAIから**GPTs**というものが発表されました。
ChatGPT上でプロンプト(指示)をあらかじめ記憶させることによって、特定の目的に特化した**カスタマイズChatGPT**を作成することが可能になりました。このカスタマイズChatGPTをGPTsと呼んでいます。

同日に発表された**GPT Store**でGPTsを一般公開することが可能であり、OpenAIによると、発表から2か月で、なんと**300万以上のGPTs**が作成されたとのことです。


# 背景
標準のChatGPTでも早く正確にコーディングしてくれるので基本的には問題ないのですが、何度もお願いしていると「**指示されている**」という妙な感覚になってきます。

どういう事かというと、本来は、自分がChatGPTに対して、コーディングをお願いする構図です。（下図参照）

```mermaid
flowchart TB
  subgraph 本来
    自分
    ChatGPT
  end
  direction RL
    自分 -->|1.ソース作って| ChatGPT
    ChatGPT -->|2.はいどうぞ| 自分
```

しかし、何度もやり取りしていると、いつの間にか立場が逆転しているのです。

```mermaid
flowchart TB
  subgraph 実際
    自分
    ChatGPT
    自分-2回目
    ChatGPT-2回目
    自分-3回目
    ChatGPT-3回目
    自分-4回目
    ChatGPT-4回目
  end
  direction RL
    自分 -->|1.ソース作って| ChatGPT
    ChatGPT -->|2.はいどうぞ| 自分
    自分-2回目 -->|3.実行したけどダメだったよ| ChatGPT-2回目
    ChatGPT-2回目 -->|4.じゃぁこれで試して| 自分-2回目
    自分-3回目 -->|5.それもダメだった| ChatGPT-3回目
    ChatGPT-3回目 -->|6.それならこれはどう?| 自分-3回目
    自分-4回目 -->|7.ダメです...| ChatGPT-4回目
    ChatGPT-4回目 -->|8.じゃぁこれは?| 自分-4回目
                
```

気づいた時はもう手遅れです。
**ChatGPT先輩の言いなり**になっているでしょう。
先輩の言われた通りに自分が実行して、結果を先輩に報告する構図になっているのです。


何故、このように何度もやりとりが発生してしまうかというと、答えは単純で、ChatGPTへの**指示が曖昧**だからです。

最初の自分の指示は、「**こんな感じのことをやりたいんだけど、頑張って作ってね**」と**完全に上から目線**でChatGPTに何となく依頼します。

それでも、ChatGPTは嫌な顔一つせず、曖昧な指示をうまくくみ取って、気を利かしながらコーディングしてくれます。

生成されたソースコードを実行してみると、結局、指示が曖昧なので、案の定、期待した動作になりません。時にはエラーさえ発生してしまいます。

<!--例えば、私がプログラム実行時の入力データ形式を伝えないと、ChatGPTはCSV形式だと想定してプログラミングしてくれます。でも、実際には入力データはHTML形式が正しかったので、実行時にエラーになります。-->

<BR>

自分の指示が曖昧になってしまう原因を考えて見ると、**そもそも自分が何を作りたいのか整理できていない**ということに気づきました。

通常のシステム開発では当然存在する**設計工程を全て飛ばして**、**いきなりコーディング**しているのですから、自分自身が**やりたいことの整理が出来ていない**のです。



そんな状態で、ChatGPT様にコーディングをお願いするなんて失礼な話です。
ましてや、完全に自分の指示のせいでエラーになったのに「**ChatGPTは使えない**」などと言うのは、**むしがよすぎる**話です。

<BR>

OpenAIも推奨していますが、改めて、ChatGPTには**詳細な指示が必要**だと思いました。
<!--最初にChatGPTにやりたいことを詳細に伝えて、**仕様を明確**にすれば、やり取りの回数は減りますし、ChatGPT先輩に指示されると感じることもなくなります。-->
ただ、ChatGPTを毎日使っていると、<font color="red">**いちいち伝えるのが面倒**</font>になってくるんですよね。:sweat_smile:

今回は、そんな面倒に思う場合でも、しっかりとしたソースコードを生成できるようなGPTsを作成してみました。



# GPTs概要

前置きが長くなりましたが、作成したGPTsの概要です。

GPTsが行う簡単な流れは以下の通りです。

1. **要件ヒアリング**
1. **フローチャート作成**
1. **コーディング**

まずは、自分自身が仕様整理できていないので、**ChatGPTが自分に対して仕様や要件をヒアリングしてくれる**ところからスタートです。

```mermaid
flowchart TB
  subgraph ヒアリング
    自分
    GPTs
  end
  direction LR
    自分 -->|1.コーディングしてほしい。| GPTs
    GPTs -->|2.では、幾つか質問させてください。| 自分
```

通常のシステム開発における**顧客ヒアリング相当**をGPTsで実現しようとしています。
自分は**顧客の立場**で良いんです。ChatGPTが自分にやりたいことを**1つずつヒアリングしてくれる**ので、自分はそれに<font color="red">**答えるだけで非常に楽**</font>です。:smile:
<BR>
次に、GPTsは、ヒアリングした内容を**フローチャートで可視化**します。これも通常のシステム開発と同様、顧客との**認識違いが起きないように**図解で共有します。
```mermaid
flowchart TB
  subgraph フローチャート作成
    自分
    GPTs
  end
  direction LR
    自分 -->|1.こういう仕様でお願いね。| GPTs
    GPTs -->|2.フローチャートにするとこちらですか？| 自分
```
最後に、決定した仕様に沿ってコーディングします。
```mermaid
flowchart TB
  subgraph コーディング
    自分
    GPTs
  end
  direction LR
    自分 -->|1.フローチャートは正しいよ。| GPTs
    GPTs -->|2.では、コーディングします。| 自分
```

さあ、果たしてうまく動いてくれるかどうか、、、
:point_down: 試行結果の詳細は下記をクリック

<details><summary>試行結果</summary>

<div>

# 試行結果

作成したGPTsを試行しました。

テーマは何でも構いません。今回は、たまたま思いついた「**人がWebや書籍の情報源から得られた知識を視覚的に管理したい。**」というテーマにします。

まずは、ChatGPTに**実現したいことをそのまま**入力します。
![履歴１_v3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/276223/1d49ce00-53f5-a6a2-c3c9-0d85b2a5ed7f.png)

すると、ChatGPTは、上図のように幾つか質問をしてきます。
今回は、マーカーを付けたように「5つの質問」に答えます。**一問一答形式の質問に答えるだけ**ですので、<font color="red">**特にストレスは感じません**</font>。この例のように、赤マーカーように**回答例が載っているとさらに楽**ですね。


つまり、今回のGPTsでは、最初の指示からいきなりソースコードを作成するのではなく、<font color="blue">**一旦、立ち止まってヒアリングしてくれる**</font>ところが特徴です。

:::note info
今回のGPTsの仕様として、ChatGPT plusの回数制限（40回/3時間）があるため、1問ずつのヒアリングではなく、まとめてヒアリングするようにし、回数を節約しています。
![履歴４_c2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/276223/f58e146f-dd1a-69f5-af76-6cf8e31b2a4f.png)

:::



<br>
質問に回答すると、次は、プロセスフローを作ってくれます。

![履歴２_v2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/276223/b3063107-5ff0-1483-639c-faf40db98ce9.png)

GPTsが作ってくれたフロー図は以下の通りです。

![mermaid.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/276223/93f68944-7784-55a6-813b-bc92df3d11ee.png)

今回は単純なフローですが、仕様によってかなり細かいフローも作成してくれます。
大切なのは**可視化した**という点です。

通常の開発においても、文章だけでやりとりすると、関係者間で**どうしても認識違いが発生する**ため、フローで視覚的に表現して、共通認識を持つことは重要です。

今回は、人間とGPTsのやりとりですが、**コーディング前に自分自身の考えを整理する**という点でフローは役に立ちます。


:::note note
フローを作成する仕組みは単純で、ChatGPTで生成したプロセスフローのコード（mermaid形式）について、mermaid形式を可視化してくれる外部サイトと連携するだけです。
:::


:::note warn
今回のGPTs実行時に、プロセスフローへのリンクから表示できない場合、下図の○で囲った箇所をクリックするとソースが表示されますので、ソース下部にあるURLをコピーしてブラウザで表示するとフローを確認できます。
※現在のChatGPTの仕様で、URLに一部の文字が含まれるとクリックできなくなるようです。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/276223/9ba53340-7a68-35be-e988-7f762518285f.png)
![履歴２－３_v2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/276223/63b1b04d-a349-4e70-4962-c09aaf639877.png)
:::


<br>

次は、いよいよコーディング。。。と思ったのですが、まだでした。
**プログラミング言語**や**アプリ形式**などの**技術的要件**について質問されます。

![履歴３_v2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/276223/139716e5-68c3-887b-22cd-573c4dce55fe.png)


普段、ChatGPTにコーディングをお願いする時は、なかなか要件まで気が回らないものです。
たしかに、実際に開発する時は、さまざまな要件を決める必要がありますね。この**最初の工程で手を抜くと、後でやり直しが発生**するものです。

こういった要件を１つずつ明確にすることによって、**エラーも減り**ますし、自分が**期待する動作**に近づいていきます。



:::note info
プログラミング言語に指定がない場合は、Pythonでコーディングする仕様にしています。
:::

<br>

アプリ形式を「**スマートフォンで動作させたい**」と答えて、**ようやくコーディング！**

と思いましたが、さらに細かなステップがありました。

![履歴４_c2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/276223/f43bc941-9b24-2531-85ce-0397a6d03479.png)

こんどは、**フロントエンド開発、バックエンド開発、データベース設計、API開発、テストとデプロイ**と開発単位が細分化されました。よくよく考えると、画面だけでなく、データベースなども設計が必要ですよね。
開発が大規模になるほど、細かく分けることの重要性が高まってきます。

今回は、特定の要件としてメンテンナンス性を伝えました。
![履歴５_v2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/276223/d9698e19-39a2-701b-c9f7-03bd33bd67c7.png)

![履歴５－２_v2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/276223/f5c020fc-1b62-a005-911c-cb55ba084f88.png)


なりゆきで、**詳細設計まですることに**なってしまいました。。。
ウォーターフォール型の開発であれば、詳細設計も作成するのが基本です。:cry:

![履歴６_v2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/276223/070c6811-bdc5-753c-921f-a755f664b55a.png)
![履歴６－２_v2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/276223/bcc56dbf-9bb9-9c80-fa08-b4b62a89b6ea.png)

詳細設計と言っても、GPTsが**勝手に観点を挙げてくれます**ので、それを確認するだけでも大丈夫です。
挙がった中から、自分が**必要と感じた観点だけを深く検討**すれば良いのです。

そして、詳細設計の後は、**実装計画**に進めということでした。GPTsの提案に従って実装計画をしてみます。（なかなかコーディングしてくれません:dizzy_face:）

実装計画といっても開発時の計画を整理しただけでした。今回は「1.要件定義」「2.設計」「3．開発」の実装部分になりますので、その再確認をしただけのようです。

![履歴７_v2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/276223/18f3f223-3b9c-61ed-c5a9-0edd412609bb.png)

![履歴７－２.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/276223/f6639923-2430-a71f-4609-5d7dae8dc414.png)



概ね、情報が出そろったと思いますので、ここでコーディングを指示します。
下図は、例として、フロントエンド部分に関するコーディング結果です。

![履歴９.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/276223/bc9aa01a-bbe3-6b07-aefc-c727975287d1.png)

![履歴９－２.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/276223/4be2702d-7b7f-aea2-1ec9-7c6c5f70e40e.png)
![履歴９－３.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/276223/c80bbd4f-9499-6e60-c167-661d80546dca.png)

意外と手数がかかってしまいましたが、その分、何も考えずにChatGPTでコーディングする時よりも、はるかに詳細を検討してからコーディングできているはずです。

**何より、自分自身でやりたいことを整理できた**気がするので、そういう点で有効活用できそうです。

特に、私がChatGPTに伝えるのが面倒だと思っていた要件や仕様について、ChatGPTに質問されることで、**半ば強制的に伝えざるを得なくなり**（そういう気持ちになってしまい）、その結果、完成度の高いソースコードを作成することが出来るようになりました。

<!--
ということで、「やさしいプログラミング支援」という名前のGPTsですが、「本格プログラミング支援」というネーミングの方があっているかもしれません。。
-->

</div>
</details>


# GPTs作成時のコツ

GPTsに指示通り動いてもらうのは案外、難しいです。
例えば「○○と伝えて」と指示しても、思うように動いてくれないことは何度もありました。**どうやって思い通りに動かすか**工夫が必要です。


#### （１）ベースはCreate、Configureで詳細化

GPTの作成画面は下図のように「**Create**」タブと「**Configure**」タブに分かれています。

「**Create**」では**チャット形式**で指示することができます。
例えば「利用者からシステム開発の要件をヒアリングしてから、コーディングしてほしい」とストレートに依頼できます。まさに、**人にお願いする時と同じ**です。これは割と楽で、お願いしたいことを思いついた順に伝えれば良いです。

お願いが伝わると「**GPTを更新中**」と表示され、記録されます。

**＜Create画面＞**
![Create3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/276223/37186def-7e3f-632b-2094-7fa740f41f86.png)
<br>

一方、「**Configure**」タブでは指示内容を**手動**で入力できます。
あらかじめ「Create」タブで依頼した内容が「**Instructions**」欄に自動的に記録されていますので、そこから気になるところだけを修正するだけです。

気をつけなければならないのは、「**Create**」タブで**依頼した内容が記録されない**こともあります。

**私**「**<font color="red">お願いしたよね。</font>**」
**GPTs**「<font color="blue">**いいえ。聞いてません。**</font>」

と、人間でもありがちな状況が起きてしまいます。こうならないように「Create」で記録された内容をしっかり確認した方が思い通りに動かせます。


**＜Configure画面＞**
![configure3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/276223/c0de3128-d5de-a0ff-0f67-5ea532a7f6c9.png)


もし、事前にGPTsに与える**役割がキッチリ決まっている**場合には、一から「Configure」に記入して構いません。

そうでなければ、**最初はCreate**でベースを作って、**その後Configure**で細かい指示を入力した方が効率は良いはずです。

:::note note
「Create」タブで始めた際、日本語で入力してもデフォルトでは英語で記録されます。日本語で残したい場合は、チャットで日本語で記録するよう指示してください。
:::

<br>

#### （２）箇条書きにする

次は、「Configure」タブの「Instructions」に記入するポイントです。

文章を長々と提示してしまうと、GPTsが**重要なキーワードを拾ってくれない**ことがあります。

例えば「利用者にURLを表示して、『○○』と注意事項を表示します。」という簡単な指示でさえも後半の注意事項が表示されないことがありました。

このため、以下のようにGPTsの動作を**1stepずつ手順にする**方が確実です。

1. **利用者にURLを表示する**
1. **「○○」と注意事項を表示する**

OpenAIが公開しているChatGPT入力のコツはご存知でしょうか。下表の項番3の通り、指示を分割した方が期待する動作になりやすいです。


**＜OpenAIが推奨しているChatGPT入力のコツ＞**
<table border="1">
    <tr>
        <th style="font-weight:bold; text-align:center;">項番</th>
        <th style="font-weight:bold; text-align:center;">戦略</th>
        <th style="text-align:left;">戦術</th>
    </tr>
    <tr>
        <td rowspan="6" style="text-align:center; font-weight:bold;">1</td>
        <td rowspan="6" style="text-align:center; font-weight:bold;">明確な指示を書く</td>
        <td>詳細を含める</td>
    </tr>
    <tr><td>役割を与える</td></tr>
    <tr><td>区切り文字を使用する</td></tr>
    <tr><td>必要な手順を指定する</td></tr>
    <tr><td>例を提供する</td></tr>
    <tr><td>出力の長さを指定する</td></tr>
    <tr>
        <td rowspan="2" style="text-align:center; font-weight:bold;">2</td>
        <td rowspan="2" style="text-align:center; font-weight:bold;">参考テキストを提供する</td>
        <td>回答で参考テキストを使用するように指示する</td>
    </tr>
    <tr><td>参考テキストからの引用を使う</td></tr>
    <tr>
        <td rowspan="3" style="text-align:center; font-weight:bold;">3</td>
        <td rowspan="3" style="text-align:center; font-weight:bold;"><b>複雑なタスクをより単純なサブタスクに分割する</b></td>
        <td>インテント分類を使う</td>
    </tr>
    <tr><td>長い会話は要約する</td></tr>
    <tr><td>長い文書を段階的に要約する</td></tr>
    <tr>
        <td rowspan="3" style="text-align:center; font-weight:bold;">4</td>
        <td rowspan="3" style="text-align:center; font-weight:bold;">モデルに「考える」時間を与える</td>
        <td>モデルに独自の解決策を見つけるよう指示する</td>
    </tr>
    <tr><td>内部で整理する過程を隠して実行させる</td></tr>
    <tr><td>前のパスで何か見逃していないか尋ねる</td></tr>
    <tr>
        <td rowspan="3" style="text-align:center; font-weight:bold;">5</td>
        <td rowspan="3" style="text-align:center; font-weight:bold;">外部ツールを使用する</td>
        <td>エンベディングベースの検索を使用する</td>
    </tr>
    <tr><td>コード実行を使用する</td></tr>
    <tr><td>特定の関数へのアクセスを許可する</td></tr>
    <tr>
        <td rowspan="1" style="text-align:center; font-weight:bold;">6</td>
        <td rowspan="1" style="text-align:center; font-weight:bold;">プロンプトを適宜見直す</td>
        <td>正解を基準にして出力結果を評価する</td>
    </tr>
</table>



<!--
| 項番 | 項目 | 概要 |
| ---: | :---: | :--- |
| 1 | 明確な指示を書く | 質問をできるだけ詳細に書きます。単に「要約して」ではなく、「○○な観点を見逃さずに要約して」と指示します。 |
| 2 | 参考テキストを提供する | 今後、GPTsが有償化されるという話もあり、他人が作成したGPTsの中身は非公開です。裏で何が実行されているのか不安な面もあります。 |
| 3 | 複雑なタスクをより単純なサブタスクに分割する | 公開されているGPTsが多く、探すのが難しいです。探してくれるAIが必要になるかもしれません。 |
| 4 | モデルに「考える」時間を与えます | 公開されているGPTsが多く、探すのが難しいです。探してくれるAIが必要になるかもしれません。 |
| 5 | 外部ツールを使用する | 公開されているGPTsが多く、探すのが難しいです。探してくれるAIが必要になるかもしれません。 |
| 6 | テストは体系的に変更されます | 公開されているGPTsが多く、探すのが難しいです。探してくれるAIが必要になるかもしれません。 |
**箇条書きに**することで漏れなく回答してもらえます。
-->

<br>

#### （３）GPTsを分ける

GPTsが登場して、自由に**AIを組み合わせて使う**フェーズに突入しました。公開されている様々な用途のGPTsを利用することが出来ますし、無ければ自分で作ることも可能です。

今回は「**ヒアリング**」「**フローチャート作成**」「**コーディング**」を組み合わせたGPTsを**1つ**作成しましたが、**別々のGPTs**にすることでより**目的に特化した専門家**を作ることが可能になります。

```mermaid
flowchart TB
  subgraph 個別GPTs
    自分
    ヒアリングGPT
    フローチャート作成GPT
    コーディングGPT
  end
  direction RL
    自分 -->|1.何か作って欲しい| ヒアリングGPT
    ヒアリングGPT -->|2.いくつかの質問を出します| 自分
    自分 -->|3.こんな感じで| フローチャート作成GPT
    フローチャート作成GPT -->|4.フローチャートだとこんな感じ？| 自分
    自分 -->|5.ソース作って| コーディングGPT
    コーディングGPT -->|6.はいどうぞ| 自分
    
```
GPTsを本当に分けるべきかどうかは検証の必要はありますが、実際にGPTsを作ってみて、なかなか思うように動いてくれなかったことから、万能なGPTsを作るのは難易度が高いように思いました。

そもそも、最初のプロンプトを作る**人間が万能ではないですからね。。。**

また、ChatGPTには**メンション機能**があります。これは特定のGPTsを指定して質問できる機能です。同一チャット内でヒアリングの専門家、フローチャートの専門家、コーディングの専門家それぞれ個別に質問して、回答を得られます。さらに、これらの専門家の**意見を束ねるAI**があっても面白いでしょう。


# GPTsのメリット、デメリット

私が感じたGPTsのメリットとデメリットです。
<br>

**＜メリット＞**
| 項番 | 概要 | 詳細 |
| :---: | :---: | :--- |
| 1 | チャット回数を減らせる | 今回のようにGPTsで利用者を誘導することによって、より少ないやりとりで期待する答えを得られることが可能。 |
| 2 | 自分好みの専門家を作れる |  用途に応じた専門家のAIをたくさん作り、自分が聞きたい専門家に質問することが可能。 |
| 3 | 世界中のGPTsを使える | 世界中の様々なAIを自由に使えるため、欲しいAIがきっと見つかる。 |

:::note note
専門家AIをたくさん作れるというのは、**ソフトバンクの孫さん**がやっている「**無限議論**」も簡単にできそうです。それぞれのAIを対立させて議論させることで、**より深い**、**洗練した答え**に辿り着く可能性があります。
:::


<!---
OpenAIが推奨している**<font color=“red">ChapGPTに考える時間を与える</font>**というポイントとも合っています。
--->

<br>

**＜デメリット＞**

| 項番 | 項目 | 内容 |
| ---: | :---: | :--- |
| 1 | 動きが決まっている | GPTsは記録された内容に沿って動作しますので、もし、間違った指示があると、間違ったまま動作し続ける。 |
| 2 | 中身がブラックボックス | 今後、GPTsが有償化されるという話もあり、他人が作成したGPTsの中身は非公開。悪意のあるGPTsに利用者は気づかない恐れがある。 |
| 3 | GPTsが多く探せない | 公開されているGPTsが多く、探すのが難しい。探してくれるAIが必要になるかも。 |


# 感想
<!--
別の記事で、今の時代はAIを使いこなすスキルが必要と言いましたが、GPTsによって使うハードルが下がり、あまりスキルは必要ないかもしれません。
スキルがあってもなくても一定のレベルで仕事ができるようにもなります。

ただ、気を付けなければならないのは、中身がブラックボックスなので、想定外の状況になった時は何も対処できないという問題を含んでいます。
AIや特化型AIの特性を理解した方が良いですね。

AIを使うAIというのも、GPTsを使えば、簡単にできそうです。
-->

ChatGPTを活用することによって、記事を楽に作成できると考えていましたが、私の場合、具体的な体験を記事にするため、ChatGPTに体験情報をインプットする段階が大変でほとんど使えませんでした。また、体験時の感情をうまくChatGPTに表現してもらっても、自分の感情とは微妙な表現の違いがありました。そのあたりの細部にこだわると、どうしても自分以外では出来そうにありません。

それでもChatGPTを活用できたのは、タイトル付けです。これは本文を丸ごと与えることで秀逸なタイトルをたくさん考えてくれました。本タイトルもその候補をベースに決定しました。

# 補足
2024年3月には、マイクロソフトのCopilotでもGPTsを作成できるようになったようです。


# GPTs公開先
◆作成したGPTsはこちら（ChatGPT有償版利用者のみ利用可能です）

https://chat.openai.com/g/g-ZcisYCmVP-yasasiipuroguraminguzhi-yuan


◆今回試行した結果のチャット履歴全容はこちら

https://chat.openai.com/share/c1668269-9aa2-49c3-ae7e-dead9f630f6c

※本GPTsの利用により発生した損害には責任を負いませんのでご了承ください。

# 参考サイト
[OpenAI GPTsについて](https://openai.com/blog/introducing-gpts)
[OpenAI GPT Storeについて](https://openai.com/blog/introducing-the-gpt-store)
[OpenAI Prompt engineeringについて](https://platform.openai.com/docs/guides/prompt-engineering)

以上、最後までお読みいただき、ありがとうございました。