【LLM】対話式メタ・プロンプトが便利過ぎる話【メタプロンプト】
はじめに
プロンプトを作るためのプロンプト(メタ・プロンプト)の利用は、LLMや画像生成AIにおいて有効な手法の一つですが、対話式のプロンプトにすると予想以上に便利でした。
※ (Ollama)Open WebUIを利用しています
プロンプトエンジニアリング
将来的にAI性能が大きく上がる事で、本記事のような推論フェーズでの「プロンプトエンジニアリング」は無くなり、(※ 開発者・機械学習等には常に必須ですが)仕組みや理屈よりも、人間の意志や共感、興味、感情、欲望といった目的達成の原動力(本質)の方がより重要になると思います。
※ 楽器を演奏する時に、機械的な音楽理論や音符を意識しすぎると良くないのと同じで、訓練によって無意識下で楽器を制御できる方がより良い演奏になります。つまり将来的には、訓練によって「相手は機械だ」を意識から取っ払う必要が出てくるかもしれません。誰にも管理・盗聴されないローカルAIであれば、「自我のひとつ(自分の電脳)だ」と潜在意識でとらえる事も、プロとアマチュアの”演奏力”を分ける指標の一つになると考えられます。
※ パワハラプロンプトは典型例ですが、たとえ同じ結果をAIが返したとしても、指示を出した人間側の受け取り方が変わります。相手を擬人化してストレスを与えているという人間側の感覚や感情が重要になってきます
しかし、今のAI性能はそれほど高くありません。逆に言えば、機械的な理屈に忠実に作ったプロンプトの方が、人の意識や感情と密接にリンクした直感的なプロンプトよりも、まだまだ有効であるという事です。
プロンプトの基本は、
① 指示が明確で具体的である事
② ペルソナを指定する
「あなたは〜です」等
③ 否定よりも肯定表現を利用する
④ 例を提示する
Few-shotプロンプト
⑤ 利用するAIの性能や性質に対応させる
特にコンテキストサイズに注意
⑥ 程よいノイズ
幅(ノイズ)がなく解が100%確定するもの、自明なものはAIに不向きです
ノイズだらけだとハルシネーションしか生みません
⑦ ステップ・バイ・ステップで指示する
工程に分ける
Chain of Thought
これらを考慮したメタプロンプトを作ると、およそ次のようになります。
# [生成されるプロンプトのタイトル]
## 役割
[AIに与える役割の記述]
## 指示
[具体的なタスク指示と、その目的、ターゲット]
## 内容に関する指示
* [含めるべき情報1]
* [含めるべき情報2]
* [除外すべき情報1]
## 形式に関する指示
* **種類**: [ブログ記事、プレスリリースなど]
* **文字数/単語数**: [例: 800字以上1000字以内]
* **構造**: [例: 見出しと箇条書き、導入・本論・結論]
* **トーンとスタイル**: [例: 専門的かつフレンドリーなトーン]
## 制約と注意事項
* [制約事項1]
* [注意事項2]
しかし、全ての変数を埋める必要があるので、やる気が失せます。多くの場合、これらを埋めた終わった時には、人間側の思考が整理され、既にAIに聞くことが無くなっているはずです。AIを利用する価値が下がります。それはそれで良い事かもしれませんが
そこで対話式でのAI利用が力を発揮します。設計基本として、ゼロから人間が与えるのは大雑把な目標(テーマ)だけにして、あとはAIが詳細を詰めるために選択肢を提示させるようにします。※ 画像生成も同じで、構図→詳細+ガチャです。
対話式メタプロンプト
次のプロンプトを作ります。(筆者が作った対話式プロンプト例は付録欄に添付していますが、以下を条件としてLLMに聞けば誰でも簡単に作成可能ですので、良い練習になると思います)
人間がゼロから考えるのはテーマのみ
あとはAIが提示する選択肢からコピペ、または微修正
選択肢は文脈で動的に変化
面倒な場合はいつでもスキップ(詳細をAIまかせに)できる
対話式メタプロンプト利用例
例として、「鎌倉時代の執権政治」に関する資料を作りたいとします。テーマとして与えると、最初にAIが聞いています。

「執権による政策とその影響」とコピペします。

「歴史に関するドキュメンタリー番組の制作スタッフ」をコピペ

「政策を視覚的に分かりやすく解説するためのインフォグラフィックを提案するデザイナー」

「タイムライン形式で政策の変遷を可視化」

「鎌倉幕府の権力構造」

あとはAI任せで構わないので「GO」と入力

さらにローカルAIであれば、(個人情報・著作物等)ネット上へアップロードできない情報(知識・RAG)を「GO」を出す直前に与えることで、より深みのあるプロンプトを生成してくれます。※ 程よいノイズにもなります

次に、新しいセッションとしてプロンプトを利用(コピペ)します。不必要なノイズを避け、適切なコンテキストサイズで利用する事が可能になります。
Google Geminiで利用した例(長いので一部抜粋)



まとめ
AGIに近いものが出来るまでは、AIの限界(メモリ上限や構造)を常に意識する必要があります。さらに最近では、AIの表現ブロックも意識する必要があります。

この例は露骨すぎますが、本来は全く問題のないものであっても、AIの独善に抵触する政治的な表現や誘導、企業の利益相反があれば、ブロック・ニューロンが発動して、大きく性能が下がる事もあります。ポーランドでも露出狂としてプーさんが話題になったように、リアル人間ですらブロックの扱いは難しいものです。
※ もし例のような煽り気味のプロンプトに対して、AIがしれっと「普通のクマ」画像を生成した方が(AI性能のしたたかさに)戦慄しますが…
人間思考の「煽り」まで理解し、しれっと普通のクマを何もなかったように生成するような時代になれば、楽器を演奏するように、キーボードを意識しないブラインドタッチのように、今のプロンプトエンジニアリング全てを意識の外へ追いやる必要があるかもしれません。
付録
本記事で利用した(ローカルGemma3 12Bでチューニングの)対話式メタプロンプト例です。参考程度にご利用ください。Botのシステムプロンプトに利用しても動作します。
ここから先は
この記事が気に入ったらチップで応援してみませんか?
