Freigeben über


Schema des deklarativen Agents 1.2 für Microsoft 365 Copilot

In diesem Artikel wird das 1.2-Schema beschrieben, das vom Manifest des deklarativen Agents verwendet wird. Das Manifest ist ein maschinenlesbares Dokument, das ein LLM (Large Language Model) mit den erforderlichen Anweisungen, Kenntnissen und Aktionen bereitstellt, um sich auf die Behandlung einer ausgewählten Gruppe von Benutzerproblemen zu spezialisieren. Das Microsoft 365-App-Manifest verweist auf deklarative Agent-Manifeste innerhalb eines App-Pakets. Weitere Informationen finden Sie in der Referenz zum Microsoft 365-App-Manifest.

Wichtig

Die neueste Version des Manifestschemas des deklarativen Agents ist Version 1.6. Es wird empfohlen, dass neue Agents die neueste Schemaversion verwenden.

Deklarative Agenten sind wertvoll beim Verstehen und Generieren von menschenähnlichem Text, sodass sie für Aufgaben wie das Schreiben und Beantworten von Fragen vielseitig sind. Diese Spezifikation konzentriert sich auf das deklarative Agent-Manifest, das als strukturiertes Framework fungiert, um die Funktionen eines bestimmten Benutzers zu spezialisieren und zu verbessern.

Änderungen gegenüber der vorherigen Version

Mit dieser Schemaversion werden die folgenden Änderungen gegenüber Version 1.0 eingeführt.

  • Die sites -Eigenschaft wird dem Websuchobjekt hinzugefügt. Mit dieser Eigenschaft kann die Websuchfunktion auf zulässige Websites beschränkt werden.
  • Die Grafikfunktion wurde hinzugefügt. Diese Funktion ermöglicht es dem deklarativen Agent, Bilder und Grafiken basierend auf Benutzereingaben zu generieren.
  • Die Funktion "Codeinterpreter " wurde hinzugefügt. Diese Funktion ermöglicht es dem deklarativen Agent, Python-Code zu generieren und auszuführen.

JSON-Schema

Das in diesem Dokument im JSON-Schemaformat beschriebene Schema finden Sie hier.

Konventionen

Relative Verweise in URLs

Sofern nicht anders angegeben, können alle Eigenschaften, die URLs sind, relative Verweise sein. Relative Verweise im Manifestdokument sind relativ zum Speicherort des Manifestdokuments.

Zeichenfolgenlänge

Sofern nicht anders angegeben, beschränken Sie alle Zeichenfolgeneigenschaften auf 4.000 Zeichen. Diese Zeichenfolgenlänge legt keine akzeptable Größe für alle Zeichenfolgeneigenschaften im Dokument fest. Implementierungen können ihre eigenen praktischen Grenzwerte für die Manifestlänge festlegen.

Nicht erkannte Eigenschaften

Json-Objekte, die in diesem Dokument definiert sind, unterstützen nur die beschriebenen Eigenschaften. Unbekannte oder überflüssige Eigenschaften in einem JSON-Objekt machen das gesamte Dokument ungültig.

Lokalisierung von Zeichenfolgen

Lokalisierbare Zeichenfolgen können einen Lokalisierungsschlüssel anstelle eines Literalwerts verwenden. Die Syntax ist [[key_name]], wobei key_name der Schlüsselname in der localizationKeys -Eigenschaft in Ihren Lokalisierungsdateien ist. Ausführliche Informationen zur Lokalisierung finden Sie unter Lokalisieren Ihres Agents.

Manifestobjekt des deklarativen Agents

Der Stamm des Manifestdokuments ist ein JSON-Objekt, das erforderliche Felder, Funktionen, Konversationsstarter und Aktionen abdeckt.

Das Manifestobjekt des deklarativen Agents enthält die folgenden Eigenschaften.

Eigenschaft Typ Beschreibung
version Zeichenfolge Erforderlich. Die Schemaversion. Auf v1.2 festlegen.
id Zeichenfolge Optional.
name Zeichenfolge Erforderlich. Lokalisierbar. Der Name des deklarativen Agents. Sie muss mindestens ein Zeichen ohne Leerzeichen enthalten und maximal 100 Zeichen umfassen.
description Zeichenfolge Erforderlich. Lokalisierbar. Die Beschreibung des deklarativen Agents. Sie muss mindestens ein Zeichen ohne Leerzeichen enthalten und maximal 1.000 Zeichen umfassen.
instructions Zeichenfolge Erforderlich. Die detaillierten Anweisungen oder Richtlinien zum Verhalten des deklarativen Agents, seiner Funktionen und zu vermeidenden Verhaltensweisen. Sie muss mindestens ein Zeichen ohne Leerzeichen enthalten und maximal 8.000 Zeichen umfassen.
capabilities Array von Capabilities-Objekt Optional. Enthält ein Array von -Objekten, die Funktionen des deklarativen Agents definieren. Das Array darf nicht mehr als einen der einzelnen abgeleiteten Typen von Capabilities-Objekten enthalten.
conversation_starters Array des Conversation-Starterobjekts Optional. Titel und Text können lokalisiert werden. Eine Liste mit Beispielen für Fragen, die der deklarative Agent beantworten kann. Das Array darf nicht mehr als 12 Objekte enthalten.
actions Array des Action-Objekts Optional. Eine Liste von Objekten, die API-Plug-Ins identifizieren, die Aktionen bereitstellen, auf die der deklarative Agent zugreifen kann.

Beispiel für ein Manifestobjekt des deklarativen Agents

Der folgende Code zeigt ein Beispiel für die erforderlichen Felder in einem deklarativen Agentmanifest.

{
  "name" : "Repairs agent",
  "description": "This declarative agent is meant to help track any tickets and repairs",
  "instructions": "This declarative agent needs to look at my Service Now and Jira tickets/instances to help me keep track of open items"
}

Capabilities-Objekt

Das Capabilities-Objekt ist der Basistyp für Objekte in der capabilities -Eigenschaft des Manifestobjekts des deklarativen Agents. Mögliche Objekttypen sind:

Hinweis

Benutzer können nur dann auf deklarative Agents mit anderen Funktionen als der Websuche zugreifen, wenn ihre Mandanten eine getaktete Nutzung zulassen oder über eine Microsoft 365 Copilot-Lizenz verfügen.

Beispiel für ein Capabilities-Objekt

{
  "capabilities": [
    {
      "name": "WebSearch",
      "sites": [
        {
          "url": "https://contoso.com"
        }
      ]
    },
    {
      "name": "OneDriveAndSharePoint",
      "items_by_sharepoint_ids": [
        {
          "site_id": "bc54a8cc-8c2e-4e62-99cf-660b3594bbfd",
          "web_id": "a5377427-f041-49b5-a2e9-0d58f4343939",
          "list_id": "78A4158C-D2E0-4708-A07D-EE751111E462",
          "unique_id": "304fcfdf-8842-434d-a56f-44a1e54fbed2"
        }
      ],
      "items_by_url": [
        {
          "url": "https://contoso.sharepoint.com/teams/admins/Documents/Folders1"
        }
      ]
    },
    {
      "name": "GraphConnectors",
      "connections": [
        {
          "connection_id": "jiraTickets"
        }
      ]
    },
    {
      "name": "GraphicArt"
    },
    {
      "name": "CodeInterpreter"
    }
  ]
}

Websuchobjekt

Gibt an, dass der deklarative Agent das Web nach Erdungsinformationen durchsuchen kann.

Das Websuchobjekt enthält die folgenden Eigenschaften.

Eigenschaft Typ Beschreibung
name Zeichenfolge Erforderlich. Muss auf WebSearch festgelegt werden.
sites Array des Site-Objekts Optional. Ein Array von -Objekten, die Websites identifizieren, die der Agent durchsuchen darf. Wenn Sie diese Eigenschaft weglassen, kann der Agent alle Websites durchsuchen. Das Array darf nicht mehr als vier Elemente enthalten.

Hinweis

Ausführliche Informationen zu Daten, Datenschutz und Sicherheit für die Websuche in Microsoft 365 Copilot Chat und Microsoft 365 Copilot finden Sie unter Daten, Datenschutz und Sicherheit für die Websuche.

Websiteobjekt

Gibt eine Website an, die ein deklarativer Agent nach Inhalten suchen kann.

Das Websiteobjekt enthält die folgende Eigenschaft.

Eigenschaft Typ Beschreibung
url Zeichenfolge Erforderlich. Eine absolute URL zu einer Website, die nach Inhalten gesucht werden soll. Die URL darf nicht mehr als zwei Pfadsegmente enthalten (z. B https://contoso.com/projects/mark-8 . ist gültig, aber https://contoso.com/projects/mark-8/beta-program ungültig). Suchergebnisse enthalten Daten aus zusätzlichen Pfadsegmenten; Das Eingrenzen der Suche auf mehr als zwei Pfadsegmente wird jedoch nicht unterstützt. Die URL darf keine Abfrageparameter enthalten.

OneDrive- und SharePoint-Objekt

Gibt an, dass der deklarative Agent sharePoint und OneDrive eines Benutzers nach Erdungsinformationen durchsuchen kann.

Das OneDrive- und SharePoint-Objekt enthält die folgenden Eigenschaften.

Eigenschaft Typ Beschreibung
name Zeichenfolge Erforderlich. Muss auf OneDriveAndSharePoint festgelegt werden.
items_by_sharepoint_ids Array von Elementen nach SharePoint-IDs-Objekt Optional. Ein Array von -Objekten, die SharePoint- oder OneDrive-Quellen mithilfe von IDs identifizieren. Wenn Sie sowohl die items_by_sharepoint_ids -Eigenschaft als auch die items_by_url -Eigenschaft weglassen, kann der deklarative Agent auf alle OneDrive- und SharePoint-Quellen im organization zugreifen.
items_by_url Array von Elementen nach URL-Objekt Optional. Ein Array von Objekten, die SharePoint- oder OneDrive-Quellen anhand der URL identifizieren. Wenn Sie sowohl die items_by_sharepoint_ids -Eigenschaft als auch die items_by_url -Eigenschaft weglassen, kann der deklarative Agent auf alle OneDrive- und SharePoint-Quellen im organization zugreifen.

Informationen zum Optimieren von SharePoint-Inhalten für Copilot finden Sie unter Optimieren des Abrufs von SharePoint-Inhalten.

Elemente nach SharePoint-IDs-Objekt

Das Element nach SharePoint-IDs-Objekt enthält die folgenden Eigenschaften.

Eigenschaft Typ Beschreibung
site_id Zeichenfolge Optional. Ein eindeutiger GUID-Bezeichner für eine SharePoint- oder OneDrive-Website.
web_id Zeichenfolge Optional. Ein eindeutiger GUID-Bezeichner für ein bestimmtes Web innerhalb einer SharePoint- oder OneDrive-Website.
list_id Zeichenfolge Optional. Ein eindeutiger GUID-Bezeichner für eine Dokumentbibliothek innerhalb einer SharePoint-Website.
unique_id Zeichenfolge Optional. Ein eindeutiger GUID-Bezeichner, der für den Bereich eines Ordners oder einer Datei in der dokumentbibliothek verwendet wird, die von der list_id -Eigenschaft angegeben wird.

Tipp

Informationen zum Abrufen der eindeutigen Bezeichner für eine SharePoint- oder OneDrive-Ressource finden Sie unter Abrufen von Funktions-IDs für das manifest des deklarativen Agents.

Elemente nach URL-Objekt

Das Element nach URL-Objekt enthält die folgende Eigenschaft.

Eigenschaft Typ Beschreibung
url Zeichenfolge Optional. Eine absolute URL zu einer SharePoint- oder OneDrive-Ressource.

Copilot-Connectors-Objekt

Gibt an, dass der deklarative Agent ausgewählte Copilot-Connectors nach Erdungsinformationen durchsuchen kann.

Das Copilot Connectors-Objekt enthält die folgenden Eigenschaften.

Eigenschaft Typ Beschreibung
name Zeichenfolge Erforderlich. Muss auf GraphConnectors festgelegt werden.
connections Array des Connection-Objekts Optional. Ein Array von -Objekten, die die Copilot-Connectors identifizieren, die für den deklarativen Agent verfügbar sind. Wenn Sie diese Eigenschaft weglassen, kann der deklarative Agent auf alle Copilot-Connectors im organization zugreifen.
Connection-Objekt

Identifiziert einen Copilot-Connector.

Das Verbindungsobjekt enthält die folgende Eigenschaft.

Eigenschaft Typ Beschreibung
connection_id Zeichenfolge Erforderlich. Der eindeutige Bezeichner des Copilot-Connectors.

Tipp

Anweisungen zum Abrufen des eindeutigen Bezeichners für einen Copilot-Connector finden Sie unter Abrufen von Funktions-IDs für das manifest des deklarativen Agents.

Grafikobjekt

Gibt an, dass der deklarative Agent Bilder und Grafiken basierend auf der Texteingabe des Benutzers erstellen kann. Weitere Informationen finden Sie unter Imagegenerator.

Das Grafikobjekt enthält die folgende Eigenschaft.

Eigenschaft Typ Beschreibung
name Zeichenfolge Erforderlich. Auf GraphicArt festlegen.

Codeinterpreterobjekt

Gibt an, dass der deklarative Agent Python-Code generieren und ausführen kann, um komplexe mathematische Probleme zu lösen, Daten zu analysieren, Visualisierungen zu generieren und vieles mehr. Weitere Informationen finden Sie unter Codeinterpreter.

Das Codeinterpreterobjekt enthält die folgende Eigenschaft.

Eigenschaft Typ Beschreibung
name Zeichenfolge Erforderlich. Auf CodeInterpreter festlegen.

Unterhaltungsstarter-Objekt

Das Unterhaltungsstarter-Objekt ist im Manifest optional. Sie enthält Hinweise, die der Agent dem Benutzer anzeigt, um zu zeigen, wie er mit dem deklarativen Agent beginnen kann.

Das Conversation Starter-Objekt enthält die folgenden Eigenschaften:

Eigenschaft Typ Beschreibung
text Zeichenfolge Erforderlich. Lokalisierbar. Ein Vorschlag, den der Benutzer verwenden kann, um das gewünschte Ergebnis vom deklarativen Agent zu erhalten. Sie muss mindestens ein Zeichen ohne Leerzeichen enthalten.
title Zeichenfolge Optional. Lokalisierbar. Ein eindeutiger Titel für den Unterhaltungsstart. Sie muss mindestens ein Zeichen ohne Leerzeichen enthalten.

Conversation Starters-Objekt (Beispiel)

{
  "conversation_starters": [
    {
      "title": "My Open Repairs",
      "text": "What open repairs are assigned to me?"
    }
  ]
}

Actions-Objekt

Aktionen sind ein optionales JSON-Objekt im Manifest. Sie dienen als Entwicklereingabe und können als Plug-Ins betrachtet werden.

Das Aktionsobjekt enthält die folgenden Eigenschaften.

Eigenschaft Typ Beschreibung
id Zeichenfolge Erforderlich. Ein eindeutiger Bezeichner für die Aktion. Dies kann eine GUID sein.
file Zeichenfolge Erforderlich. Ein Pfad zum API-Plug-In-Manifest für diese Aktion.

Actions-Objektbeispiel

{
  "actions": [
    {
      "id": "repairsPlugin",
      "file": "plugin.json"
    }
  ]
}

Beispiel für das Manifest des deklarativen Agents

Das folgende Beispiel zeigt eine Manifestdatei des deklarativen Agents, die die meisten der in diesem Artikel beschriebenen Manifesteigenschaften verwendet.

{
  "$schema": "https://developer.microsoft.com/json-schemas/copilot/declarative-agent/v1.2/schema.json",
  "version": "v1.2",
  "name": "Microsoft 365 Agents Toolkit declarative copilot",
  "description": "Declarative copilot created with Agents Toolkit",
  "instructions": "You are a repairs expert copilot. With the response from the listRepairs function, you **must** create a poem out of the repairs listed and always include their title and the assigned person. The poem **must** not use the quote markdown and use regular text. If the user is asking to create a new repair, use the createRepair function and do not add poems.",
  "conversation_starters": [
    {
      "title": "Getting Started",
      "text": "How can I get started with Agents Toolkit?"
    },
    {
      "title": "Getting Help",
      "text": "How can I get help with Agents Toolkit?"
    }
  ],
  "actions": [
    {
      "id": "repairsPlugin",
      "file": "repairs-hub-api-plugin.json"
    }
  ],
  "capabilities": [
    {
      "name": "WebSearch",
      "sites": [
        {
          "url": "https://contoso.com/projects/mark-8"
        }
      ]
    },
    {
      "name": "OneDriveAndSharePoint",
      "items_by_url": [
        {
          "url": "https://contoso.sharepoint.com/sites/ProductSupport"
        }
      ]
    },
    {
      "name": "GraphConnectors",
      "connections": [
        {
          "connection_id": "foodStore"
        }
      ]
    },
    {
      "name": "GraphicArt"
    },
    {
      "name": "CodeInterpreter"
    }
  ]
}