次の方法で共有


クイック スタート: Python エージェント フレームワーク サンプル エージェントを設定して実行する

Important

Microsoft Agent 365 の早期アクセスを利用するには、フロンティア プレビュープログラムに参加する必要があります。 フロンティアは、Microsoft の最新の AI イノベーションと直接接続します。 Frontier のプレビューは、お客様の契約書に記載されている既存のプレビュー利用規約に従います。 これらの機能は現在開発中であるため、提供状況や機能は今後変更される可能性があります。

このクイックスタートでは、Agent 365 を使用してツール、通知、可観測性を備えたエージェント フレームワークを設定し、エージェントプレイグラウンドおよび Teams を使ってエージェントをテストする手順を説明します。

前提条件

  • Visual Studio Codeを使用する場合は、.NETがインストールされている必要があります。 (.NET 8.0 をお勧めします)。

  • Python 3.11 以降がインストールされている

  • UV パッケージ マネージャーがインストールされている。 を使用してターミナルにこれをインストールします。

  • Microsoft Agents Toolkit/Agent Framework の依存関係

    このチュートリアルで使用するサンプルは、Microsoft 365 Agents Toolkit または ATK を通じて提供される Agent Framework ライブラリに依存しています。 VS Code の「Agents Toolkit」拡張機能を使用してサンプルをスキャフォールディングする場合、これらは自動的にインストールされます。または、次のコマンドを使用してパッケージを手動でインストールすることもできます:

    uv pip install -e . --prerelease=allow
    
  • GitHubへのアクセス

  • 既存の AI エージェント プロジェクト。 このクイック スタートでは、Microsoft 365 エージェント ツールキット VS Code の ATK とも呼ばれるエージェント 365 サンプル エージェントを使用します。

  • A365 CLI

  • エージェント ID 認証

Microsoft 365 Agents Toolkit からエージェント フレームワークと Python サンプルを設定する

すべてを準備するには、VS Code に Microsoft 365 Agents Toolkit をインストールし、サンプル ギャラリーを開き、エージェント フレームワークと Python サンプルをローカルにスキャフォールディングして、後で構成して実行できるようにします。 以下のスクリーンショットは、操作を進める際に表示される内容の例を示しています。

  1. Visual Studio Code を開いた後、Extensions パネルを Ctrl+Shift+X で開きます。

  2. 検索バーに、Agents Toolkit と入力します。
    結果が次のスクリーンショットのように表示されます。

    Agents Toolkit の Extensions Marketplace 検索のスクリーンショット。

  3. Microsoft 365 Agents Toolkit を選択します。

  4. インストールを選択します。

    VS Code には、次のような拡張機能の詳細ビューが表示されます。

    インストール ボタンと有効化ボタンが表示された拡張機能の詳細ページのスクリーンショット。

  5. インストールすると、左側のナビゲーション バーに M365 Agents Toolkit アイコンが表示されます。

  6. これを選択して、ウェルカム エクスペリエンスを開きます。

    次に示すように、宣言型エージェントの構築、新しいエージェント/アプリの作成、サンプルの表示などのオプションが表示されます。

    宣言型エージェントの作成、新しいエージェントまたはアプリの作成、サンプルの表示オプションを含む Toolkit ウェルカム ビューのスクリーンショット。

  7. サンプルの表示を選択します。

  8. サンプルの一覧で、スクロールして Agent framework + Python エージェント サンプルを見つけます。

  9. それを選択します。

    Create (ローカルでスキャフォールディング) または View on GitHub の 2 つの選択肢があります。

  10. [作成]を選択します。

    エージェント フレームワーク エージェントとエージェント 365 SDK を使用した Python サンプルのスクリーンショット。

  11. プロンプトが表示されたら、サンプルを生成するマシン上のフォルダを選択してください。 例:

    このツールキットは、エージェント フレームワーク + Pythonサンプルをサブフォルダー (sample_agent など) にスキャフォールディングし、VS Code で自動的に開きます。

    スキャフォールディングが完了すると、完全に機能するエージェント フレームワーク + Python エージェント プロジェクトがマシン上に作成されました

  12. 必須の Agent 365 パッケージをインストールする

    サンプルを実行する前に、プロジェクト内の を開き、必要なすべての Agent 365 と Agent Framework の依存関係が一覧表示されていることを確認します。 Microsoft 365 Agents Toolkit によって生成されたサンプルには、既にこれらのエントリが含まれています。

    pyproject.tomlを確認したら、次のコマンドを実行してすべてをインストールしてください:

    uv pip install -e . --prerelease=allow
    

    これにより、すべての Agent 365 SDK ライブラリ、Agent Framework の依存関係、ホスティング コンポーネント、およびサンプルで定義されているその他の依存関係がダウンロードされます。

  13. インストール後、次のコマンドを使用して開発サーバーを起動して、プロジェクトのビルドと実行を確認します。

    uv run python start_with_generic_host.py
    

Microsoft 365 ツールの追加 (MCP サーバー)

CLI の a365 開発コマンドを使用することで、MCP サーバーを探索および管理できます。

MCP サーバーを使用すると、次のことができます。

  • 使用可能な MCP サーバーを検出する
  • エージェントの構成に 1 つ以上の MCP サーバーを追加する
  • 現在構成されている MCP サーバーを確認する
  • 不要になった MCP サーバーを削除する

MCP サーバーが追加されると、エージェントのツール マニフェストが拡張され、次のようなエントリが含まれます。

{
   "mcpServers": [
      {
         "mcpServerName": "mcp_MailTools",
         "mcpServerUniqueName": "mcp_MailTools",
         "scope": "McpServers.Mail.All",
         "audience": "api://00001111-aaaa-2222-bbbb-3333cccc4444"
      }
   ]
}

ツールの追加と管理する方法について説明します

通知サブスクリプションと処理

サンプル エージェントは、 を使用して Agent 365 SDK のすべての通知を購読し、それらを 1 つのハンドラーにルーティングします。 このハンドラーにより、エージェントは直接的なユーザー メッセージだけでなく、バックグラウンドやシステム イベントにも反応できるようになります。

エージェントに通知する方法について説明します

次のコードは、 ファイルでの通知の構成方法を示しています。

if notification_type == NotificationTypes.EMAIL_NOTIFICATION: 
if not hasattr(notification_activity, "email") or not notification_activity.email: return "I could not find the email notification details."
email = notification_activity.email
email_body = getattr(email, "html_body", "") or getattr(email, "body", "")

message = (
    "You have received the following email. "
    "Please follow any instructions in it. "
    f"{email_body}"
)

result = await self.agent.run(message)
return self._extract_result(result) or "Email notification processed."

可観測性

このスニペットは、サンプルで監視機能を有効にするために必要となる最小限の変更を示しています。 Agent 365 Observability SDK を初期化し、各エージェント呼び出しを でラップすることで、入力、出力、メタデータを自動的にキャプチャできるようになります。

以下のコードは、 ファイルにおける簡素化された可観測性の例を示しています。

def _enable_agentframework_instrumentation(self): 
"""Enable Agent Framework instrumentation.""" 
try: 
AgentFrameworkInstrumentor().instrument() 
logger.info("✅ Instrumentation enabled")
 except Exception as e: 
logger.warning(f"⚠️ Instrumentation failed: {e}")

このコードは、Python + エージェント フレームワーク のサンプルに必要な完全な可観測性のセットアップです。 可観測性についてさらに詳しく学ぶ

エージェントをテストする

必要な環境変数を設定し、認証モードを選択して、エージェントをローカルで起動します。 エージェントを発行して Teams や Outlook などのアプリで使用する場合を除き、Microsoft 365 テナントを必要とせずに、Agents Playground ですべてをエンドツーエンドでテストできます。

テスト手順の概要

  • API キーとモデル設定を ファイルに追加し、サンプルが LLM と通信できるようにしてください。
  • 認証モードを選択します。 ローカル開発では、サンプルは Agent Blueprint から作成された値を使用したエージェント型認証をサポートします。
  • エージェントをローカルで起動し、Agents Playground などのツールに公開します。
  • Agents Playground を使用して、テナントの設定や何かを展開することなく、メッセージ、ツール、通知をテストできます。
  • 実際の動作の準備ができたら、Microsoft 365 テナントを発行し、Teams、Outlook、またはその他のMicrosoft 365サーフェス内でエージェントをテストします。

テストの詳細情報

エージェントを公開する

エージェントが Teams チャット、Outlook メッセージ、Word @mentions などの実際のMicrosoft 365エクスペリエンスの準備ができたら、Microsoft 365 テナントに発行します。 Agent 365のCLIコマンドはパッケージングを担当します。マニフェストを更新し、すべてをバンドルし、エージェントをMicrosoft管理センターにアップロードします。

公開中に、アップロードを完了する前に、エージェントの名前、説明、アイコン、バージョンを確認してカスタマイズします。 公開されると、エージェントはテナント内で検出可能となり、インストール可能になります。

Important

エージェントを公開した後は、インスタンスを作成する前にDeveloper Portalでエージェントのブループリントを設定しなければなりません。 Developer Portalでエージェントブループリントの設定方法を学びましょう

公開されたエージェントは、次のページで確認できます:

完全なワークフローと詳細な手順について