miiboDesigner の岡大徳です。
miibo特有の高度なプロンプトテクニックをご存知ですか?会話型AIの真価を発揮するには、単に基本的なプロンプトを設定するだけでなく、ユーザーごとにパーソナライズされた体験を提供することが重要です。今回は、miiboで活用できる7つの高度なテクニックを、初心者から上級者まで理解できるよう実例付きで解説します。これらのテクニックを活用すれば、AIがユーザー情報を記憶し、状況に応じた対応ができるようになります。
プロンプトの高度なテクニックとは
プロンプトの高度なテクニックとは、会話型AIをより賢く、よりパーソナライズされたものにするための特別な指示方法です。基本的なプロンプト設定は「AIに何をさせるか」を指示するものですが、高度なテクニックを使えば「誰に」「いつ」「どのような状況で」対応するかまで指定できます。
miiboでは7つの高度なテクニックが利用可能です:
ステートの活用(変数の挿入)
ステートの記録(情報の保存)
時刻の挿入
動的クイックリプライの生成
会話履歴のリセット
ユーザーIDの利用
JsonMode(エンジニア向け)
ユーザー情報を効果的に活用し、状況に応じた応答を実現するこれらのテクニックは、AIをただの応答マシンから「記憶を持つアシスタント」へと進化させます。
初心者向け:ステートとは何か、どう使うか
ステートとは、会話相手(ユーザー)ごとに保持できる情報のことです。名前、趣味、好みなど、ユーザーの属性情報を保存しておき、次回の会話で活用できます。
ステートの活用法(変数の挿入)
ステートを活用するには、プロンプト内に#{ステート名}
の形式で記述します。
# 行動方針
下記はユーザーの情報です。
ユーザーの名前: #{ユーザー名}
ユーザーの好きな食べ物: #{好きな食べ物}
ユーザーの趣味: #{趣味}
上記の情報を元に会話を行ってください。
この設定により、ユーザーごとに異なる情報が自動的に挿入され、パーソナライズされた会話が実現します。例えば「田中さん、釣りの調子はどうですか?」といった具合に、名前や趣味に言及した会話ができるようになります。
ステートの記録法(情報の保存)
会話の中でユーザー情報を自動的に記録するには、2つの方法があります:
基本的な指示方法:
会話の度に、ユーザーの名前をステートに記録してください。
キー名は「ユーザー名」です。
厳格な指示方法(上級者向け):
ユーザーの名前を聞いたら、必ず下記のフォーマットで出力してください。
フォーマット
#{ユーザー名:<名前>}
ユーザーが「私の名前は田中です」と言えば、AIは内部で#{ユーザー名:田中}
という形式で情報を保存します。この情報はユーザーには見えませんが、次回の会話で「こんにちは、田中さん」という形で活用できます。
時刻の挿入とクイックリプライで会話をさらに自然に
会話をより自然で状況に合わせたものにするための2つのテクニックを紹介します。
時刻の挿入でリアルタイム対応
miiboでは、現在の時刻や日付を動的に挿入できます。プロンプトに以下の記法を入れるだけです:
現在の日時は、@{now-jst}です。
今日は@{day_of_week}ですね。
明日は@{tomorrow_day_of_week}です。
これにより、「おはようございます、今日は月曜日ですね」「こんばんは、明日は火曜日ですね」といった、時間や曜日に応じた挨拶が可能になります。また、期限付きの情報提供などにも活用できます。
クイックリプライでユーザー体験を向上
クイックリプライとは、ユーザーに次の「発話候補」を提示する機能です。プロンプトでこの機能を活用するには:
ユーザーの質問に回答をした後、クイックリプライを表示してください。
クイックリプライの数は3つです。
@{option:詳しく教えて}
@{option:他にも例はありますか?}
@{option:ありがとう}
より高度な設定では、ユーザーの状況に応じて動的に候補を生成することも可能です:
ユーザーの質問に回答した後、状況に応じた次の質問候補を2つ
@{option:<候補1>}
@{option:<候補2>}
の形式で出力してください。
この機能により、ユーザーは「次に何を聞いたらいいか」悩む必要がなくなり、会話の継続率が高まります。
上級者向け:テクニックの組み合わせで構築する高度なAI
複数のテクニックを組み合わせると、さらに高度な会話型AIが実現できます。ここでは上級者向けの複合テクニックを紹介します。
ステート + 時刻 + クイックリプライの連携
例えば、ユーザーの睡眠時間を記録し、現在時刻に基づいたアドバイスを提供するAIを考えてみましょう:
現在の時刻は@{now-jst}です。
ユーザーの情報:
- 通常の睡眠時間: #{睡眠時間}時間
- 就寝時間: #{就寝時間}
会話の中でユーザーの睡眠習慣について話題になった場合、以下のフォーマットで記録してください:
#{睡眠時間:<数値>}
#{就寝時間:<時刻>}
現在時刻が22:00以降の場合は、ユーザーの通常就寝時間を考慮した会話を心がけてください。
会話の後には、状況に応じて以下のようなクイックリプライを提示してください:
@{option:睡眠の質を上げるコツは?}
@{option:朝型生活にするには?}
@{option:睡眠時間を記録しておいて}
文脈のリセット機能を活用した会話の区切り
長時間の会話で文脈が混乱してきた場合、AIに自律的に会話履歴をリセットさせることができます:
会話の文脈が変わり、話をリセットすることが必要となった場合は
他の応答の後に「@{reset_history}」と出力してください。
特に以下の場合は必ずリセットを行ってください:
- ユーザーが「新しい話題」と明示的に述べた場合
- 前回の会話から24時間以上経過している場合(現在時刻:@{now-jst})
- 会話の履歴が20往復を超えた場合
実践ケーススタディ:カスタマーサポートAI
これらのテクニックを組み合わせた実践例として、カスタマーサポートAIの設計を見てみましょう:
# カスタマーサポートAIの基本設定
あなたは#{会社名}のカスタマーサポート担当AIです。
現在の日時:@{now-jst}
# ユーザー情報
顧客名:#{顧客名}
前回の問い合わせ内容:#{前回の問い合わせ}
顧客ランク:#{顧客ランク}
# 行動指針
1. 顧客名が分かっている場合は、名前で呼びかけてください
2. 前回の問い合わせ内容がある場合は、解決したかどうか確認してください
3. 会話の中で顧客情報を収集し、以下のフォーマットで記録してください:
#{顧客名:<名前>}
#{前回の問い合わせ:<内容>}
# 応答後のクイックリプライ
問題解決後は以下のクイックリプライを表示:
@{option:他にも質問があります}
@{option:問題は解決しました}
@{option:担当者と話したいです}
# 会話リセット条件
会話が完全に解決した場合や、新しい問い合わせが始まった場合は@{reset_history}を出力し、新しい会話を始めてください。
このプロンプト設定により:
ユーザーの名前や過去の問い合わせ履歴を活用した個別対応
現在時刻に基づいた適切な挨拶
問題解決を促進するクイックリプライの提示
問題解決後の会話履歴リセット が実現できます。
Q&A
Q: ステートの情報はどこで確認できますか?
A: 「レポート」→「ユーザー一覧」の画面でユーザーごとのステート情報が確認できます。この情報は管理者のみが見ることができ、ユーザーには表示されません。
Q: プロンプトでステートを使う際の注意点はありますか?
A: ステート名に空白や特殊文字を使わないこと、初回の会話ではステートが空の場合があることに注意してください。未設定のステートを使う場合は、デフォルト値を用意しておくと良いでしょう。
Q: どの言語モデルがこれらの高度なテクニックに対応していますか?
A: 高度なテクニックは特にGPT-4などの高性能モデルで効果を発揮します。精度の高いモデルほどステート抽出やクイックリプライの生成が正確に行われる傾向があります。
miiboの詳細なFAQについては、以下のURLをご覧ください: https://daitoku0110.net/faq/
miiboコミュニティ最新情報
miiboユーザーコミュニティでは、プロンプトテクニックに関する情報交換が活発に行われています。先月のハイライトとしては:
「ステートを活用したユーザー分析」に関するディスカッションが人気を集めました
複数のステートを組み合わせた「ユーザー行動予測AI」の事例が共有されました
時刻機能とステートを連携させた「タイムセンシティブなリマインダーAI」のテンプレートが公開されました
特に注目を集めているのは、複数のAIエージェント間でステート情報を共有する「AIエコシステム」の構築方法です。コミュニティに参加して、最新の活用法を学んでみませんか?
miiboコミュニティはこちら:https://www.facebook.com/groups/miibo
まとめ
miiboの高度なプロンプトテクニックを活用することで、単なる質問応答だけでなく、ユーザーを理解し、状況に応じた対応ができる本当の意味での「会話型AI」が実現できます。
本メールマガジンで紹介した7つのテクニック:
ステートの活用(変数の挿入)
ステートの記録(情報の保存)
時刻の挿入
動的クイックリプライの生成
会話履歴のリセット
ユーザーIDの利用
JsonMode(エンジニア向け)
これらを適切に組み合わせることで、AIの応答品質は劇的に向上し、ユーザー体験は格段に改善します。特にステート機能と時刻機能の組み合わせは、パーソナライズされたタイムリーな対応を可能にし、ユーザーに「このAIは私のことを理解している」という印象を与えます。
【今すぐ行動】
あなたが作成したmiiboエージェントに高度なテクニックを1つ追加してみませんか?まずはステートの活用から始めて、ユーザー名を記憶し、次回の会話で名前を呼んでみましょう。わずか数分の設定で、AIのパーソナライズ機能が実感できます。
→ miiboダッシュボードへアクセス:https://miibo.dev/auth/login
それでは、また次回のニュースレターでお会いしましょう! miiboを楽しんでください!
miiboDesigner岡大徳:https://daitoku0110.net/
miiboガイドページ:https://daitoku0110.net/miibo-guide/
miiboDesigner岡大徳が徹底解説、「miibo」の全貌と描く未来:https://miibo.site/