0
0

rex0220 計算式プラグイン GPTs のプロンプトの書き方

Posted at

GPTs に要件を伝えて計算式を作成するプロンプトを考えてみます。

概要

rex0220 計算式プラグイン テーブル内商品カテゴリー別番号付与(GPTs版) では、チャットのやり取りで計算式を作成しました。
あらかじめ要件を整理して、一発で満足できる応答を引き出すようなプロンプトを目指して試してみます。

同じプロンプトでも回答内容がかなり異なることがあります。
学習させる資料の順番が変わるのが要因なのか、他にも影響するものがあるのかが不明で、いろいろ試しています。

計算式作成用のプロンプト

要件は、出来るだけ詳しく書くと応答内容の精度が上がるようです。
ただし、欲しい計算式に関係ない項目や仕様については記述しない方がよさそう。

変数名やコメントの規則も細かく指定することで、応答の再現性が向上するようです。
注意事項の変数名とコメントの部分は、なかなか応答に反映されなかったので、要望を強調するために指定しています。

課題1 テーブル内項目の商品カテゴリー別に番号を付与

プロンプト

# 課題
テーブル内項目の商品カテゴリー別に番号を付与する計算式を教えてください。

# アプリ構成
テーブルに商品カテゴリー、商品カテゴリー別番号、金額を持ちます。

# 商品カテゴリー別番号の採番ルール
商品カテゴリー別番号は、商品カテゴリーと ": " と番号の書式としてください
商品カテゴリー別番号は、1 からの連番でお願いします。

# 変数名のルール
変数名は、日本語で 6文字以内でつけてください

# 計算式コード内コメントのルール
計算式コード内に1行毎にコメントを付けてください
コメントは、「//」で始まり改行までがコメントになります。
各項目の計算式の先頭に、対象の項目名をコメントで入れてください。

# 処理時間を考慮
テーブル全体の処理を行う集計関数については、テーブル外に作業用項目を追加して、効率化を行ってください。

# マークダウン型式で計算式を回答してください。
各項目の計算式は、プラグイン設定でコピペがしやすいようにコードブロックで回答をお願いします。
一つのコードブロックに、各項目の計算式をまとめて、記述してください。
各項目の計算式を記述する順番は、処理の順番に合うように記述してください。

# 注意事項
変数名は、日本語で 6文字以内とします。
コメントは、日本語で 10文字以内とします。

GPTs の応答内容

計算式.js
// 連結の計算式
TARRAY(商品カテゴリー)

// 商品カテゴリー別番号の計算式
LET(
  分類, 商品カテゴリー,  // 商品カテゴリーの値を分類にセット
  , SPLIT(連結,","),  // 連結の値を配列に変換
  番号, ROWNO(テーブル),  // 現在の行番号
  前分類, SLICE(,0,番号),  // 現行より前の行の分類
  分類数, ARRAY_FIL(前分類,x,x=分類),  // 前行までの同じ分類の数
  , ARRAY_COUNT(分類数)+1,  // 同じ分類の行数 + 1
  分類 & ": " &   // 分類と連番を結合
)

実際の応答画面

2023-12-10_09h25_01.png

課題2 スペース項目にボタンを表示し、ボタンクリックでテーブルをクリア

課題1 のプロンプトをベースにして、要件を変えて問合せてみます。
プロンプトの「変数名のルール」以降は、同じです。
こちらは簡単な処理なのですが、計算式のコメントなども指定したルールに従って、回答してくれました。

プロンプト

# 課題
スペース項目にボタンを表示し、ボタンクリックでテーブルをクリアする計算式を教えてください。

# アプリ構成
テーブルに商品カテゴリー、商品カテゴリー別番号、金額を持ちます。

# 変数名のルール
変数名は、日本語で 6文字以内でつけてください

# 計算式コード内コメントのルール
計算式コード内に1行毎にコメントを付けてください
コメントは、「//」で始まり改行までがコメントになります。
各項目の計算式の先頭に、対象の項目名をコメントで入れてください。

# 処理時間を考慮
テーブル全体の処理を行う集計関数については、テーブル外に作業用項目を追加して、効率化を行ってください。

# マークダウン型式で計算式を回答してください。
各項目の計算式は、プラグイン設定でコピペがしやすいようにコードブロックで回答をお願いします。
一つのコードブロックに、各項目の計算式をまとめて、記述してください。
各項目の計算式を記述する順番は、処理の順番に合うように記述してください。

# 注意事項
変数名は、日本語で 6文字以内とします。
コメントは、日本語で 10文字以内とします。

GPTs の応答内容

計算式.js
// スペース項目の計算式
BUTTON(
  "テーブルクリア", // ボタンのラベル
  FSET(テーブル, ARRAY("","[]")) // テーブルをクリアする処理
)

実際の応答画面

2023-12-10_09h40_46.png

プロンプトの共通部分を学習させるのに失敗中

計算式を回答する場合のルールを、GPTs に学習させて、プロンプトの記述を要件だけにしたい。
プロントの「変数名のルール」意向を、Instructions や Knowledge に乗せてみて、プロンプトを要件だけにしてみたが、効果が出ていない。
しばらくは、試行錯誤が必要です。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0