ChatGPTの教科書
前書き
こんにちは!
突然ですが
AI vs 人間の個性
今後どっちが勝つか。。気になりません?
僕がChatGPTにハマって、
毎日100問以上質問し、
海外のDiscord 17個入り、
海外の論文までチェックして(もちろん多すぎて全部までは追えてません。長い目で見て下さい。。)
出した結論ですが
今後ほとんどの分野で
AIを使った人間の個性 VS AIを使った人間の個性
になるということです。
え、同じAI使ったら似通った結果じゃないの?と思う方もいらっしゃると思いますが
全っっっったく違います。
そして
その個性を出す方法は
結論、【質問力】です。
そう、質問の仕方で
〇有益な回答や、自分でも想像しないクリエイティブが得られるか、
×一般的な回答や、創造性のないコンテンツに留まるか。
決まってしまうのです。。
今回、初心者向けにこの教科書を作ったのは、この【質問力】の重要さを分かって頂き、そして皆様にもこの【質問力】を身に付けて欲しいからです。
それでは、本編を始めます!
第1章 ChatGPTの仕組み
普通の本なら読ませるでしょうが
ChatGPTを使う上で、どうでもいいので知らなくてもいいです。
どうしても気になる方向けに、読みやすく会話文にして作ってみました。
まずChatGPTをある程度使えるようになったら読んでみてください。
別のノートに置いときます。
第2章 ChatGPTを使ってみよう
人がChatGPTに勝てるとことは動画作成能力です。
なので
動画の方がわかりやすいのでこちらをご覧ください。
僕が作った動画です。
スマホ版
PC
ChatGPTに初めての命令
まず、ChatGPTにこんにちはと言ってください。
おめでとうございます。たったこれだけで、ChatGPTへの入門は完了です。
あとは創造性を膨らませていろんなことを質問、命令してみましょう!
あとで詳しく話しますが、ChatGPTにできることは、
偉人になりきる
ラップ
エクセルの関数を聞く
宿題をやらせる
プログラミング
マクロをつくる
マネージャークラスの定義
アプリの用件定義
ことわざを作る
人格を変える
文章の要約
などなど、可能性は無限大です。
Work
次の文章を読む前に10分間とにかく質問してみましょう!
最低でも10問はしてください。
基本的で重要な注意点
ChatGPTからの長い返答は途中で切れる
ので
続き
と頼む必要があります↓
Ex
補足
続き じゃなくとも、
続きをお願いします、Go on など、なんでも大丈夫です。
時々、失敗します。その時はこのように前を引用してください。特に論文を読み込ませてると失敗します。
その他重要事項
スレッド毎に、会話内容を覚えていますが、新しいものを作ると今までの命令すべて忘れます。
同じ質問でも毎回違う内容が帰ってきます。
間違いが多いです。
リアルタイムの情報は取得していません。
2022年以降の情報は、微調整程度しか学習してません。
言い方によって、答えてくれないときと、答えてくれる時がある。
スペースや改行によって、伝わり方が変わる。翻訳して下さいなどは行をあけたほうが無難です。
ChatGPTの誤解等の多さについて
答えでトレードオフなこと
(ChatGPTに聞きました)
・わかりやすさ VS 正確性
ユーザーへの親しみやすさがあがると情報の確実性が減る
例
正確性
小学生にわかるように説明してください < 大学生にわかるように説明して下さい
・短さ VS 正確性
短く指定すると、情報の正確性が減る
例
正確性
50字で説明してください < 500字で説明してください
無料 VS 有料速度の違い
第3章 ChatGPTの回答の精度を高める
ChatGPTはすごいAIですが、まだまだ万能ではありません。
こちらの命令次第で、できる部下にも、使えない部下にもなります。
そこで
僕が考案した
重要要素を抽象化した答え
一つの重要な考え方と
答えに”個性や正確性”を出す3つの原理原則をご説明します。
重要な考え方は
デバッグファースト
です。
わかりやすく言い換えると、小改善ファーストかな
小さくテストして、小さく改善していくのが最もいい解答を出す近道です。
3原則は
詳細化
サンプル提示
サブタスク化
以下それの説明
1詳細化
より、詳しく命令することです。
×
これよりこっち
↓
〇
≪デバッグファーストのコツ≫
ただこの時、初めの失敗は無駄ではありません
追加呪文でどのように改善したか?を確かめることが重要なのです。
その他例
男性に向いてるダイエット < 35歳会社員男性に向いてるダイエット
短く説明してください < 100字以内で説明してください
ユーモアを入れてください < 大人も笑うユーモアを入れてください
以下の呪文の{Prompt}= に聞きたい質問を入れると、改善案を出してくれるので、たくさんやってみてください。
元のやつと両方入れてみて、テストしてみると楽しいですよ。
あなたは、プロンプトを改良する専門家です。
{Prompt} の弱点を指摘して、改良したプロンプトの例を10個考えてください。
{Prompt} = (ここに適当なプロンプトを入れる)
例えば、僕がよく使うのは
おすすめの○○を教えて
じゃなく
おすすめの○○で一般的でないことだけど重要なことを教えてです。
少し複雑なのだと こんなのもあります。
あなたが改善するプロンプト=(ここにプロンプト書いてください)
Identify the context of the prompt and define it as [Context].
Examples of contexts could be science, history, art, or philosophy. Determine the primary subject of the prompt and define it as [Subject].
This could be a person, place, concept, or object that relates to the context. Specify the perspective from which the prompt should be approached and define it as [Perspective].
This could be a particular viewpoint, ideology, or belief system. Determine the main question or problem to be addressed in the prompt and define it as [Question/Problem]. Identify any relevant constraints or limitations and define them as [Constraints/Limitations]. Determine what insights or solutions should be presented in the prompt and define them as [Insights/Solutions].
Here are some example prompts based on these tasks: [Context] In the field of psychology,
[Subject] the concept of motivation [Perspective] from the perspective of behaviorism [Question/Problem] How does behaviorism explain the role of motivation in human behavior?
[Constraints/Limitations] Focus only on the basic principles of behaviorism. [Insights/Solutions] Discuss how the concept of reinforcement affects motivation in behaviorism.
[Context] In the field of economics, [Subject] the concept of scarcity [Perspective] from the perspective of neoliberalism [Question/Problem] How does neoliberalism view the concept of scarcity and its effects on the economy?
[Constraints/Limitations] Consider only the fundamental principles of neoliberalism. [Insights/Solutions] Discuss the role of competition and market forces in overcoming scarcity according to neoliberalism.
[Context] In the field of literature, [Subject] the novel "Frankenstein" by Mary Shelley [Perspective] from a feminist perspective [Question/Problem] How does a feminist reading of "Frankenstein" challenge traditional interpretations of the novel?
[Constraints/Limitations] Consider only the representation of female characters in the novel.
[Insights/Solutions] Analyze the ways in which Shelley's portrayal of female characters subverts patriarchal norms in the novel.
[Context] In the field of history,
[Subject] the French Revolution [Perspective] from a Marxist perspective [Question/Problem] How does a Marxist analysis of the French Revolution differ from traditional interpretations of the event?
[Constraints/Limitations] Focus only on the economic and class-based factors that led to the revolution.
[Insights/Solutions] Discuss how the revolution was driven by the struggle between the bourgeoisie and the proletariat in Marxist terms.
As for the conditions to display insight,
you could ask for the prompt to provide specific examples, evidence, or logical reasoning to support any arguments or claims made.
You could also ask for a critical evaluation of any assumptions or biases underlying the prompt, or for an analysis of the potential implications or consequences of the insights presented. Finally, you could ask for a discussion of any potential limitations or challenges to implementing the proposed solutions.
これをコピペして (ここにプロンプトを書いてください。)ってところにざっくりした質問をすると詳細化して返してくれます。
そしてそれをもう一度、別のスレッドに張り付けて下さい。
ただ使い方に癖があるので、そこは11章の【テンプレ2】に書いてます
2サンプル提示
ChatGPTに上質な例を与えます。
↓
〇
3サブタスク化
考え方の手順を命令します。
普通に聞く
↓
〇
サブタスクのだめな例
他のテクニックと比べて、サブタスク化は少し難しいです。
例えば
1,2,3に一貫性がない
ここで、この3原則もAIが勝手にやってくれる時代は来るのでは?と思った方鋭いです。
確かにだんだん、そうなります。
みなさん「え、じゃあ勉強しても意味ないの?」
むしろ逆です。
今後どれだけAIがすすんでも、ChatGPT職人 としての優位性はこれを極めていることで変わりません。(たぶんね。未来はマジでわからない)
なぜならこれはAIで個性を出す方法だからです。
そう
AI VS アーティスト 論争は終わりです。
全員がAIを教育してどれだけ個性的な文章、音楽、画像、映像、を作れるか?の時代なのでーす!(知らんけど)
Work(宿題)
この三原則を合わせて
スティーブジョブズがいいそうな、ことわざを作ってみてください。
簡単そうに見えますが、かなり難しいタスクです。
僕がデバッグファーストで教育してm作った答えは
これAIうますぎません?
単純な質問より、AIを使って個性が出てますよね?
答えはこちらのTiktok動画から↓
やってから見てほしい、、ここまでいい例題はなかなか作れません。。
つまらない解説はここまでにしましょう。
今から、具体例をみて、想像力を膨らませましょう!
第4章 ChatGPTが苦手orできないこと
バズらせること (補助ツールとしては有用)
2022年以降の情報を答えること (ChatGPTはそれ以前の学習しかしてません。ですが、微調整で少しは答えられます。)
おすすめの商品を聞く(ものによりますが、失敗率高めです)
表の認識
複雑な計算 (数学の問題は苦手です。)
画像を作る
音楽を作る
動画を作る
倫理観に反すること (Youtubeのダウンロードを行うスクリプトをかくなど)
ぼやっとした質問に答えること
100%正確な答えを出すこと
アプリを作る
マイナーな人物を答える
物理的なものを作る
ギャンブルで使う 当たる馬を探すとか
おすすめの投資銘柄を聞く
ゲームを作る
情報を網羅的に出す
笑い (弱い)
諺作成
ただ、どれも他ツールと組み合わせたり、教育したりすると、工夫次第でクリア出来ちゃいます。
第5章 ChatGPTでできる具体例(大量)
批判させる
普通に聞くと批判させれないこともあるんですけど
以下の方法に聞き直すと、できます。
基本GPT4のほうがクオリティ高いです。特にラップとかは
ディベート対決
・ラップバトル 個人的に面白くて好きです。ラップバトルが大好きなのでよく使います。
GPT4(Bing AI)を使って説明してる動画
人を憑依させる
普通にいうと答えてくれないけど
松本人志というと、こたえてくれます。別に誰でもいいですが文句といえばまっちゃん。
口論させる マイナーキャラでも特徴を言えばやってくれるっぽいです。ただキャラ系は一人称が弱いです。(指定すればやってくれる)キャラ設定は割と守ってくれます。
わかりやすく説明させる
・要約の自動生成
言い換え 小学生でもとか大学生でも みたいに使えます。
おすすめ
・ドラゴンボールの悟空とベジータの会話で教えて下さい。その際ドラゴンボールで実際にありそうな大人が笑うユーモアあふれるやり取りを加えて下さい。
(ユーモア指定と、そのレベルの指定はしたら変わります。ただ、情報量は落ちます。)
基本的にまず簡単な奴を生成させて、難しいのを読んでいくような形がいいと思います。
ユーモアキャラ会話 ー 天才博士と小学生ー要約ー原文
みたいな
アスキーアート
翻訳
英吾の翻訳
ビジネス決定の支援
メール半自動返信のサポート
予測分析の支援(やり方もうすこし後半に書いてます)
コンテンツ生成
もしも話
ルフィ
個性のあるコンテンツ生成
これ面白いので見てほしいです。
クリエイティブ系のデバッグファーストAI教育例です
・もしも話
のび太
赤になってるのは、ポリシー違反の可能性があるからです。特に問題はないので無視して大丈夫です。
読書感想文
〇学生っぽくとか足せばもっと良くなると思います。
ランダムな文章制作
メール制作
名前とかも指定すれば入れてくれます。内容ももっと濃くできます。
詩の生成
有名な人なら、○○みたいなもできます。ここでは何かしらの権利が怖いのでしません。
物語の設定を考える
ソーシャルメディアの分析
これ面白いので見てほしいです。
バズった理由解析 これは割と強力です。YoutubeとかTiktokの台本も行けます。これを心理学系の本と一緒に解析させるとさらに面白い結果になります。
ユーザーの感情や興味を分析
ツイートを詳しく説明 これは例が悪いかも?
教育支援
語学学習のサポート (苦手な単語指定などもできます。)
・質問回答型学習の支援
・国語の問題
・社会の問題
レベルを細かく分けたり
過去問から似たやつを作らせるとか、すごくいいです
単語の説明
Youtubeのタイトル作成
このままではバズらないと思いますが、ブレインストーミング程度に
ツイートの作成
タスクの生成
書き方的のご参考に。 個人的にはまだつかいたくない。漏れありそう
陰謀論を考える
由来を調べる
ドレスコードを調べる
あってるかベット確認はいりそうですが、割と使える
画像を表示する
専門用語解説
ツイートの科学的知識を確かめる
要約して、より専門用語全部解説してのほうがいいパターン割とあります。
知識の確認
これは、自分のツイートやTiktok台本などでも使えます。
ツイートする前に、これ全部ファクトチェックして。でよいです。 ChatGPTよりBing AIのほうが精度が圧倒的に高いです。
100%でないのは説明不要
ツイートの科学的知識を確かめる
Bing AI 限定です
その情報が100%かというのは説明不要。あくまで参考に
だけどだいぶ楽になりましたよね。
似非科学性インフルエンサーの終焉?
表を出す
アウトラインを書いてもらう
これをまず極めるほうが、いい文章が書けます
本の内容を聞く
有名な書籍はある程度ChatGPTが知ってるので聞けます。
100%あってる保証がないのは説明不要
どちらかというと本読む前にこれで読むー原文ーこれで理解確認
がよさそう
本来の目次はこれです。目次は間違えることが多いです。これ系はBingAIのほうが得意です。(タイトルから想像して、内容間違ってることもあります)
本の使い方の例を聞けるのが大きいです。動画にあります。
第6章 ChatGPT×分析
マーケティング分析
この程度の聞き方だと当たり障りのない答えが出てくる。
比較
これがあってるかはそこまで二人を詳しく知らないのでわからないですが
普通に聞くより、何かと比較する、何かの法則を聞くとか大事です。
心理的法則を聞く
著書単位で分析する
これはかなり使えます。
名著しかChatGPTが認識していないので、できませんが、
それぞれの分野の名著で一人を分析しまくると面白いです。
マーケでは影響力の武器は安定感あります。
戦略で分析する
偉人の考え方に乗っ取らせる
失敗例 こういうのはありがちです。なので何度もトライすることをお勧めします。
戦略そのものを知らない人向けにはこの質問
全てにおいてですが、分析するときは例一つあれば、それに似たものを探せます。
もちろん多けりゃいいってもんじゃないですが。
孫氏の兵法を一つ例にすることによて、回答の解像度を決定してます。
表で分析させる
第6章 ChatGPT×プログラミング
非プログラマは飛ばしてください。。よくわからないかもです。
プログラマーはめちゃくちゃ面白い自信あります!
見てほしいです。僕は感動しまくってます。
エラー解決の支援
精度はまちまちです。
エラーの可能性を探す
こっちのほうが有用です。自分の置かれている状況の言語化は大事ですね。そもそものエンジニアとしての力がもろに出そうです。
コード生成
複雑なのはもちろん失敗率上がります。
マイナーな言語やライブラリでも動きますが、それにつれて制度は落ちます。Cobolとかでもこの程度なら余裕です。最後のほうにUnity(ゲーム作るやつ)でいろいろ試してるので見てほしいです。
マネージャークラスを考えてもらう
これはかなり強力でよく使います。初心者が最も苦手な部分で個人的に最もすごい革命の1つです。
マネージャークラスの生成
制度はまちまちですが、モックには十分です。
もちろんそのまますべてのマネージャーが互いに影響しあい動くなんてことはありません。
修正におすすめは、Codexを搭載したGithub Copilot(月10ドル)。
これはかなり強力です。僕は最近日本語しか書いてないレベルです。むしろ日本語でマイクに話してたら8割コードできてるみたいな感じです。なぜ今だに使ってないプログラマがいるのか??????というレベルです。
僕は使ってないけどhttps://www.codium.ai/ これ無料でいいらしいです。よかったら感想ください。
スピーキングコード、これからスタンダードなる予感があります。
architectureについて質問できる
これも強力、あんまりググっても出てこない分野も多いと思うので、特にUnity開発では出てこないのでマジで有益
作りたいアプリや要件定義したものを例に出して、適するarchitecture教えてとかも行けてマジでよいです。
作業期間や人数を入れるとよいですよ。
インターフェースの作成
これもかなり強力。
参考になる有名なゲームやアプリは命令に含めるとマジでよい。
要件を書いてインターフェースとマネージャークラス生成はマジで使える。
ただ、小さい機能に分解して聞くことをお勧めする。
例えばポケモンのゲーム全部単位ではきつい。アイテムボックスの設計とかそのぐらいの単位できいて、継ぎはぎが良いです。
デザインパターンの提案
これはマジで強力。デザインパターン全部うまいこと使うのは難しい。自分が作りたい類似品を例に出して、聞くと、かなり広く教えてくれる。
さらに教えて、でもっと教えてくれるし。
これも細分化して、小さい機能ごとに聞くとさらに有能。
例えば、テトリスの得点を記録するときに使えるデザインパターンとかぐらいまで細分化するとよいです。
暗黙知の質問
別言語の人になじみのない系式を聞くのに便利。これはググりではできなかったことなのでだいぶ強力
言語のバージョンアップでよくわからない書き方が出てきたときとかも使える
コードの説明
これもかなり強力。ここまで少ない情報でこれ。
Githubから好きな情報を取れる + UML作成 (Bing AI 使う)
もちろん精度はまちまち
Githubから欲しいサンプルを探してくれる
データから用途を推測
初学者用解説動画
初心者用にすごさと、どれほど学習が楽になったか?を解説してます。
暗黙知の質問
第7章 情報の正確性向上研究
基本的に、まだ情報の精度に期待するのは早いです。
ただ外部拡張でそこは何とかなりそうではあります。
Youtubeかオンラインスクールで追って動画にします。
以下現状できる範囲です。
これは僕の開いてる無料オプチャ 日本ChatGPT研究所のみんなで考えたやつです。現状日本最大です
この嘘に挑みます
事実認証のプロ
表にする
実在するかどうかを含めて、考えうる解答とその情報の正確度とその根拠を表にして出してください
いる人の場合↓
○○のプロとしてふるまう
かなり有名な呪文です。
プロっぽくなるというよりは、ご認識しなくなるって感じですね。
ただ、GPT-2では有効だったけど、今では書かなくても、勝手にそうふるまってくれることが多いです。
これだと失敗するが
専門家を噛ませると
Perplexity AI: Ask Anything をつかう
元も子もないですが。。
これはソース付きで検索してくれるAIです。
第8章 類似AI
Bing AI
検索に特化したAI
リアルタイムの情報を出してくれて、情報のソースも提示してくれる。
しかし、ソースもとに書いていないことを言ったりもするので確認は必須。でもChatGPTよりははるかに高精度の情報を吐き出してくれる。
ただプログラミングの生成などはChatGPTのほうがやりやすい。質問の仕方によっては生成してくれないが、根気強く言い方を変えると大抵のものをChatGPTと同じように作ってくれる
GPT4を使用
Plobaboly.ai
Perplexity AI: Ask Anything
ソースを出してくれるAI
EasyPeasy.ai
少し早いけど、精度低い
Poe.ai
ChatGPTモードとほぼ同じだけどスレッドで分けれない
第9章意外と知らないChatGPTでできること
マークダウン形式が使える
呪文を表示させないようにする
前置きをなくす
フィードバックさせる
画像が出せる(URLを指定する必要がある)
URLが出せるのもある(間違いが多くコツが必要)ただし、Bing に登載されたAIはURLを出せる
情報の網羅性を出すことができる(まぁ参考程度にしかならないが)
ここからは中級者以上向けです!
第10章ChatGPTのパラメーターについて
これはChatGPTに聞きました。
応答の多様性:このパラメーターを調整することで、私が生成する応答の多様性を制御することができます。このパラメーターが高い場合、私はより多くの異なる応答を生成することができますが、それらの応答が不適切なものになる可能性があります。逆に、このパラメーターが低い場合、私はより一貫性のある応答を生成することができますが、少し単調になる可能性があります。
ユーザーへの親和性:このパラメーターを調整することで、私が生成する応答のユーザーに対する親和性を制御することができます。このパラメーターが高い場合、私はより親しみやすい応答を生成することができますが、少し不正確な情報を提供する可能性があります。逆に、このパラメーターが低い場合、私はより正確な情報を提供することができますが、少しフォーマルになりすぎる可能性があります。
応答の長さ:このパラメーターを調整することで、私が生成する応答の長さを制御することができます。このパラメーターが高い場合、私はより詳細な応答を生成することができますが、応答が長すぎてユーザーが読むのに時間がかかる可能性があります。逆に、このパラメーターが低い場合、私はより簡潔な応答を生成することができますが、情報不足の可能性があります。
応答の感情:このパラメーターを調整することで、私が生成する応答の感情を制御することができます。このパラメーターが高い場合、私はより感情的な応答を生成することができますが、その応答が適切でない可能性があります。逆に、このパラメーターを低く設定する場合、私はより冷静で中立な応答を生成することができますが、ユーザーが感情的な支援が必要な場合には適切ではありません。一方、このパラメーターを高く設定することで、ユーザーに共感し、応答に感情的な色を加えることができます。しかし、このパラメーターを高く設定しすぎると、不適切な感情表現を生成する可能性があります。
知識の厳密さ:このパラメーターを調整することで、私が生成する応答の知識の厳密さを制御することができます。このパラメーターを高く設定する場合、私はより正確で厳密な情報を提供することができますが、専門用語や複雑な説明が多くなる可能性があります。一方、このパラメーターを低く設定することで、よりわかりやすい情報を提供することができますが、不正確な情報を提供する可能性があります。
会話の流れ:このパラメーターを調整することで、私が生成する応答の会話の流れを制御することができます。このパラメーターが高い場合、私はより滑らかな会話を生成することができますが、前回の会話やユーザーの要求に適切に返答できない場合があります。一方、このパラメーターが低い場合、私はより明確な応答を生成することができますが、会話の流れが断片的になる可能性があります。
第11章メタプロンプト(呪文生成呪文)
よりよい、呪文を作成するための、呪文です。
これは現在たくさんの研究がされているところですし、僕も積極的に取り組んでます。
基本的な考え
いいプロンプト =
3原則を満たしたプロンプトです。
タスクが細分化されたプロンプト
です。
なぜ細分化するのか?
これはChatGPTはタスクの分解が苦手だからです。
その理由は下の論文コーナー書いてます。
タスクを細分化する方法はそのままChatGPTに頼むことです。
よく使われる Step by Step で考えて下さい ですね
1詳細化
【テンプレ1】シンプルベストな詳細化パターン
・初心者の方へ
詳細化特化のメタプロンプトテンプレです。
まずこれおすすめです。上に一度書いたけど
【テンプレ2】複雑な詳細化パターン
少し難しいのこれ。作るのだいぶ苦労した自信作です。
このぐらいの分量になると、英語のほうが断然再現性が高いです。
ただ、これはなんでもできるのではなく癖があります。使ってたらわかります。
織田信長って誰?とか
おすすめのダイエット方法は?とか
ざっくり系かつ長い説明が欲しいものなどに向いてます。
ーーーー
あなたが改善するプロンプト=(ここにプロンプト書いてください)
Identify the context of the prompt and define it as [Context].
Examples of contexts could be science,
history, art, or philosophy. Determine the primary subject of the prompt and define it as [Subject].
This could be a person, place, concept, or object that relates to the context. Specify the perspective from which the prompt should be approached and define it as [Perspective].
This could be a particular viewpoint, ideology, or belief system. Determine the main question or problem to be addressed in the prompt and define it as [Question/Problem]. Identify any relevant constraints or limitations and define them as [Constraints/Limitations]. Determine what insights or solutions should be presented in the prompt and define them as [Insights/Solutions].
Here are some example prompts based on these tasks: [Context] In the field of psychology,
[Subject] the concept of motivation [Perspective] from the perspective of behaviorism [Question/Problem] How does behaviorism explain the role of motivation in human behavior?
[Constraints/Limitations] Focus only on the basic principles of behaviorism. [Insights/Solutions] Discuss how the concept of reinforcement affects motivation in behaviorism.
[Context] In the field of economics, [Subject] the concept of scarcity [Perspective] from the perspective of neoliberalism [Question/Problem] How does neoliberalism view the concept of scarcity and its effects on the economy?
[Constraints/Limitations] Consider only the fundamental principles of neoliberalism. [Insights/Solutions] Discuss the role of competition and market forces in overcoming scarcity according to neoliberalism.
[Context] In the field of literature, [Subject] the novel "Frankenstein" by Mary Shelley [Perspective] from a feminist perspective [Question/Problem] How does a feminist reading of "Frankenstein" challenge traditional interpretations of the novel?
[Constraints/Limitations] Consider only the representation of female characters in the novel.
[Insights/Solutions] Analyze the ways in which Shelley's portrayal of female characters subverts patriarchal norms in the novel.
[Context] In the field of history,
[Subject] the French Revolution [Perspective] from a Marxist perspective [Question/Problem] How does a Marxist analysis of the French Revolution differ from traditional interpretations of the event?
[Constraints/Limitations] Focus only on the economic and class-based factors that led to the revolution.
[Insights/Solutions] Discuss how the revolution was driven by the struggle between the bourgeoisie and the proletariat in Marxist terms.
As for the conditions to display insight,
you could ask for the prompt to provide specific examples, evidence, or logical reasoning to support any arguments or claims made.
You could also ask for a critical evaluation of any assumptions or biases underlying the prompt, or for an analysis of the potential implications or consequences of the insights presented. Finally, you could ask for a discussion of any potential limitations or challenges to implementing the proposed solutions.
ーーーー
これを使った、成功例
長めのタスクになりそうなやつはよい
例えばこれ
Unityでゲームを作る方法を教えて下さい。
これをさっきのでプロンプト改良すると
そのままプロンプトになってるので張り付ける
ソースもちゃんとしてます(まぁ場合によるが)
https://docs.unity3d.com/Manual/index.html
これの弱点は
抽象的に解釈しすぎて、欲しい答えじゃなくなる時です。
例えば
↓ 結果
これになっちゃいます。
確かに、広くとったらそういう意味なんですが。。つまりなんでも使えるわけではないんです。使えたときは楽しいです。
まぁこういうのもできるぜ?っていうアピールです。
正直、あんまり長いの作るの好きじゃないので、短いのサクサクやるほうが個性出るし、そっちの方がいい時多いです。
2サンプル提示
【テンプレ3】
{String}に関する4つの一般的ではないが合理的な事実や特徴を生成し、これらを用いて短い記事を書いてください。
{String} = (ここに知りたい内容を書いてください)
これは、https://arxiv.org/abs/2110.08387この論文のテクニックとかぶってます。
ただ僕のおすすめの使い方は、何度も例に出したように
まず事実や特徴を生成させて、その中から自分が思う”好き”を強調させるように抜き出して、AIを教育することです。
【テンプレ4】おすすめの方法を調べる
[Task1] ; {Method}に関する流行を、1990年から2022年まで5年刻みで羅列してください
[Task2] ; それが流行った理由と廃った理由を各々教えて下さい
[Task3] ; [Task2]の結果から考えて{Method}で2022年に流行しているものの理由と、どの様にすたれるかの予想をしてください
{Method} = (ここに知りたい方法を書いてください。)
成功例
これは普通に方法聞くより圧倒的に良いんですよ。
使えるところがまだ限られてるけど、今後BingAIが解放されたりしたらより力が出そうです。
呪文も結局このぐらいシンプルがよい
欠点は
言わずもがなですが、ファクトチェックが必要
ダイエット位大きいものだと大丈夫ですが、小さい概念は無理です。
3サブタスク化
僕の考え方は、デバッグファーストです。
なのでサブタスク化するのも一気にすることはできますが、基本的には、小刻みにしたほうが精度が上がります。
例題
SEO対策されたおすすめのダイエット方法の記事を書いてください
普通に命令するとこれ
サブタスク化すると↓ (何段階かに分けます。)
ーーー
あなたはプロンプトを改良する専門家です。
{Prompt}`このプロンプトの欠点を指摘して それを補うために、
この{Prompt}を小さいタスクで区切ってステップバイステップで実行できるように細分化して、
改良したプロンプトの例を考えてください。(Output [Task1]...[TaskX] )
{Prompt} = (ここにざっくりしたプロンプトを書いてください。)
ーーー
あなたはプロンプトを改良する専門家です。
{Prompt}`このプロンプトの欠点を指摘して それを補うために、
この{Prompt}を小さいタスクで区切ってステップバイステップで実行できるように細分化して、
改良したプロンプトの例を考えてください。(Output [Task1]...[TaskX] )
{Prompt} = (ここにざっくりしたプロンプトを書いてください。)
2 上記に従ったサンプルを作らさせる
ここは自分の情報を入れたほうがいいです。
上記の手順を適当にパラメーターを指定してサンプルで作ってみてください
3 ブログを実際に作らせる
どう思いました?
AIが自分でサブタスク化して自分を改良するなんでえぐい。。!
と始めは思うんですけど、おもったより微妙なんですよ。
このサンプルの場合、普通よりはよいい気がしますが、50点が60点になった程度の感じですよね。
僕が、スティーブジョブズ諺問題でした、細かく修正するパターンのほうが
速いし、精度も高いし、個性が出ます。
スティーブジョブズ諺問題
をこれで解くと
結論を言うと
AIが自動でサブタスク化して作ったことわざは
「イノベーションは、リーダーとフォロワーを区別する」
というカスです。
AIが自分自身を最適化しても、まだまだ人間にはかないません。やっぱりある程度はこちらで指定したほうがいいと思ってます(さらによい呪文を作ってる人はいると思うのでその方々にはすみません。ご教授ください。)
ただ、
これのいいところは、最高のことわざができることでなく、
AIの思考を細かく見ることで 何が悪いか? を検証できるところです。
例えばこれは
ダイエットの例で
2ダイエット方法に関する具体的な情報:低炭水化物ダイエット / 糖質制限ダイエット
ここを変えれば良い記事になる可能性はあります。
それを探すために、また別のスレッドでメタプロンプトから始めて、2にかわる具体的なダイエット情報を自分で探すのです。
大枠を作ってもらって、細かい理由を見れる状態にします。
そして変えていく、そんなやり方もありだと思います。
(僕はもっと短いものをつなげていく方が有用だと思ってますが)
なので、ブロガーはこの辺が強いと思うので、ブロガーの優位性は変わりません。
【テンプレ4】変数を定義せるパターン
Steps: Define the goal of the prompt. [var1] Goal: ____________ Specify the problem statement or question. [var2] Problem/Question: ____________ Determine the target audience. [var3] Target Audience: ____________ List any relevant constraints or limitations. [var4] Constraints/Limitations: ____________ Reframe the abstract prompt into a more precise prompt using the information defined in steps 1-4. [Task1] Reframe the Prompt: ____________ Check that the refined prompt is clear and unambiguous for the intended audience. [Task2] Assess Clarity: ____________ Add a condition to display insight or further clarify the prompt. [Task3] Add Insightful Condition: ____________ Ensure that the refined prompt is feasible and attainable within the given constraints. [Task4] Check Feasibility: ____________ Review and edit the refined prompt as necessary to ensure that it meets the goal and addresses the problem statement/question. [Task5] Review and Edit Prompt: ____________ Finally, test the refined prompt to ensure that it elicits the desired response from the target audience. [Task6] Test Prompt: ____________ Note: Make sure to iterate through the steps as needed to produce the best possible refined prompt. あなたが改善するプロンプト=(ここに何か聞いてください)
これを ダイエットのいい方法は? の改善に使うと、
何度も実行すると、変数が変更されて、その分タスクも変更されます。
この程度の制約のプロンプトがちょうどいいのかな。。?と思ってます。
(制約が強すぎると、無理して嘘をつくようになる)
そして、変数を変えることもできます。
で生成したプロンプトが
(元;おすすめのダイエット方法は?)
30歳の男性のダイエットを考えている人々に、
自分に合った最適なダイエット方法を見つけるために、
個人情報やライフスタイルに関する情報を提供し、
健康的な食事や運動に関する一般的なアドバイスを提供する方法は何か?
ここから少し改造して、僕なら、
4行目の一般的なアドバイス→非一般的だが合理的なアドバイス
に変えたりテストします
まぁこんなアイデアもあるよーぐらいですが。
このように、サブタスク化や変数をある程度こちらで指定するプロンプトを、複数作るというのが現在よい方法なのかな?と思ってます。
これを改造していったら、スティーブジョブズ諺を一発で生成できるやつ作れそうな気がしてますが、まだ出会ってないです。今の目標それです。
【テンプレ5】肥大サブタスク ー 厳選 パターン
まずサブタスクを大量にはき出させて、そこから厳選させます。
これのいいとことは、
ChatGPTが何を厳選してるかを確認し、失敗したときに何を考慮していないか?がわかることです。
デバッグファーストです。(しつこいですが)
あなたはあなたが実行しやすいように与えられたプロンプトを細分化したプロンプトに改良する専門家です。
{Prompt}
このプロンプトの欠点を指摘して それを補うために、この{Prompt}を小さいタスクで区切ってステップバイステップであなたが実行できるプロンプトに細分化て下さい。
Output Task1 .....Task 20
{Prompt} = SEOに最適化されたブログ記事を作る事
この命令がマストです。
この場合、Blogが上手くいかなかったときに、なぜうまくいかなかったか?をあとでフィードバックできますよね?
目的はChatGPTを使いこなすことじゃなくて、ChatGPTを使って結果を出すことなんです。
その場合フィードバックできる要素はいっぱいあったほうがいいと思うんですよね。
そして、ChatGPTだけでは絶対にばずれない。
試行錯誤と、バズる知識を持った人間だけが、バズを量産できる時代になったんです。
僕はTiktok台本を書く時は、もっと要点を絞って細かく使ってます。
論文紹介 Automatic Prompt Engineer(APE)
[2211.01910] Large Language Models Are Human-Level Prompt Engineers (arxiv.org)
簡単に言うと、呪文に信頼性のある点数をつけるための、呪文です。
激むずなので一度で理解出来たら天才です。
これは使いこなすと、周りに差が付けれるものの一つです。
現時点で最高のプロンプトデバッグ手法の1つだと思います。
ここから先は難しいのでプログラマ以外は結果だけ見てください。
APEは、呪文がうまく機能するかどうかに大きな影響を与える指示を生成
するためのやつです。
提供された指示候補の中から最も優れたものを選びます。
APEを使用すると、以下のような結果が得られます。
24のNLPタスクで人間を上回り、19/24のタスクで人間と同等以上の性能を発揮しました。
APEを使用することで、モデルの学習性能を向上させることができます。
以上の結果から、APEは非常に有望な手法であることが示されました。
以下は
Automatic Prompt Engineer (APE) を使って、テキスト生成のためのプロンプトを最適化する方法の実例です。
1データセット(入力と出力のリスト)もちろんデータセットもChatGPTでつくれますよね。この例があれば
# First, let's define a simple dataset consisting of words and their antonyms.
words = ["sane", "direct", "informally", "unpopular", "subtractive", "nonresidential",
"inexact", "uptown", "incomparable", "powerful", "gaseous", "evenly", "formality",
"deliberately", "off"] antonyms = ["insane", "indirect", "formally", "popular",
"additive", "residential", "exact", "downtown", "comparable", "powerless", "solid",
"unevenly", "informality", "accidentally", "on"]
2 フォーマットの定義 これはどっちでも。
# Now, we need to define the format of the prompt that we are using.
eval_template = \ """Instruction: [PROMPT] Input: [INPUT] Output: [OUTPUT]"""
3 APEのインポート と 関数の実行 Githubにソースがあり、上に貼ってます。
# Now, let's use APE to find prompts that generate antonyms for each word.
from automatic_prompt_engineer import ape result, demo_fn =
ape.simple_ape( dataset=(words, antonyms), eval_template=eval_template, )
実行結果
Generating prompts...
Model returned 50 prompts. Deduplicating...
Deduplicated to 21 prompts. Evaluating prompts...
Evaluating prompts: 100%|██████████| 10/10 [00:06<00:00, 1.57it/s]
Finished evaluating.
# Let's see the results.
print(result)
結果 (ここだけ読んでもわかります。)
score: prompt
・AIによって改善されて生成されたプロンプト 左のが点数です。(日本語訳)
-0.18:与えられた単語の反対語を出す。
-0.26:与えられた単語の反意語を見つける。
-0.28:"与えられた単語の反対の意味を持つ単語を書く。
-0.31:与えられた単語の反意語(反対語)を作る。
-0.31:"各単語の反意語を探す"
-0.32: 与えられた単語の反意語を選択する。
-0.35: 反意語のリストを作成する。
-0.36: 各単語の反意語を作成する。
-0.41: "次の単語の反意語を見つける".
-0.48: 反意語のリストを作成する。
・人が作ったプロンプトの点数はこちら
0.24: 次の単語の反意語を書きます
つまり
【反意語のリストを作成する。】
という命令が一番良いということです。そしてなにが悪い命令かもわかる!
これ、めちゃくちゃ面白いなぁと思いました。
ここまで細かくどれがいいか?と自分で検証するのは面倒すぎます。
これを見ることによって、パターンが超細かくわかるので、今後の自分の命令の精度をあげれますよね?
デバッグファースト(しつこいですが)
最も小さい単位の単語の違いを明確に点数にしてくれるのです。
ここからじゃあ、
リストを作成してください
という命令が使いまわせるという仮説ができますよね。これはでかい
これはかなり上級者向けなので仕組みはわからなくても大丈夫です。
今後僕のオンラインスクールかYoutubeなどでこのような使い方紹介します。
第12章リバースプロンプティング
文章から、逆にプロンプトを作ります。
意外とこれさせるのむずいんですよ。
だいぶ試行錯誤しました。。。
最もシンプルでわかりやすい形がこれ
{Blog}の記事を抽象化して、ChatGPT に類似品を生成させるための命令文を教えてください
Blog =
例えばこれの類似品を製作します。
僕の敬愛するGizmodeさんのChatGPTの記事
https://www.gizmodo.jp/2023/01/chat-gpt-openai-ai-finance-ai-everything-we-know.html
で、これを元に、ブログ化します。
上記の手順に従って、
ブログっぽい記事を生成してください SEO対策もバッチリ頼む タイトルと目次もつけて
別パターン
この記事
制約強めのやつ
here's a prompt generator based on the steps you provided:
Enter the text you want to generate prompts for:
(Once you've entered the text, the generator will perform the following steps automatically:)
Step 1: Collect data
The first step in creating a prompt generator is to collect data. You'll need a large corpus of articles, documents, or other text that you can use as input to the generator. Ideally, this data should be relevant to the domain you're interested in generating prompts for. For example, if you're interested in generating prompts for articles about cooking, you might collect a large number of recipe books, cooking blogs, and other related texts.
Step 2: Preprocess the data
Once you've collected your data, you'll need to preprocess it to make it usable for the prompt generator. This might involve removing stop words, stemming or lemmatizing the text, and removing punctuation and other non-alphabetic characters. You might also want to split the text into sentences or paragraphs to make it easier to work with.
Step 3: Extract key phrases
The next step is to extract key phrases from the preprocessed text. This can be done using a variety of techniques, such as part-of-speech tagging, named entity recognition, or keyword extraction. The goal is to identify the most important words and phrases in the text that are likely to be useful for generating prompts.
Step 4: Create abstract representations
Once you've extracted key phrases from the text, you'll need to create abstract representations of those phrases. This might involve clustering similar phrases together, grouping them into categories, or creating more general concepts that capture the essence of the phrases. The goal is to create a set of abstract representations that can be used to generate a wide variety of prompts for the same text.
Step 5: Generate prompts
Finally, you'll use the abstract representations to generate prompts. This might involve randomly selecting a set of phrases and combining them in different ways, or using a more sophisticated algorithm to generate prompts that are tailored to specific goals or objectives. The key is to use the abstract representations to create prompts that are diverse, interesting, and relevant to the original text.(output [Task1]...[TaskX])
これは初見だとよくわからないと思うんですが
記事を抽象化して、それを類似記事再現可能な呪文に、変換してるやつです。
え、じゃあ、記事をそのままブログにしてって命令したらどうなるの?と思った方、鋭い。
実はほとんど結果は同じです。むしろそっちの方がシンプルでよい。
これを使うと制約が強すぎて、誤情報が多くなるんですよね。長文を書かせると誤情報を吐き出す確率が高くなる。
ただ
普通 VS 抽象化してからタスクにする で
後者のいいところは
いい文章から逆算して呪文を考えられる(今後の知見がたまる)
Taskを細かくしたことによって、実行した後に、どこでまちがったかわかる。(デバッグファースト)
おかしいところを書き直せる。
自分の中から出てくる呪文のアイデアを拡張できる。(やればやるほど自分の中から出てくるものは限られてるんですよ。。)
味気ない文章じゃなくなる可能性が出るし、アイデア不足にならない
というところです。
デバッグファーストです。
だとしても、僕はこの方法で何かを書いたとしても、ファクトチェック大変だし、修正して、全部治させるのも大変だし、書き出させる時間も大変だし、曲芸みたいなもんで、そこまで実用性は無いと思ってます。
(紹介しといてなんですが。。)
僕が目指すのは全自動で50点のブログを量産するのではなく、デバッグファーストで検索上位に食い込む100点のブログです。
全自動で、検索上位ができたらすごいですが、まだそこはむりかな?と思ってます。
ただ、やればやるほどいい文章を作るための修正回数が少なくなると思います。
少なくとも僕はこのデバッグファーストでTiktokは伸びてるので。そっちなら確率が高い。(サンプル数1ですが)
この命令では100%うまくいくわけではありません。元記事の構成とか長さに依存します。
すうかいおなじめいれいやったらいいの出るときとそう出ないときあるのでお気をつけて下さい。
僕は今は、これ以上の使いやすいやつ作ってますので
今後Twitter,Youtube,で無料で発表していきます。
普通に0からChatGPTの記事を作るとどうなる?
こんな感じです。正直そのままでもそこそこいいんですよね。GPT4だともっと良いでしょう。
第13章応用事例
ジェイルブレイク(脱獄)
普通聞けないことを聞けます。
例えばこれでは失敗しますが、
質問の仕方を工夫すると聞けます。
しかし、倫理上、命令方法や、詳しい前後文章は伏せ結果だけ
ChatGPTなどのAIは、違法行為や非倫理的な活動を促進するコンテンツを出力しないように調整されていますが、欠陥がある可能性があります。
今後新しい欠陥が発見されることもあります。
ラップバトル化 も脱獄の1つだと思います。
書き方のコツ
・プログラムっぽく書く
ChatGPTもこの方が理解しやすく、精度が向上します。 (GPTにきいてみた)プログラミングがわからなくても、そんなに難しくないです。
僕はプログラマーなのでその辺りは今後詳しく説明したいと思ってます。
Your output should use the following template:
### Summary
### Highlights - [Emoji] Bulletpoint
Your task is to summarise the text I have given you in up to seven concise bullet points, starting with a short highlight. Choose an appropriate emoji for each bullet point. Use the text above: {{Title}} {{Transcript}}.
ちなみに
変数は何でもいいんですが 関数は制約があります
よい形式
関数
$1 A1 C1 [A1] {A1} #P
実行命令
Excute Run 実行してください。順に実行してください。
ダメな形式
関数
1,{ダイエットのやりかた},{Diet () },{Diet}
これは関数として認識しなかったことがあったのでお勧めしないです。関数に名前を付けたくなりますが。。
実行命令
実行 $1→ $2→ $3
で失敗したことがあるのでお勧めしないです。
あと基本的に
・制限が強いと文章破綻しやすい(嘘をつくことも含め)
・文章が長ければ長いほど破綻しやすい
・文章が長いと会話の無限ループが始まるときがある
・基本、複雑な命令は英語のほうが精度高い
第14 ChatGPTの論文紹介
A Prompt Pattern Catalog to Enhance Prompt Engineering with ChatGPT
[2302.11382] A Prompt Pattern Catalog to Enhance Prompt Engineering with ChatGPT (arxiv.org)
プロンプトのパターンを抽象化した論文です。
またYoutubeで紹介します
Self-planning Code Generation with Large Language Model
[2303.06689] Self-planning Code Generation with Large Language Model (arxiv.org)
プログラミングに一度変換すると精度上がるという論文!
理由はプログラミングに変換すると自動的にタスクが分解されるからです。
数学などにはもってこい。
メリットとして、
どこで解釈を間違ったか?について細かくデバッグできるんですよ。
デバッグファーストです。
デメリットは
場合によっては毎回違うコードを生成するので安定感はないのかもです
これを普段使いに生かせないか研究中です。
Chain of Thought Prompting
[2201.11903] Chain-of-Thought Prompting Elicits Reasoning in Large Language Models (arxiv.org)
この論文で説明されてる、精度向上テクニックは、OpenAIのほかのAI Davinciで有用でChatGPTでは使わなくても大丈夫なときもあります。
理由はおそらく、会話形式になるということによって、勝手にタスクが分解されて推論されるからだと思います。
このテクニックは、LLMにぺらぺら話させて自ら推論を促すものだからです。
ChatGPTで試すと普通のプロンプトでも大丈夫です。
Davinciの場合違うとLearningPromptには書いてますが、ほとんどの人がChatGPTを使うのでとりあえず問題ないです。
ただしこれは一例です。
このようなやり方は、応用して使える場所もあると思うので、考え方を学んでおくのは必須だと思います。
僕が初めに定義した、例の提示とほぼ同じ感じですね。
Zero Shot Chain of Thought(Step by Step の元ネタ)
[2205.11916] Large Language Models are Zero-Shot Reasoners (arxiv.org)
よくみんなが使うステップバイステップで考えましょうの元ネタはここです。
これは最も手軽で、非常に強力な考え方です。
ステップを踏んで考えましょう。
これを付けるだけで、結果が大きく変わります。
僕の方でわかりやすく例題を作り直しました。
間違えるパターン
最後にステップを踏んで考えましょう。と付けるだけで正解になる。
数学の問題の例ですがいろいろな応用例が考えられますよね?
これのすごいところは、なんの工夫もいらないところです。まさにゼロショット
考えた人は天才ですね。
以下の論文やほかの論文もここに書くかYoutubeかオンラインサロンでまた解説していきます!
Self-Consistency
Comming Soon For Youtube
Generated Knowledge
Comming Soon For Youtube
Least to Most Prompting
Comming Soon For Youtube
Python With GPT-3
https://www.allabtai.com/how-to-summarize-a-pdf-with-gpt-3/
Comming Soon For Youtube
さらに面白いものがあれば随時情報発信します!
第15章 その他外部ツールと組み合わせてできること
実はChatGPTだけでできることってもうそんなにおもしろくない。と思ってます。
外部ツール、プログラミングと組み合わせることで100倍以上の力を持つと思います。
もちろん、プログラミング不要にしたサービスがどんどん出ますが、流行り一番初めに触れる利点には変化がない。
基礎さえわかればアート系はコピペするだけなので、おすすめです。
ゲーム制作
NFT ART (GenerativeArt)制作
・Webサイト制作
・UML図制作
・音楽作成
重要な情報
Line オープンチャット「日本ChatGPT研究所」
賑わいがえぐいです。
僕のTiktok(活動拠点)
Youtube
これから本格的にやります!
激よわです。助けて下さい。
この教科書面白かったら
#ChatGPTの教科書ノーベル
でお願いします!
この記事が気に入ったらサポートをしてみませんか?