英語で読む

次の方法で共有


エージェントと Copilot を LLM に連携する方法

エージェントと Copilot の両方が、メールの送信などの外部機能をインテリジェントに呼び出すことによって、LLM の機能を拡張します。

  • エージェントは、ユーザーの質問に回答し、プロセスを自動化する人工知能です。 エージェントは、どの関数がユーザーの目標を満たすかを決定し、ユーザーに代わりその関数を呼び出すことができます。
  • Copilot は、ユーザーとサイド バイ サイドで動作するエージェントの一種です。 エージェントとは異なり、Copilot は完全には自動化されておらず、ユーザー操作に依存します。 Copilot は、提案と推奨事項を提供することで、ユーザーがタスクを完了するのに役立ちます。

たとえば、メール チャット ヘルパー アプリを構築しているとします。 LLM と共に、メール関連のアクションを実行するためのプラグインと、検索、要約、意図の決定などのプラグインも必要です。 ネイティブ関数すぐに使用できるプラグイン、独自のカスタム プラグインを使用できます。

プラグインの作成は作業の半分にすぎません。適切なタイミングで適切な関数を呼び出す必要があります。これは、エラーを招きやすく非効率的なプロセスです。 エージェントは、これをより適切に処理できます。

エージェントは、LLM がユーザーの目標を達成するために使用できる関数のシーケンスを自動的に決定します。 たとえば、新しい受信トレイの項目を確認し、各項目に必要なアクションを決定するチャット アプリがあるとします。 エージェントを設定すると、必要なプラグイン関数を調整し、ステップを自動的に実行できます。

エージェントのコンポーネント

各エージェントには、ペルソナ、プラグイン、およびプランナーという 3 つの主要な構成要素があります。

  • ペルソナは、エージェントがユーザーに応答する方法やアクションを実行する方法を決定します。
  • プラグインを使用すると エージェントはユーザーまたは他のシステムから情報を取得できます。 事前に構築されたプラグインと独自のカスタム プラグインを使用できます。
  • プランナーを使用すると エージェントは使用可能なプラグインの使用方法を計画できます。

人格

エージェントのペルソナはその ID です。エージェントが使用するすべてのプラグインとプランナーはツールですが、ペルソナはそれらのツールの使用方法を決定します。 プロンプトで指示を使用して、エージェントのペルソナを確立します。

たとえば、指示を使用して、ユーザーのメールの管理に役立っていることをエージェントに伝え、その決定を行う際に説明することができます。 プロンプトは次のように表示されます。

C#
prompt = $"""
    <message role="system">
    You are a friendly assistant helping people with emails.
    When you decide to perform an action, explain your decision and then perform the action.
    </message>
"""

プラグイン

プラグインを使用して、外部データ ソースからデータを取得したり、実世界でタスクを完了させるなど、LLM だけではできないことを実行します。

たとえば、LLM はメールを送信できないため、その関数をチャット アプリに追加するには、プラグインを作成する必要があります。 メールのテキストを処理するには、ConversationSummaryPlugin などのコア プラグインを使用できます。

プラグイン内の関数を明確に文書化してください。プランナーはこの情報を使用して、使用可能な関数を決定します。

プランナー

プランナーは、使用可能な関数を分析し、目標を達成するための別の方法を考え出すことができます。

プラグイン関数の呼び出しが、必ずしも効率的とは限りません。 たとえば、1 から 100 までの数値を合計するとします。 数学プラグインを呼び出すこともできますが、LLM は番号ごとに個別の呼び出しを行う必要があります。

さらに、目標を達成するための関数の最適なシーケンスと組み合わせは、詳細によって異なります。 たとえば、メール チャット ヘルパー アプリを構築していて、メールの送信を有効にするプラグインを含めるとします。 ただし、一部のメールでは、RSVP のない会議出席依頼など、別のアクションが必要になる場合があります。返信を送信する必要はありませんが、予定表アイテムを追加する必要があります。 プランナーは利用可能なすべての機能を確認して、目標を達成するための効率的な方法を考え出します。

Copilot によるユーザー操作の追加

プロセスの自動化には多くのメリットがありますが、ユーザーが途中で意思決定を行う必要がある場合があります。 エージェントはユーザー アクションを自動化できません。 そこで Copilot の出番です。

メール チャット アプリのエージェントは、次のようなメール送信プランを生成する場合があります。

  1. ユーザーのメール アドレスと名前を取得する
  2. 受信者のメール アドレスを取得する
  3. メールのトピックを取得する
  4. メールの件名と本文を生成する
  5. メールを送信する

非常に便利ですが、ユーザーがメールの本文を気に入らない場合はどうなりますか? Copilot は、ユーザー操作ステップをプランに追加します。

  1. ユーザーのメール アドレスと名前を取得する
  2. 受信者のメール アドレスを取得する
  3. メールのトピックを取得する
  4. メールの件名と本文を生成する
  5. ユーザーと一緒にメールを確認し、調整を行う
  6. メールを送信する

セマンティック カーネル チャット Copilot アプリ

Copilot を使用開始するには、セマンティック カーネル チャット Copilot (AI エージェントとのチャット エクスペリエンスを構築するための参照アプリケーション) をお試しください。