Partager via


Invite de confirmation pour les plug-ins d’API pour Microsoft 365 Copilot

Importante

Les plug-ins d’API sont actuellement uniquement pris en charge en tant qu’actions au sein d’agents déclaratifs. Ils ne sont pas activés dans Microsoft 365 Copilot. Consultez Ajouter un plug-in pour obtenir un exemple d’ajout d’un plug-in d’API à un agent déclaratif.

Par défaut, Microsoft 365 Copilot demande à l’utilisateur de confirmer l’envoi de données à un plug-in avant de les envoyer afin d’éviter des conséquences inattendues dans des systèmes externes. L’utilisateur peut voir les données à envoyer et a le choix d’autoriser ou de refuser. Pour certaines opérations d’API, les utilisateurs ont la possibilité de toujours autoriser l’envoi de données, ce qui empêche les invites de confirmation ultérieures pour cette opération particulière.

Normalement, Microsoft 365 Copilot affiche à l’utilisateur l’option toujours autoriser pour les opérations HTTP GET, et n’affiche pas l’option post, PATCH, PUT et DELETE. Les développeurs de plug-ins d’API peuvent modifier ce comportement pour des opérations individuelles dans leur API. Les développeurs peuvent également personnaliser le texte que Copilot affiche à l’utilisateur dans le cadre de l’invite de confirmation.

Remplacement du comportement d’invite

Les développeurs peuvent contrôler si Microsoft 365 Copilot affiche l’option toujours autoriser pour une opération spécifique en ajoutant la x-openai-isConsequential propriété dans le document OpenAPI pour leur API. La définition de cette propriété sur true désactive l’option always allow et sa définition sur false l’active. En règle générale, toute action avec des effets secondaires dans le système externe doit être marquée avec true pour s’assurer que l’utilisateur est en contrôle et éviter les conséquences involontaires pour les actions avec des effets secondaires dans le système externe.

Prenons l’exemple d’une API qui crée un rappel : POST /reminders. Comme il s’agit d’une opération POST, Microsoft 365 Copilot demande à l’utilisateur de confirmer chaque fois que cette API est utilisée et ne lui donne pas la possibilité de toujours autoriser cette opération.

Boîte de dialogue de confirmation Copilot pour une opération POST.

Pour activer l’option always allow, ajoutez la x-openai-isConsequential propriété définie sur false, comme indiqué dans l’exemple suivant.

post:
  x-openai-isConsequential: false
  summary: Create a new reminder
  description: Create a new budget with a specified name and due date
  operationId: CreateReminder
  requestBody:
    content:
      application/json:
        schema:
          $ref: '#/components/schemas/Reminder'
    required: true

Imaginez maintenant une API associée qui récupère les rappels existants : GET /reminders. Étant donné qu’il s’agit d’un GET, Microsoft 365 Copilot montre à l’utilisateur l’option toujours autoriser.

Boîte de dialogue de confirmation Copilot pour une opération GET.

Ce comportement peut être modifié en ajoutant x-openai-isConsequential défini sur true.

get:
  x-openai-isConsequential: true
  summary: Get existing reminders
  description: Gets a list of existing reminders
  operationId: GetReminders

Personnalisation du texte de confirmation

Les développeurs peuvent spécifier le texte de confirmation en définissant la body propriété dans l’objet Confirmation dans l’objet Function capabilities de la fonction dans le manifeste du plug-in. La valeur de body doit indiquer ce que fait la fonction. Si cette propriété n’est pas présente dans le manifeste, la description propriété dans l’objet Function est utilisée à la place.

{
  "name": "GetBudgets",
  "description": "Returns details including name and available funds of budgets, optionally filtered by budget name",
  "capabilities": {
    "confirmation": {
      "type": "AdaptiveCard",
      "title": "Search budgets",
      "body": "Do you want to allow searching for budgets?"
    }
  }
}