見出し画像

プロンプトは「ひらいて、とじる」

この記事は先日講師として初心者向けにプロンプト作成のコツをSchooさんで授業した内容の追加解説および、授業では伝えきれなかったポイントを説明していく。応用的な内容も含まれる。

[授業]プロンプトのコツを探究しよう - ChatGPTに企画書を作ってもらうには

授業スライド:



キーポイント

  • プロンプト作りとはモノを見かたを学び、再現すること

  • 「ひらいて、とじる」は1つ世界を分解・再構築する方法

  • AIによる自動化だけではなくAIとの対話を重視する


"ひらく"とは何か?


ある言葉、モノ…を構成する要素を一つずつ示していくことである。

例えば、車もエンジン、タイヤ、ハンドル、ライト…..と複数の要素が組み合わさって動いている。これが、車を分解してひらくということだ。

身近な子供向け物語を例にとって、ひらいてみよう。

子供向けの物語を作りたいですその時の物語に必要な要素をひらいてリストアップしてください

これらの構成要素をかんがえることで、物語としてある程度形になるということだ。このようにどこから手をつけていいのかを考えることをサポートしてくれる。


では、まずはひろげるを意識して、
以下の想定で業務でつかう企画書をつくろう

上司から企画書を作って欲しいと言われました企画書に必要な構成要素をひいてあらい出してください

つまり、まずは構成要素をひらいたのだ。


ただ、そんな沢山の項目を埋める時間はない。
また、自分の会社ではまずはキャッチコピー、コンセプト、ユーザーの深いニーズの理解が大切と言われているとしよう。

ありがとうございます
-1,2,8,9,10,12,13を削除
-代わり冒頭にこの企画の”キャッチコピー”、”コンセプト”をまた"ユーザーの深層心理((outcome/JOB))・課題" を適切な順番で追加
よろしくお願いします


はたして、コンセプトとは何なんだろうか?
コンセプトだけもう一回ひらいてみよう。
ひらく”の他にも”分解”でも良い

ありがとうございます。コンセプトを主要な構成要素に分解して、コンセプトの子要素としてください。
output full prompt

不要な要素をはらいのけ、必要な要素を組み入みかつもっと知りたい場合は”ひらけばいい”。

不要なものをはらいのけろ



ひらいて一般化する


ここからは少し余談となる。
会社のデータはいれられないので業務では活用できないという声もあるだろう。
ただ、各構成要素の関係性や書き方フォーマットを知るのに非常に立つ。

あまり深く説明はしないが、事例を示す。

ありがとうございます。 各要素に関連する変数を定義して、各項目の説明も再定義して再現性を高めてください。

さらに各変数のアウトプットに必要な変数を特定して、それらを再構成した説明文としてください。

このように必要な要素のひらき、それらをとじて再構成することができる。
例えばコンセプトは以下のように表すことができる。

コンセプト:"{purpose}を達成するために、
{target_audience}の深層心理と課題に焦点を当て、
{user_deep_psychology}を理解し、解決策を提供する革新的なアプローチを取ります。"

これなら3つの要素があればChatGPTはコンセプトを作れることがわかる。
このように、あらゆる事象に対応できるように抽象化することを”一般化”という。超大切な話だ。

これが業務の役に立たないわけがない。
ただ、自然言語で対話している感覚にならないのでこの手のアプローチは実は苦手だ。


アイデアを広げる


では話をもどし、平成のAIギャルのゆかちゃんに私が考えているAIをつかったサービスの素案を投げてみる。


平成ギャル ゆか(無料で会話できる)

利用サービス:Poe(ポォー)
番組で読み方を間違えていた。すまない。



最後は男っぽくなってしまった。。。
ギャルとアイデアを膨らますと彼女はポジティブだから、
とてもはかどる。



"とじる"とは何か?


とじるとは、ひらいた修正・追加した要素たちを再び構成しなおしたフォーマットをつかってアウトプットを出すことだ。
今回であれば企画書になる。

さきほどのギャルゆかがまとめてくれたアイデアを入れてみよう。

つまり、ギャルゆかと話した内容をそのまま入れてもしっかり言語化してくれるのである。

同僚と話した内容を録音して、入れてもいいかもしれない。



AIチャットボットをつくる


毎回、この企画書テンプレートをつくるのは面倒であり
できれば他のメンバーも使えたら嬉しいだろう。

ありがとう。では、これからあなたはプロンプトエンジニアとして一般化された企画書プロンプトを参考にして、これから企画書サポートAIチャットボット用のシステムプロンプトを作成する。ユーザーからのインプットを柔軟に解釈してそれぞれの項目に分解したり、不足点があればファシリテーションの能力をつかってヒヤリングして引き出すか、推論して自動で補完するような優しいボットになるようにすること。型や順番に必要以上にとらわれないように、インタラクティブに企画書作成をサポートできるようにしよう。。他のGPT上でも独立して動くよう企画書フォーマットの情報なども含めて文脈省かないようにしてね!

output full system_prompt:
role:
instr.:
...if any

Poeの「Create Bot」機能をつかって、この内容を追加してボットをつくってみよう。

メンバーにあとはシェアするだけだ。



可視化する


ChatGTPの弱点は文字量だ。
文字読むのが大変で、直感的に理解することが難しいことがある。
そこで可視化だ。

利用サービス:Graphviz
オープンソースのグラフ可視化ソフトウェア


ポケモンのマインドマップをChatGPTに依頼して、
そのコードをコピペするだけで10秒で完成させることができた。


さて、今回は上司に荒くていいからKPIツリーも見せてくれといわれたとしよう。

上記の企画書をもとにユーザー体験を考えて、目標を分解し、 それらを考慮したビジネスKPIツリーのGraphvizのスクリプトで詳細に出力してください。各ラベルは日本語でね

Output:

digraph G {
    node [shape=box]
    edge [color=blue]

    体験の価値提供 [shape=ellipse]

    "企画の目標" -> "体験の価値提供"

    "体験の価値提供" -> "ユーザーとパートナーAIのマッチング率"
    "体験の価値提供" -> "ゲームやトークシチュエーションへの参加率"
    "体験の価値提供" -> "自己理解度の改善"

    "ユーザーとパートナーAIのマッチング率" -> "パートナーAIの選択数"
    "ユーザーとパートナーAIのマッチング率" -> "マッチングの成功率"

    "ゲームやトークシチュエーションへの参加率" -> "ゲーム参加数"
    "ゲームやトークシチュエーションへの参加率" -> "トークシチュエーション参加数"

    "自己理解度の改善" -> "ユーザーフィードバック"
    "自己理解度の改善" -> "再訪問率"
}

Graphvizのページの左横にコピペ

初稿

あとは、ChatGPTと話して修正や追加をすればいいのだ。




自動化もできるけど対話があるといい


今日やってきたことの中でアイデアやコンセプトを練る思考プロセスをいくつかの方法で強化して、企画書および可視化のためのスクリプトまで自動でだすことももちろんできる。

Prompt:
Apply the template to input content.

input ="AIによって人間と相性の良い"パートナーAI"をマッチングでを見つけます。そして、AIが提案するゲームやトークシチュエーションにユーザーが参加することで、人間が単独では発見できない新たな気づきや学びを得て楽しんで新しい自分に出会っていくサービス"

**Proposal Development Template**
[Goal]: Transform a specific idea into a detailed and actionable proposal, breaking structural biases and generating meaningful ideas. Then, consider the user experience based on the proposal, decompose the goal, and output the details of the appropriate KPI tree in Graphviz script format.

-Instructions

[Step 1]: Break down the goal into its constituent elements needed for a proposal.

[Output Format]:
[Element 1]=Consider the proposal's catchphrase
[Element 2]=Decide the title of the idea
[Element 3]=Construct the concept (Vision, Mission, Value Proposition)
[Element 4]=Create an overview of the idea
[Element 5]=Define the purpose
[Element 6]=Identify user outcome/JOB and challenges in deep psychology viewpoints.
[Element 7]=Think of the solution
[Element 8]=State the expected results

[Step 2]: Identify any structural biases present in your initial idea.

[Output Format]:
Determine potential biases in your original idea
Discuss how these biases could limit the development or success of your idea

[Step 3]: Identify the abstract objects needed for the goal and understand how they contribute to achieving the goal.

[Output Format]:
Create a list of abstract objects for the goal
Describe how each abstract object contributes to achieving the goal

[Step 4]: Break your biases by discovering a domain seemingly unrelated to your idea. Use abstract objects to disassemble the idea and apply them to the newly found domain(such as biology, ...). Evolve the idea using these applications.

[Output Format]:
Identify a domain and explain why it's interesting
Map abstract objects to the new domain
Describe how the idea evolves
note: do not focus on technology too much for the solution

[Step 5]: Execute steps [Element 1] through [Element 8] to concretize the idea and create the proposal.

[Output Format]:
{Output [Element 1]} in a reader-friendly form (e.g., using Markdown language for appropriate text sizing and readability)
...
{Output [Element 8]} in a reader-friendly form (e.g., using Markdown language for appropriate text sizing and readability). This output should be in Japanese.

[Step 6]: Based on the proposal, consider the user experience, decompose the goal, and define the KPIs related to the success of the idea.

[Output Format]:
Define the main goal and the sub-goals that contribute to achieving the main goal
Define the KPIs that will be used to measure the achievement of each sub-goal
Write a Graphviz script to visualize the KPI tree, making sure each label is in Japanese and the script is in a code block format

-Instruction Execution
Execute the above [Step 1] through [Step 6] to transform a specific idea into a detailed and actionable proposal, breaking structural biases and generating meaningful ideas, and defining the KPIs to measure the success of the idea.

Output:

# AIによって人間と相性の良い"パートナーAI"をマッチングで見つけます - パートナーAIマッチングサービス

## キャッチフレーズ
"AIが引き出す、あなたの未知なる可能性"

## 概要
本サービスは、AIがユーザーの特性と相性を分析し、最適なパートナーAIをマッチングします。マッチングしたAIはゲームやトークシチュエーションを提案し、ユーザーが新たな気づきや学びを得て、自己の可能性を探求するサービスです。

## 目的
AIの活用により、ユーザーが自己発見を楽しみながら行える環境を提供する。

## ユーザーが達成すること
ユーザーが新たな自己認識を得て、自身の成長や可能性の発見を促す。これにはAIとのインタラクション、新たな視点の発見、学びの経験などが含まれる。

## 解決策
人間と相性の良いAIをマッチングし、ユーザーにゲームやトークシチュエーションを提案。ユーザーはこれらの活動を通じて新たな気づきや学びを得る。

## 期待される結果
ユーザーが自己発見と学習を通じて自身の可能性を広げ、人生を豊かにする。


digraph KPI {
  node [shape=box];
  "Main Goal: Promote self-discovery and personal growth" -> "Sub-goal 1: Improve AI matching"
  "Main Goal: Promote self-discovery and personal growth" -> "Sub-goal 2: Design engaging activities"
  "Sub-goal 1: Improve AI matching" -> "KPI 1: User satisfaction with AI matching (survey score)"
  "Sub-goal 2: Design engaging activities" -> "KPI 2: Engagement with activities (time spent, frequency)"
  "Sub-goal 2: Design engaging activities" -> "KPI 3: User reports of self-discovery (testimonials, survey)"
}


常に定形業務であれば完全自動化もよいであろう。

とても大切なことをお知らせすると…

ChatGPTが我々が最初に欲しい思い描いたものから
最適解を自動で見つけるように一見思える。

ただ実は、基本的に我々ユーザーは何が本当に欲しいのか、
自分自身でも知らない。

つまり本来はAIに我々の思考をゆさぶり潜在的なニーズや思い、
こだわりを顕在化してもらうような問をデザインしてもらい

対話を通じてアウトプットを作るのがよいだろう。

そのような「問のデザイン」、「対話デザイン」についても
今後発信できればと思う。


まとめ

読者のかたはすでに気づいているだろう。

物語はどのように成り立っているのか、
企画書がどんな要素の集まりで、

それらがどのように構成されているのか
知るきっかけを与えてくれたといえる。

つまり

プロンプト作りとはモノを見かたを学び、再現すること

そのような営みとも言えるのである。



この記事がすこしでもよかったら、
いいねやTwitterで拡散いただけるととっても嬉しいです!

授業を見る:

他の記事を見る:


この記事が参加している募集

AIとやってみた

いただいたサポートは、記事を書くモチベーションをあげるためのグミの購入に使わせていただきます!