Schéma d’agent déclaratif 1.0 pour Microsoft 365 Copilot

Cet article décrit le schéma 1.0 utilisé par le manifeste de l’agent déclaratif. Le manifeste est un document lisible par ordinateur qui fournit un modèle LLM (Large Language Model) avec les instructions, les connaissances et les actions nécessaires pour se spécialiser dans la résolution d’un ensemble sélectionné de problèmes utilisateur. Le manifeste d’application Microsoft 365 fait référence à des manifestes d’agent déclaratif à l’intérieur d’un package d’application. Pour plus d’informations, consultez la référence du manifeste de l’application Microsoft 365.

Importante

La dernière version du schéma de manifeste de l’agent déclaratif est la version 1.6. Nous recommandons aux nouveaux agents d’utiliser la dernière version de schéma.

Les agents déclaratifs sont utiles pour comprendre et générer du texte de type humain, ce qui les rend polyvalents pour des tâches telles que l’écriture et la réponse à des questions. Cette spécification se concentre sur le manifeste d’agent déclaratif qui agit comme un framework structuré pour se spécialiser et améliorer les fonctionnalités dont un utilisateur spécifique a besoin.

Schéma JSON

Vous trouverez le schéma décrit dans ce document au format de schéma JSONici.

Conventions

Références relatives dans les URL

Sauf indication contraire, toutes les propriétés qui sont des URL peuvent être des références relatives. Les références relatives dans le document manifeste sont relatives à l’emplacement du document manifeste.

Longueur de chaîne

Sauf indication contraire, limitez toutes les propriétés de chaîne à 4 000 caractères. Cette longueur de chaîne ne définit pas une taille acceptable pour toutes les propriétés de chaîne dans le document. Les implémentations peuvent définir leurs propres limites pratiques sur la longueur du manifeste.

Propriétés non reconnues

Les objets JSON définis dans ce document prennent uniquement en charge les propriétés décrites. Les propriétés non reconnues ou superflues dans un objet JSON rendent le document entier non valide.

Localisation de chaîne

Les chaînes localisables peuvent utiliser une clé de localisation au lieu d’une valeur littérale. La syntaxe est [[key_name]], où key_name est le nom de clé dans la localizationKeys propriété dans vos fichiers de localisation. Pour plus d’informations sur la localisation, consultez Localiser votre agent.

Objet manifeste de l’agent déclaratif

La racine du document manifeste est un objet JSON qui couvre les champs, les fonctionnalités, les démarrages de conversation et les actions requis.

L’objet manifeste de l’agent déclaratif contient les propriétés suivantes.

Propriété Type Description
version String Obligatoire. Version du schéma. Défini sur v1.0.
id String Facultatif.
name String Obligatoire. Localisables. Nom de l’agent déclaratif. Il doit contenir au moins un caractère nonwhitespace et comporter au maximum 100 caractères.
description String Obligatoire. Localisables. Description de l’agent déclaratif. Il doit contenir au moins un caractère nonwhitespace et comporter au maximum 1 000 caractères.
instructions String Obligatoire. Instructions détaillées ou instructions sur le comportement de l’agent déclaratif, ses fonctions et tous les comportements à éviter. Il doit contenir au moins un caractère nonwhitespace et contenir au maximum 8 000 caractères.
capabilities Tableau de l’objet Capabilities Facultatif. Contient un tableau d’objets qui définissent les fonctionnalités de l’agent déclaratif. Le tableau ne peut pas contenir plusieurs de chaque type dérivé d’objet Capabilities.
conversation_starters Tableau de l’objet de démarrage de conversation Facultatif. Title et Text sont localisables. Liste d’exemples de questions auxquelles l’agent déclaratif peut répondre. Le tableau ne peut pas contenir plus de 12 objets.
actions Tableau de l’objet Action Facultatif. Liste d’objets qui identifient les plug-ins qui fournissent des actions accessibles à l’agent déclaratif.

Exemple d’objet manifeste de l’agent déclaratif

Le code suivant montre un exemple des champs obligatoires dans un manifeste d’agent déclaratif.

{
  "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"
}

Objet Capabilities

L’objet capabilities est le type de base des objets dans la capabilities propriété de l’objet manifeste de l’agent déclaratif. Les types d’objets possibles sont les suivants :

Remarque

Les utilisateurs peuvent accéder aux agents déclaratifs avec des fonctionnalités autres que la recherche web uniquement si leurs locataires autorisent l’utilisation limitée ou s’ils disposent d’une licence Microsoft 365 Copilot.

Exemple d’objet Capabilities

{
  "capabilities": [
    {
      "name": "WebSearch"
    },
    {
      "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"
        }
      ]
    }
  ]
}

Objet de recherche web

Indique que l’agent déclaratif peut rechercher des informations de base sur le web.

L’objet de recherche web contient la propriété suivante.

Propriété Type Description
name String Obligatoire. Doit être défini sur WebSearch.

Remarque

Pour plus d’informations sur les données, la confidentialité et la sécurité pour la recherche web dans Microsoft 365 Copilot Chat et Microsoft 365 Copilot, consultez Données, confidentialité et sécurité pour la recherche web.

OneDrive et objet SharePoint

Indique que l’agent déclaratif peut rechercher des informations de base dans SharePoint et OneDrive d’un utilisateur.

L’objet OneDrive et SharePoint contient les propriétés suivantes.

Propriété Type Description
name String Obligatoire. Doit être défini sur OneDriveAndSharePoint.
items_by_sharepoint_ids Tableau de l’objet Items by SharePoint IDs Facultatif. Tableau d’objets qui identifient les sources SharePoint ou OneDrive à l’aide d’ID. Si vous omettez les items_by_sharepoint_ids propriétés et items_by_url , l’agent déclaratif peut accéder à toutes les sources OneDrive et SharePoint dans le organization.
items_by_url Tableau d’éléments par objet URL Facultatif. Tableau d’objets qui identifient les sources SharePoint ou OneDrive par URL. Si vous omettez les items_by_sharepoint_ids propriétés et items_by_url , l’agent déclaratif peut accéder à toutes les sources OneDrive et SharePoint dans le organization.

Pour plus d’informations sur l’optimisation du contenu SharePoint pour Copilot, voir Optimiser la récupération de contenu SharePoint.

Items by SharePoint IDs object

L’objet items by SharePoint IDs contient les propriétés suivantes.

Propriété Type Description
site_id String Facultatif. Identificateur GUID unique pour un site SharePoint ou OneDrive.
web_id String Facultatif. Identificateur GUID unique pour un site web spécifique au sein d’un site SharePoint ou OneDrive.
list_id String Facultatif. Identificateur GUID unique pour une bibliothèque de documents au sein d’un site SharePoint.
unique_id String Facultatif. Identificateur GUID unique utilisé pour définir l’étendue d’un dossier ou d’un fichier dans la bibliothèque de documents spécifiée par la list_id propriété .

Conseil

Pour plus d’informations sur la façon d’obtenir les identificateurs uniques d’une ressource SharePoint ou OneDrive, voir Récupération des ID de fonctionnalités pour le manifeste de l’agent déclaratif.

Items by URL object

L’objet items by URL contient la propriété suivante.

Propriété Type Description
url String Facultatif. URL absolue d’une ressource SharePoint ou OneDrive.

Objet connecteurs Copilot

Indique que l’agent déclaratif peut rechercher des informations de mise à la terre dans les connecteurs Copilot sélectionnés.

L’objet de connecteurs Copilot contient les propriétés suivantes.

Propriété Type Description
name String Obligatoire. Doit être défini sur GraphConnectors.
connections Tableau de l’objet Connection Facultatif. Tableau d’objets qui identifient les connecteurs Copilot disponibles pour l’agent déclaratif. Si vous omettez cette propriété, l’agent déclaratif peut accéder à tous les connecteurs Copilot dans le organization.
Connection, objet

Identifie un connecteur Copilot.

L’objet connection contient la propriété suivante.

Propriété Type Description
connection_id String Obligatoire. Identificateur unique du connecteur Copilot.

Conseil

Pour obtenir des instructions sur l’obtention de l’identificateur unique d’un connecteur Copilot, consultez Récupération des ID de fonctionnalités pour le manifeste de l’agent déclaratif.

Objet De démarrage de conversation

L’objet conversation starters est facultatif dans le manifeste. Il contient des indicateurs que l’agent affiche à l’utilisateur pour montrer comment il peut commencer à utiliser l’agent déclaratif.

L’objet de démarrage de conversation contient les propriétés suivantes :

Propriété Type Description
text String Obligatoire. Localisables. Suggestion que l’utilisateur peut utiliser pour obtenir le résultat souhaité à partir de l’agent déclaratif. Il doit contenir au moins un caractère nonwhitespace.
title String Facultatif. Localisables. Titre unique pour le démarrage de conversation. Il doit contenir au moins un caractère nonwhitespace.

Exemple d’objet Conversation Starters

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

Objet Actions

Les actions sont un objet JSON facultatif dans le manifeste. Ils agissent comme des entrées de développeur et peuvent être considérés comme des plug-ins.

L’objet action contient les propriétés suivantes.

Propriété Type Description
id String Obligatoire. Identificateur unique de l’action. Il peut s’agir d’un GUID.
file String Obligatoire. Chemin d’accès au manifeste du plug-in d’API pour cette action.

Exemple d’objet Actions

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

Exemple de manifeste d’agent déclaratif

L’exemple suivant montre un fichier manifeste d’agent déclaratif qui utilise la plupart des propriétés de manifeste décrites dans cet article.

{
  "$schema": "https://developer.microsoft.com/json-schemas/copilot/declarative-agent/v1.0/schema.json",
  "version": "v1.0",
  "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"
    },
    {
      "name": "OneDriveAndSharePoint",
      "items_by_url": [
        {
          "url": "https://contoso.sharepoint.com/sites/ProductSupport"
        }
      ]
    },
    {
      "name": "GraphConnectors",
      "connections": [
        {
          "connection_id": "foodStore"
        }
      ]
    }
  ]
}