セマンティック カーネル エージェント フレームワークは、セマンティック カーネル エコシステム内にプラットフォームを提供します。これにより、AI エージェント の作成が可能になり、コア セマンティック カーネル フレームワークに存在するのと同じパターンと機能に基づいて、エージェント パターン を任意のアプリケーションに組み込むことができます。
AI エージェントとは
AI エージェントは、入力を受け取り、情報を処理し、特定の目標を達成するためのアクションを実行することによって、自律的または半自律的にタスクを実行するように設計されたソフトウェア エンティティです。
エージェントは、モデル、ツール、人間の入力、またはその他のカスタマイズ可能なコンポーネントの組み合わせを使用して、メッセージの送受信、応答の生成を行うことができます。
エージェントは共同作業を行うように設計されており、相互にやり取りすることで複雑なワークフローを可能にします。
Agent Framework
は、シンプルで洗練されたエージェントの作成を可能にし、モジュール性とメンテナンスの容易さを強化します
AI エージェントはどのような問題を解決しますか?
AI エージェントは、特に複雑なタスクでの手動介入を減らすために共同作業できるモジュール型 AI コンポーネントの作成を可能にすることで、アプリケーション開発のいくつかの利点を提供します。 AI エージェントは自律的または半自律的に動作し、さまざまなアプリケーションに対して強力なツールを提供します。
次のような主な利点があります。
Modular Components: 開発者は、特定のタスク (データ スクレイピング、API 対話、自然言語処理など) に対してさまざまな種類のエージェントを定義できます。 これにより、要件の進化や新しいテクノロジの登場に合わせて、アプリケーションの適応が容易になります。
コラボレーション: 複数のエージェントがタスクで "共同作業" する場合があります。 たとえば、あるエージェントがデータ収集を処理し、別のエージェントがデータ収集を分析し、さらに別のエージェントが結果を使用して意思決定を行い、分散インテリジェンスを備えたより高度なシステムを作成します。
Human-Agent Collaboration: 人間とループ内の相互作用により、エージェントは人間と一緒に作業して意思決定プロセスを拡張できます。 たとえば、エージェントは、人間がレビューして微調整できるデータ分析を準備し、生産性を向上させることができます。
プロセス オーケストレーション: エージェントは、システム、ツール、API 間でさまざまなタスクを調整でき、アプリケーションのデプロイ、クラウド オーケストレーション、作成や設計などの創造的なプロセスなど、エンドツーエンドのプロセスを自動化するのに役立ちます。
AI エージェントを使用する場合
アプリケーション開発にエージェント フレームワークを使用すると、特定の種類のアプリケーションに特に有益な利点が得られます。 従来の AI モデルは、多くの場合、特定のタスク (分類、予測、認識など) を実行するためのツールとして使用されますが、エージェントは開発プロセスにより多くの自律性、柔軟性、対話性を導入します。
自律性と意思決定: アプリケーションで独立した意思決定を行い、変化する状況 (ロボット システム、自律車両、スマート環境など) に適応できるエンティティが必要な場合は、エージェント フレームワークが推奨されます。
マルチエージェントコラボレーション: 複数の独立したコンポーネントを連携させる必要がある複雑なシステム (サプライ チェーン管理、分散コンピューティング、swarm ロボット工学など) がアプリケーションに必要な場合、エージェントは調整と通信のための組み込みメカニズムを提供します。
対話型および目標指向: アプリケーションに目標主導の動作 (タスクを自律的に完了する場合や、ユーザーと対話して特定の目標を達成する場合など) が含まれる場合は、エージェントベースのフレームワークが適しています。 たとえば、仮想アシスタント、ゲーム AI、タスク プランナーなどがあります。
セマンティック カーネル エージェント フレームワークをインストールする方法
Agent Framework SDK のインストールは、プログラミング言語に関連付けられている配布チャネルに固有です。
.NET SDK では、いくつかの NuGet パッケージを使用できます。
注
コア セマンティック カーネル SDK は、エージェント パッケージに加えて必要です。
パッケージ | 説明 |
---|---|
Microsoft.SemanticKernel | これには、 Agent Framework の使用を開始するためのコア セマンティック カーネル ライブラリが含まれています。 これは、アプリケーションによって明示的に参照されている必要があります。 |
Microsoft.SemanticKernel.Agents.Abstractions |
Agent Framework のコア エージェントの抽象化を定義します。 通常、 Microsoft.SemanticKernel.Agents.Core パッケージと Microsoft.SemanticKernel.Agents.OpenAI パッケージの両方に含まれるため、指定する必要はありません。 |
Microsoft.SemanticKernel.Agents.Core |
ChatCompletionAgent を含みます。 |
Microsoft.SemanticKernel.Agents.OpenAI |
を介して OpenAIAssistantAgent を使用する機能を提供します。 |
Microsoft.SemanticKernel.Agents.Orchestration |
Agent Framework のオーケストレーション フレームワークを提供します。 |
モジュール | 説明 |
---|---|
semantic-kernel.agents | これは、 Agent Framework の使用を開始するためのセマンティック カーネル ライブラリです。 これは、アプリケーションによって明示的に参照されている必要があります。 このモジュールには、 ChatCompletionAgent 、 OpenAIAssistantAgent 、 AzureAIAgent 、および OpenAIResponsesAgent 、および agent orchestration クラスが含まれています。 |
パッケージ | 説明 |
---|---|
semantickernel-agents-core |
ChatCompletionAgent クラスが含まれます。 |
semantickernel-aiservices-openai | これには、OpenAI を使用した Agent Framework の使用を開始するためのセマンティック カーネル サービス ライブラリが含まれています。 |
semantickernel-api |
Agent Framework のコア エージェントの抽象化を定義します。 一般に、上記の両方に含まれるため、指定する必要はありません。 |