見出し画像

プロンプトエンジニアリング:抽象度を上げて一般化するとは?

今朝、ハヤシシュンスケ氏が「シュンスケ式プロンプトジェネレーター徹底解説!」というテーマでライブ動画を配信していました。興味を持ち、動画の内容に従ってプロンプトの概念を一般化する試みを行いましたので、その内容を共有します。


1.シュンスケ式プロンプトジェネレーター

シュンスケ氏は、シュンスケ式ゴールシークプロンプトで知られる方で、私もこれまで何度もその方法を活用してきました。

今回の動画解説は、シュンスケ氏が開発したChatGPT向けの「シュンスケ式プロンプトジェネレーター」に焦点を当てたものです。

シュンスケ氏によると、ChatGPTのような生成AIは、例えば「骨」を提供すれば、それに「肉」を付けた魚を提供することができます。この特性を利用して、利用者が意図するアウトプットの生成を実現するわけです。


2.試してみた

動画に倣って、ゴールデンウィークに中部国際空港から那覇へ飛行機で行く、家族4人(大人)のための沖縄5泊6日の旅行プランを立てることを目的としたプロンプトを作成してみます。

<完成形:沖縄旅行プラン>

移動手段や手順
・出発地
: 中部国際空港
目的地: 那覇空港
交通手段: 直行便を予約。ゴールデンウィーク期間は早めの予約が必要。
宿泊施設やリソース情報
・宿泊先
: 那覇市内のファミリーフレンドリーなホテルまたはビーチリゾート。子ども向けのアメニティやプールを備えた施設を選択。
予約: 旅行サイトを利用して比較・予約。
活動やタスクリスト
・海水浴・シュノーケリング
: 沖縄本島の美しいビーチ(例:真栄田岬、瀬底島)でのアクティビティ。事前予約が必要な場合も。
文化施設訪問: 首里城公園や沖縄県立博物館・美術館を訪れて、沖縄の歴史と文化を学ぶ。
自然探索ツアー: やんばる国立公園でのガイド付きツアーに参加し、沖縄の自然を体験。
予算の概算
・飛行機代
: 往復で約100,000円〜150,000円(家族4人分)
宿泊費: 1泊あたり20,000円〜40,000円(ファミリールーム)。合計100,000円〜240,000円。
食事: 1日あたり家族4人で12,000円〜20,000円。合計72,000円〜120,000円。
アクティビティ費用: 合計20,000円〜40,000円。
合計予算
約292,000円〜550,000円
注意点
ゴールデンウィークは非常に混雑するため、可能な限り早めにすべての予約を行う。
・気候は温暖ながらも日焼け対策や水分補給は忘れずに。
・現地での移動はレンタカーの予約をお勧めします。公共交通機関だけではアクセスが難しい場所もあります。

※ChatGPTより

<通常のプロンプトから骨組みを生成>

You:
ゴールは旅行プランを立てること
#命令文
#制約条件
#入力文
#出力形式
ChatGPT:
あなたが旅行プランを立てたいということですね。そのためには、いくつかの情報が必要です。以下の指示に従って、必要な情報を提供してください。
命令文
どの都市や国へ行きたいですか?
・旅行の期間はどのくらいですか?
・旅行の目的(観光、ビジネス、リラクゼーションなど)は何ですか?
・予算はどのくらいですか?
・訪れたい場所や体験したいことがあれば教えてください。
制約条件
旅行先の気候や季節について考慮してください。
・旅行の予算内で収まるように計画してください。
・現地での交通手段(公共交通機関、レンタカーなど)の利用可能性を確認してください。
・必要ならビザや予防接種が必要かもしれませんので、事前に確認してください。
入力文
「私は[都市/国]に[期間]の旅行を計画しています。予算は[予算]で、[目的]のための旅行です。訪れたい場所や体験したいことには、[場所や活動]があります。」
出力形式
旅行の日程表、含めるべき内容:
 ・移動手段と移動予定時間
 ・宿泊施設の情報
 ・訪れる場所やアクティビティのリストとそれぞれの予定時間
 ・予算の概算

※ChatGPTより


<骨組みを一般化>

変数を変数としてラベリングしブラケットで囲って抽象度を格上げしてどんな概念にも当てはめられるように一般化表現でラベリングし直します。

プロジェクト計画立案
├── 要求事項 ({要求事項})
│ ├── 目的地: {目標や目的地}
│ ├── 期間: {期間やスケジュール}
│ ├── 目的: {プロジェクトの目的}
│ ├── 予算: {予算や資源}
│ └── 興味: {関心事や重点エリア}
├── 制約条件 ({制約条件})
│ ├── 環境因子: {環境や外部条件}
│ ├── 予算管理: {資源の管理や配分}
│ ├── 利用可能なツール: {使用可能なツールやサービス}
│ └── 必要条件: {必要な条件や準備}
└── 入力文形式 ({入力形式})
└── 入力例: 「私は[{目標や目的地}]に[{期間}]の[{プロジェクトの目的}]を計画しています。予算は[{予算}]で、[{関心事や重点エリア}]に焦点を当てます。」
└── 出力形式 ({出力形式})
├── 計画書
│ ├── 移動手段や手順: {手段や手順}
│ ├── 宿泊施設やリソース情報: {施設やリソース}
│ ├── 活動やタスクリスト: {活動やタスク}
│ └── 予算の概算: {予算詳細}

※ChatGPTより

この一般化された表現は、旅行プランだけでなく、ビジネスプロジェクト、イベントの計画、個人的な目標設定など、あらゆる種類の計画に適用することができます。変数を具体的な内容で置き換えることで、特定のシナリオに合わせた計画を立てることが可能になります。


<一般化されたプロンプトから具体化されたプロンプトを生成>

以下のプロンプトは、ゴールデンウィークに中部国際空港から那覇へ行く、家族4人(大人)のための沖縄5泊6日の旅行プランを作成するための指示に基づいています。

プロジェクト計画立案: 沖縄旅行プラン
├── 要求事項
│ ├── 目的地: 沖縄、那覇
│ ├── 期間: 5泊6日
│ ├── 目的: 家族旅行
│ ├── 予算: [具体的な予算をここに入力]
│ └── 興味: 海辺のアクティビティ、文化体験、自然探索
├── 制約条件
│ ├── 環境因子: ゴールデンウィークの混雑を考慮
│ ├── 予算管理: 家族4人分の費用を予算内に収める
│ ├── 利用可能なツール: 飛行機(中部国際空港から那覇)、現地交通手段
│ └── 必要条件: 宿泊施設の事前予約、アクティビティの予約
└── 入力文形式
└── 入力例: 「私たち家族はゴールデンウィークに中部国際空港から那覇へ5泊6日の家族旅行を計画しています。予算は[予算]で、海辺のアクティビティ、文化体験、自然探索に焦点を当てたいです。」
└── 出力形式
├── 計画書
│ ├── 移動手段や手順: 中部国際空港から那覇への飛行機
│ ├── 宿泊施設やリソース情報: 那覇市内またはビーチリゾートのホテル
│ ├── 活動やタスクリスト: 海水浴、シュノーケリング、文化施設訪問、自然探索ツアー
│ └── 予算の概算: [飛行機代、宿泊費、食事、アクティビティ費用を含む総予算]

※ChaqtGPTより

このプロンプトに基づいて、具体的な予算や興味あるアクティビティの詳細を教えていただければ、より詳細な旅行プランを作成することができます。


3.まとめ

多くの場合、私のような普通の人が考えるプロンプトは、一つの目的(この場合は旅行計画)にのみ使えるものが多いです。※上記の例では「ゴールデンウィークに中部国際空港から那覇へ行く、家族4人(大人)のための沖縄5泊6日の旅行プランを作成」とベタ打ちするか、深津式プロンプトに倣って(#命令文、#制約条件、#入力文、#出力形式)等を必死に考えると思います。

しかし、一度作成したフレームワークを一般化することで、旅行計画だけでなく、ビジネスプロジェクト、イベント計画、個人的な目標設定など、様々な種類の計画に応用することが可能です。変数を具体的な内容に置き換えることにより、特定のシナリオに合わせた計画を練ることができます。

どのようにしてこのような発想に至るのでしょうか?

ただただ感嘆するばかりです。


この記事が気に入ったらサポートをしてみませんか?