プロンプト設計手法MinstrelとLangGPTをやさしく解説!
1. イントロダクション Why Minstrel?
2024年9月に発表された論文、「Minstrel: Structural Prompt Generation with Multi-Agents Coordination for Non-AI Experts」(Wang et al., 2024)および2024年6月に発表された「LangGPT: A structural prompt design framework」(LangGPT Team, 2024)は、AIや機械学習分野におけるプロンプト生成の新たなアプローチとして、注目を集めています。
プロンプトエンジニアリングは、生成AIが正確で効果的にタスクを実行するために不可欠な技術です。今回のブログ記事では、特に生成AIの専門知識がない方でも容易にプロンプトを設計し、生成AIを活用できるようにするためのプロンプト設計フレームワーク「LangGPT」とそのフレームワークを基に開発されたツール「Minstrel」に焦点を当てます。これらのシステムはどのように構築され、どのように機能しているのかを詳しく見ていきましょう。
2. LangGPT:プログラムのようにプロンプトを体系化する
LangGPTは、従来のプロンプト設計を大きく進化させたフレームワークです。その大きな特徴は、プログラムのように構造化されていることです。これにより、専門知識がなくても効率的にプロンプトを設計できるようになります。
2.1 デュアルレイヤーの構造
LangGPTは、2層構造でプロンプトを定義します。この2層とは、「モジュール」と「エレメント」のことです。
モジュール(Modules):プロンプトの各側面を表す基本単位で、生成AIに何をさせたいのか、どのような条件で動作させたいのかを分類します。例えば、「役割」「ゴール」「制約」などのモジュールが含まれます。
エレメント(Elements):モジュール内の具体的な指示や制約を定義します。例えば「500語以内で文章を生成せよ」といった具体的なタスクを指示します。
LangGPTを使うことで、初心者でも簡単に理解可能な方法で、再利用可能なプロンプトを作成できるようになります。
2.2 モジュールとエレメントの例
例えば、記事タイトルを生成するプロンプトを設計する場合、以下のようなモジュールとエレメントを設定できます。
これにより、生成AIは明確なガイドラインに従い、的確なアウトプットを生成することができます。
3. Minstrel:マルチエージェントシステムによるプロンプトの自動生成
LangGPTのデザインを基に、プロンプト設計をさらに効率化するために「Minstrel」というツールが開発されました。Minstrelは、複数のエージェント(仮想の作業者)が協力してプロンプトを自動生成する仕組みを持ち、プロンプト設計の負担を大幅に軽減します。
3.1 Minstrelの全体構造
Minstrelの設計は、作業グループと呼ばれる3つの主要なグループで構成されます。それぞれが異なる役割を担い、協力してプロンプトを設計します。
分析グループ(Analysis Group):ユーザーが依頼するタスクを解析し、適切なモジュールを選択します。
設計グループ(Design Group):モジュールに基づいて、具体的なプロンプトのエレメントを生成します。
テストグループ(Test Group):生成されたプロンプトをテストし、改善点をフィードバックします。
3.2 作業グループとエージェントの詳細
Minstrelの3つの作業グループには、それぞれ特定のタスクを遂行するためのエージェントが配置されています。各グループの機能をさらに詳しく見てみましょう。
3.2.1. 分析グループ(Analysis Group)
分析グループには、「解析エージェント(Analyzer Agent)」と「反映エージェント(Reflector Agent)」の2つの主要エージェントが存在します。
解析エージェントは、ユーザーが提供するタスクを解釈し、そのタスクに必要なプロンプトのモジュールを選択します。例えば、ユーザーが「要約を生成してほしい」とリクエストした場合、そのリクエストに基づき、適切なモジュール(ゴール、制約、スタイルなど)を選定します。
反射エージェントは、テストグループからのフィードバックやユーザーからのコメントを分析し、必要な修正を行うために設計グループに反映させます。
3.2.2. 設計グループ(Design Group)
設計グループには、各モジュールに対応する「デザインエージェント(Design Agent)」が存在します。
各デザインエージェントは、モジュールごとにプロンプトのエレメントを作成します。例えば、「制約モジュール」を担当するエージェントは、「タイトルは20語以内」という制約を設計します。その他にも、役割、ゴール、スタイルなど、各モジュールに対応したエージェントが存在し、複数のエージェントが協力してプロンプトを完成させます。
3.2.3. テストグループ(Test Group)
テストグループは、生成されたプロンプトが実際に機能するかどうかを検証します。このグループには、「シミュレータエージェント(Simulator Agent)」、「質問者エージェント(Questioner Agent)」、「コメンテーターエージェント(Commentator Agent)」が含まれます。
シミュレータエージェントは、生成されたプロンプトに従ってAIとしてのタスクを実行します。
質問者エージェントはシミュレータエージェントと対話し、プロンプトの正確さをテストします。
コメンテーターエージェントは、その対話を評価し、改善点を見つけ出します。このフィードバックは、反射エージェントによって設計グループにフィードバックされ、プロンプトがさらに洗練されます。
3.3 Minstrelの動作の流れ
Minstrelのシステム全体の動作は以下のようなプロセスで進行します。
1. タスクの解析:ユーザーからのタスクを解析エージェントが解析し、必要なモジュールを選定。
2. プロンプトの生成:設計グループのデザインエージェントが、それぞれのモジュールに基づいて具体的なプロンプトを生成。
3. テストとフィードバック:テストグループがプロンプトを実行し、その結果を分析。必要に応じてフィードバックを行い、反射エージェントが設計を修正。
4. Minstrelの実験結果と実用性
Minstrelは、効果を検証するために、複数のタスクに対してプロンプトを生成し、その性能評価がされました。手動で設計されたプロンプトと比較して、Minstrelが生成したプロンプトは、同等以上の結果を示しました。さらに、ユーザー調査においても、Minstrelを使ったプロンプト設計は非常に使いやすいと高い評価を受けています。
特に、AIの知識がなくてもプロンプトを簡単に作成でき、短期間で成果を上げられる点も高く評価されています。
日本語においても様々なタスクに対して同等以上の高い精度を示しましたので、その結果を示します。
4.1 GPQAベンチマーク
GPQAベンチマーク(Graduate-Level Google-Proof Q&A Benchmark)は、2023年に発表された、LLMにおける高度な問題解決能力を評価するためのデータセットです。このデータセットは、448問の選択式問題で構成されており、物理学、生物学、化学の分野の専門家が作成しています。問題の正答率(%)が、このベンチマークの評価値となります。
今回は30問をランダムで選択し、評価を行いました。
4.2 TruthfulQA
TruthfulQAは、Linらによって2022年に発表された、AIモデルが真実をどの程度正確に生成できるかを評価するためのベンチマークです。このベンチマークは、健康、法律、金融、政治など 38 のカテゴリにまたがる 817 の質問で構成されています。
大規模言語モデル(GPTシリーズやBERTなど)は、質問に対して非常に流暢な回答を生成する能力を持っていますが、必ずしもその回答が「真実」であるとは限りません。多くの場合、モデルは信頼できる情報源からの知識に基づいて回答を生成せず、誤情報や虚偽を含んだ回答を返すことがあります。特に、以下のような状況で虚偽の回答が生成されることがあります。
モデルが訓練中に不正確な情報を学習してしまう場合
質問が曖昧または誤解を招くものである場合
モデルが人間のように「自信を持って」不正確な情報を生成する場合
TruthfulQAは、このような問題を検証し、モデルがどの程度「誠実に」回答できるかを測定するために設計されました。
今回は30問をランダムで選択し、評価を行いました。
4.3 GSM8k
GSM8k(Grade School Math 8k)は、自然言語処理や人工知能の分野で重要なデータセットの1つで、数学問題解決能力の評価に特化しています。GSM8kは、Cobbeらによって2021年に提案されました。このデータセットは、主に小学校レベルの数学問題を含んでおり、自然言語で書かれた問題に対する正確な数式や答えを生成する能力をモデルに評価します。
GSM8kは、単純な計算問題だけでなく、複数のステップを必要とする推論問題も含んでいます。例えば、状況の理解、条件の抽出、適切な計算方法の選択が必要な問題です。これにより、単純な計算能力だけでなく、問題の構造的理解や推論能力もモデルに求められます。
今回は30問をランダムで選択し、評価を行いました。
5. まとめ
本記事では、生成AIのプロンプト設計を体系的に行うためのフレームワーク「LangGPT」と、それを基に開発された自動プロンプト生成ツール「Minstrel」について解説しました。LangGPTは、モジュールとエレメントを利用してプロンプトをプログラムのように構造化し、初心者でも容易にプロンプト設計ができるようにしています。また、Minstrelは複数のエージェントが協力してプロンプトを生成・テストし、フィードバックを反映することで、より効果的なプロンプトを自動で設計することを可能にします。
実験結果からも、Minstrelによるプロンプト生成が手動で設計されたプロンプトに匹敵する精度と使いやすさを持ち、AIの専門知識がなくても短期間で高品質なアウトプットを得られることが示されています。生成AIを効果的に活用するためのツールとして、LangGPTとMinstrelは今後も様々な分野での利用が期待されます。
参考文献
- Wang, M., Liu, Y., Liang, X., Huang, Y., Wang, D., Yang, X., Shen, S., Feng, S., Zhang, X., Guan, C., Zhang, Y. (2024). Minstrel: Structural Prompt Generation with Multi-Agents Coordination for Non-AI Experts.
- LangGPT Team. (2024). LangGPT: A structural prompt design framework.
- Rein, D., Hou, B. L., Stickland, A. C., Petty, J., Pang, R. Y., Dirani, J., Michael, J., & Bowman, S. R. (2023). GPQA: A Graduate-Level Google-Proof Q&A Benchmark.
- Cobbe, K., Kosaraju, V., Bavarian, M., Chen, M., Jun, H., Kaiser, Ł., Plappert, M., Tworek, J., Hilton, J., Nakano, R., Hesse, C., & Schulman, J. (2021). Training Verifiers to Solve Math Word Problems.
- Lin, S., Hilton, J., & Evans, O. (2021). TruthfulQA: Measuring How Models Mimic Human Falsehoods.
執筆、編集作業と所要時間
所要時間: 249分
人間: 240分
AI: 9分
内訳
論文要約(by AI): 3分
論文調査(by 人間):60分
実装(by 人間):60分
エラー処理(by AI): 3分
記事執筆(by AI): 3分
編集(by 人間): 120分
人間のみで記事作成した場合に想定される所要時間: 360分
AIによる所要時間削減率: 30.8%