他の場所で実質的に回答されていないことを願っています。検索しましたが、このアプローチに関する直接的な議論は見つかりませんでした。
問題点
現在、Discourse AI の会話内から他のエージェント(ペルソナ)を呼び出す方法はないようです。「エージェント」とは、メインのシステムプロンプトには存在しない専門的な能力や指示を持つ別のペルソナを呼び出すことを意味します。
これにより課題が生じます。ユースケースによっては、すべてのシナリオをカバーするために非常に大きなシステムプロンプトを作成する必要がある場合があります。その結果、めったに使用されない指示が含まれることになり、AI がすべてのやり取りで不必要に処理するためのオーバーヘッドや混乱を引き起こす可能性があります。
動作するソリューション: ディレクティブインジェクターとしてのツール
カスタムツールを使用して、エッジケースのディレクティブを挿入することができました。そのアプローチは次のとおりです。
- メインのシステムプロンプトをコアのアイデンティティと一般的な動作に集中させます。
- 次のような汎用パラメーターを持つツールを作成します。
- topic: string: 対処しているエッジケースのトピックまたは課題(必須) - 専門的なディレクティブをツールの JavaScript 内に直接埋め込み、呼び出されたときに返します。
- ツールを呼び出すタイミングを定義する小さな指示ブロックをメインプロンプトに追加します。
ユーザーメッセージがツールを呼び出す基準を満たすと、それが発火し、専門的な指示が会話コンテキストに挿入されます。これは完璧に機能します。
使用例
一般的なアシスタント AI が、詳細な技術トラブルシューティングや詳細な調査の統合など、専門的なモードに切り替える必要がある場合を考えてみてください。すべての会話でそれらの広範なプロトコルをロードする代わりに(そのほとんどは日常的な質問です)、ツールは会話のコンテキストが必要な場合にのみ専門的なディレクティブを挿入できます。メインプロンプトは簡潔で一般的なタスクに焦点を当てたままになり、専門的なモードはトリガーされたときにのみアクティブになります。
コミュニティへの質問
-
このパターンについてどう思いますか? 外部 API 呼び出しやデータ取得のためではなく、コンテキストに応じてアクティブ化される専門的な指示セットのコンテナとしてツールを使用することについて。
-
実際に他のエージェント/ペルソナを呼び出し、それらを会話に追加する計画や既存の方法はありますか? 会話の途中で専門家ペルソナを呼び出し、独自のシステムプロンプトをコンテキストに追加するようなものです。
-
注意すべき落とし穴はありますか? 現在、プライベート AI メッセージのコンテキストでのみこれを使用しています。
他の人がこのアプローチを検討したことがあるか、あるいは私が見逃しているよりエレガントな解決策があるかどうか知りたいです。