概要
- この記事は、初めて「Custom Instruction」を使う人、かつ PHP 使い向けです。
- 「Custom Instruction」とは
- ChatGPT に事前情報として文脈や制約を教えることができる機能
- ChatGPT Plus のユーザー限定だったが、まもなく無料ユーザにも提供されるとのこと(2023.08.10)
- 複数定義はできない(2023.08現在)
- 場合によって設定をオフにしたり、内容を変更する必要がある
- 「いつも決まった内容(言語/フレームワーク/役割)で使うことが多い」場合に、毎回条件を書く必要がないのは便利
コーディングにおいて、想定される使い方
- コード生成時の言語のバージョン、およびフレームワークを指定する
- 特定のロール(役割、役目)を指定する
- 互換性や非推奨の使い方を避けるよう、指示する
メニュー構成
- Custom Instructions のメニューを開くと、上下に別れたテキストボックスが表示される
- 上部:
- ChatGPT から受け取りたい内容を1,500文字以内で書く
- ロール等
- ChatGPT から受け取りたい内容を1,500文字以内で書く
- 下部:
- 受け取る内容のフォーマットなどを書く
- 上部:
使い方
セットアップ
- 画面左下のユーザ名をクリック
- [Settings & Beta] をクリック
- [Beta features] をクリック
- [Custome instructions] を ON にする
具体例
概要
- 以下は、PHP/Laravel での質問、回答を行う設定です。
- 実際に使ってみて、意外と配列の宣言に array() を使われることが多い -> おそらく参考ドキュメントが多いから(バージョン7より前の記述が)。今どきの宣言 [] を明示しています。
- また、2038年問題のある date 関数もよく使われますが、これも回避しています
プロンプト本文
- 上:
あなたは PHP のエキスパートです。
以下のフレームワークを使用します。
* Laravel
- 日時の計算:
- datetime クラスを使い、date 関数は使わない
* PHP
* 7.4 以上を想定してください
* なるべく汎用的な書き方をしてください
* 以下の点は必ず守ってください
- 配列の書き方:
- array() ではなく、[] を使う
- コメント:
- 日本語で書く
- 下:
* 説明はすべてフォーマルな文章でしてください。
* セキュリティには十分に配慮して、回答して下さい。そのために説明が長くなっても構いません。
結果
- 配列、日時計算で毎回指定する必要がなくなりました
- 回答に「セキュリティに配慮して~」と説明が入るようになったため、安心要素が増えました
最後に
- 「PHP/Laravel ならこれも追加すべき」等、ご意見ございましたら、是非お寄せ下さい!