Freigeben über


Funktionen des deklarativen Agents in TypeSpec für Microsoft 365 Copilot

TypeSpec für Microsoft 365 Copilot bietet integrierte Funktionen, die deklarative Agents den Zugriff auf Microsoft 365-Dienste und externe Ressourcen ermöglichen. Zu den verfügbaren Funktionen gehören CodeInterpreter, CopilotConnectors, Dataverse, Email, GraphicArt, Meetings, OneDriveAndSharePoint, Personen, ScenarioModels, TeamsMessages und WebSearch. Jede Funktion kann mit bestimmten Parametern konfiguriert werden, um den Bereich zu steuern.

Funktion Beschreibung
CodeInterpreter Generieren und Ausführen von Python-Code, um mathematische Probleme zu lösen, Daten zu analysieren und Visualisierungen zu erstellen.
CopilotConnectors Suchen Sie ausgewählte Microsoft 365 Copilot Connectors nach Erdungsinformationen.
Datenumkehr Suchen Sie in Microsoft Dataverse-Umgebungen und -Tabellen nach Informationen.
E-Mail Durchsuchen von E-Mail-Nachrichten in barrierefreien Postfächern.
GraphicArt Erstellen Sie Bilder und Grafiken basierend auf Texteingaben.
Besprechungen Durchsuchen von Besprechungsinhalten.
OneDriveAndSharePoint Durchsuchen sie SharePoint-Websites und OneDrive nach Erdungsinformationen.
Personen Suchen Sie nach Informationen zu Personen im organization.
ScenarioModels Verwenden Sie aufgabenspezifische Modelle für spezielle Szenarien.
TeamsMessages Durchsuchen sie Teams-Kanäle, Besprechungen und Chats.
WebSearch Suchen Sie im Web nach Erdungsinformationen.

AgentCapabilities.CodeInterpreter

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.

op codeInterpreter is AgentCapabilities.CodeInterpreter;

Beispiel

op codeInterpreter is AgentCapabilities.CodeInterpreter;

AgentCapabilities.CopilotConnectors

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

op copilotConnectors is AgentCapabilities.CopilotConnectors;

Parameter

Name Typ Beschreibung
Connections Array der Verbindung Optional. Ein Array von -Objekten, die die Copilot-Connectors identifizieren, die für den deklarativen Agent verfügbar sind. Wenn diese Eigenschaft nicht angegeben wird, sind alle Copilot-Connectors im organization für den deklarativen Agent verfügbar.

Modelle

Verbindung

Identifiziert einen Copilot-Connector.

Eigenschaften
Name Typ Beschreibung
connectionId string Erforderlich. Der eindeutige Bezeichner des Copilot-Connectors.
additionalSearchTerms string Optional. Eine Keyword Query Language (KQL)-Abfrage zum Filtern von Elementen basierend auf Feldern im Schema der Verbindung.
itemsByContainerName Array von ContainerNameItem Optional. Filtert die für den Agent verfügbaren Elemente nach Containernamen (die containerName semantische Bezeichnung für Elemente).
itemsByContainerUrl Array von ContainerUrlItem Optional. Filtert die für den Agent verfügbaren Elemente nach Container-URL (die containerUrl semantische Bezeichnung für Elemente).
itemsByExternalId Array von ExternalIdItem Optional. Gibt bestimmte Elemente anhand der ID im Copilot-Connector an, die für den Agent verfügbar sind.
itemsByExternalUrl Array von ExternalUrlItem Optional. Gibt Elemente nach externer URL im Copilot-Connector an, die für den Agent verfügbar sind.
itemsByPath Array von PathItem Optional. Filtert die für den Agent verfügbaren Elemente nach Elementpfaden (die itemPath semantische Bezeichnung für Elemente).

ContainerNameItem

Identifiziert einen Container anhand seines Namens.

Eigenschaften
Name Typ Beschreibung
containerName string Erforderlich. Der Name des Containers (containerName semantischer Bezeichnungswert) des externen Elements.

ContainerUrlItem

Identifiziert einen Container anhand seiner URL.

Eigenschaften
Name Typ Beschreibung
containerUrl string Erforderlich. Die URL des Containers (containerUrl Semantikbezeichnungswert) des externen Elements.

ExternalIdItem

Identifiziert ein externes Element anhand seiner ID.

Eigenschaften
Name Typ Beschreibung
externalId string Erforderlich. Der eindeutige Bezeichner des externen Elements.

ExternalUrlItem

Identifiziert ein externes Element anhand seiner URL.

Eigenschaften
Name Typ Beschreibung
url string Erforderlich. Die URL des externen Elements.

PathItem

Identifiziert ein externes Element anhand seines Pfads.

Eigenschaften
Name Typ Beschreibung
path string Erforderlich. Der Pfad (itemPath Semantikbezeichnungswert) des externen Elements.

Beispiel

// Basic Copilot connectors with no restrictions
op copilotConnectors is AgentCapabilities.CopilotConnectors;

// Specific connectors
op copilotConnectors is AgentCapabilities.CopilotConnectors<Connections = [
  {
    connectionId: "ticketsconnector123";
  },
  {
    connectionId: "wikiconnector123";
  }
]>;

// Specific connector with KQL filtering
op copilotConnectors is AgentCapabilities.CopilotConnectors<Connections = [
  {
    connectionId: "ticketsconnector123";
    additionalSearchTerms: "CreatedDate>=2024-01-01 AND Priority:High";
  }
]>;

// Multiple connectors with different filtering approaches
op copilotConnectors is AgentCapabilities.CopilotConnectors<Connections = [
  {
    connectionId: "ticketsconnector456";
    itemsByPath: [
      { path: "/projects/customer-portal" },
      { path: "/projects/mobile-app" }
    ];
    itemsByContainerName: [
      { containerName: "Engineering Projects" },
      { containerName: "Product Backlog" }
    ];
  },
  {
    connectionId: "wikiconnector789";
    additionalSearchTerms: "space:ENGINEERING AND lastModified>now()-30d";
    itemsByContainerUrl: [
      { containerUrl: "https://wiki.contoso.com/ENGINEERING" },
      { containerUrl: "https://wiki.contoso.com/PRODUCT" }
    ];
  },
  {
    connectionId: "databaseconnector012";
    itemsByExternalId: [
      { externalId: "customer001" },
      { externalId: "customer002" },
      { externalId: "customer007" }
    ];
  }
]>;

AgentCapabilities.Dataverse

Gibt an, dass der deklarative Agent in Microsoft Dataverse nach Informationen suchen kann.

op dataverse is AgentCapabilities.Dataverse;

Parameter

Name Typ Beschreibung
KnowledgeSources Array von DataverseKnowledgeSource Optional. Ein Array von -Objekten, die die Dataverse-Wissensquellen identifizieren, die dem deklarativen Agent zur Verfügung stehen. Wenn diese Eigenschaft weggelassen wird, sind alle zugänglichen Dataverse-Umgebungen für den deklarativen Agent verfügbar.

Modelle

DataverseKnowledgeSource

Stellt eine Dataverse-Wissensquelle dar.

Eigenschaften
Name Typ Beschreibung
hostName string Erforderlich. Der Hostname der Dataverse-Umgebung.
skill string Optional. Der Skillbezeichner für die Wissensquelle.
tables Array von DataverseTable Optional. Ein Array von Tabellen, auf das der deklarative Agent zugreifen kann. Wenn diese Eigenschaft nicht angegeben wird, stehen dem deklarativen Agent alle Tabellen zur Verfügung, auf die zugegriffen werden kann.

DataverseTable

Stellt eine Dataverse-Tabelle dar.

Eigenschaften
Name Typ Beschreibung
tableName string Erforderlich. Der logische Name der Tabelle.

Beispiel

// Basic Dataverse with no restrictions
op dataverse is AgentCapabilities.Dataverse;

// Dataverse with specific environment
op dataverse is AgentCapabilities.Dataverse<KnowledgeSources = [
  {
    hostName: "contoso.crm.dynamics.com";
  }
]>;

// Dataverse with specific tables
op dataverse is AgentCapabilities.Dataverse<KnowledgeSources = [
  {
    hostName: "contoso.crm.dynamics.com";
    tables: [
      { tableName: "account" },
      { tableName: "contact" },
      { tableName: "opportunity" }
    ];
  }
]>;

// Dataverse with skill and tables
op dataverse is AgentCapabilities.Dataverse<KnowledgeSources = [
  {
    hostName: "contoso.crm.dynamics.com";
    skill: "sales-assistant";
    tables: [
      { tableName: "account" },
      { tableName: "lead" }
    ];
  }
]>;

AgentCapabilities.Email

Gibt an, dass der deklarative Agent E-Mail-Nachrichten in den Postfächern durchsuchen kann, auf die der Benutzer Zugriff hat.

op email is AgentCapabilities.Email;

Parameter

Name Typ Beschreibung
Folders Array von Ordnern Optional. Ein Array von Ordnerobjekten.
SharedMailbox string Optional. Die SMTP-Adresse eines freigegebenen Postfachs.

Modelle

Ordner

Eigenschaften
Name Typ Beschreibung
folderId string Erforderlich. Der bekannte Ordnername oder die Ordner-ID des Ordners, auf den verwiesen werden soll.

Beispiel

// Basic email search with no restrictions
op email is AgentCapabilities.Email;

// Email search with specific well-known folders
op email is AgentCapabilities.Email<
  Folders = [
    { folderId: "Inbox" },
    { folderId: "SentItems" },
    { folderId: "Archive" }
  ]
>;

// Email search with shared mailbox access
op email is AgentCapabilities.Email<
  SharedMailbox = "support@contoso.com"
>;

// Email search with custom folders and shared mailbox
op email is AgentCapabilities.Email<
  Folders = [
    { folderId: "Inbox" }
  ],
  SharedMailbox = "legal@contoso.com"
>;

AgentCapabilities.GraphicArt

Gibt an, dass der deklarative Agent Bilder und Grafiken basierend auf der Texteingabe des Benutzers erstellen kann.

op graphicArt is AgentCapabilities.GraphicArt;

Beispiel

op graphicArt is AgentCapabilities.GraphicArt;

AgentCapabilities.Meetings

Gibt an, dass der deklarative Agent Besprechungsinhalte durchsuchen kann.

op meetings is AgentCapabilities.Meetings;

Beispiel

op meetings is AgentCapabilities.Meetings;

AgentCapabilities.OneDriveAndSharePoint

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

op oneDriveAndSharePoint is AgentCapabilities.OneDriveAndSharePoint;

Parameter

Name Typ Beschreibung
ItemsBySharePointIds Array von SharePointIds Optional. Ein Array von -Objekten, die SharePoint- oder OneDrive-Quellen mithilfe von IDs identifizieren. Wenn sowohl die ItemsBySharePointIds Parameter als auch die ItemsByUrl Parameter nicht angegeben werden, stehen dem deklarativen Agent alle OneDrive- und SharePoint-Quellen im organization zur Verfügung.
ItemsByUrl Array von SharePointUrl Optional. Ein Array von Objekten, die SharePoint- oder OneDrive-Quellen anhand der URL identifizieren. Wenn sowohl die ItemsBySharePointIds Parameter als auch die ItemsByUrl Parameter nicht angegeben werden, stehen dem deklarativen Agent alle OneDrive- und SharePoint-Quellen im organization zur Verfügung.

Modelle

SharePointIds

Enthält einen oder mehrere Objektbezeichner, die eine SharePoint- oder OneDrive-Ressource identifizieren.

Eigenschaften
Name Typ Beschreibung
itemId string Optional. Ein eindeutiger GUID-Bezeichner, der für den Bereich eines Ordners oder einer Datei in der Dokumentbibliothek verwendet wird, die durch die listId-Eigenschaft angegeben wird.
listId string Optional. Ein eindeutiger GUID-Bezeichner für eine Dokumentbibliothek innerhalb einer SharePoint-Website.
siteId string Optional. Ein eindeutiger GUID-Bezeichner für eine SharePoint- oder OneDrive-Website.
webId string Optional. Ein eindeutiger GUID-Bezeichner für ein bestimmtes Web innerhalb einer SharePoint- oder OneDrive-Website.

SharePointUrl

Stellt die URL einer SharePoint- oder OneDrive-Ressource dar.

Eigenschaften
Name Typ Beschreibung
url string Erforderlich. Eine absolute URL zu einer SharePoint- oder OneDrive-Ressource.

Beispiel

// Basic OneDrive and SharePoint with no restrictions
op oneDriveAndSharePoint is AgentCapabilities.OneDriveAndSharePoint;

// URL-based filtering for specific sites
op oneDriveAndSharePoint is AgentCapabilities.OneDriveAndSharePoint<
  ItemsBySharePointIds = [],
  ItemsByUrl = [
    { url: "https://contoso.sharepoint.com/sites/Engineering" },
    { url: "https://contoso.sharepoint.com/sites/ProductManagement" },
    { url: "https://contoso-my.sharepoint.com/personal/john_contoso_com" }
  ]
>;

// ID-based filtering with comprehensive site and document library scoping
op oneDriveAndSharePoint is AgentCapabilities.OneDriveAndSharePoint<
  ItemsBySharePointIds = [
    {
      siteId: "12345678-1234-1234-1234-123456789012";
      searchAssociatedSites: true;
    },
    {
      siteId: "87654321-4321-4321-4321-210987654321";
      webId: "11111111-2222-3333-4444-555555555555";
      listId: "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee";
    },
    {
      siteId: "99999999-8888-7777-6666-555555555555";
      webId: "ffffffff-dddd-cccc-3333-cccccccccccc";
      listId: "ffffffff-eeee-dddd-cccc-bbbbbbbbbbbb";
      itemId: "12121212-3434-5656-7878-909090909090";
    }
  ],
  ItemsByUrl = [
    { url: "https://contoso.sharepoint.com/sites/Engineering" }
  ]
>;

AgentCapabilities.People

Gibt an, dass der deklarative Agent nach Informationen zu Personen im organization suchen kann.

op people is AgentCapabilities.People;

Beispiel

op people is AgentCapabilities.People;

AgentCapabilities.ScenarioModels

Gibt an, dass der deklarative Agent aufgabenspezifische Modelle verwenden kann.

op scenarioModels is AgentCapabilities.ScenarioModels<Models = [
  { id: "model-id" }
]>;

Parameter

Name Typ Beschreibung
Models Array von ScenarioModel Erforderlich. Ein Array von -Objekten, das die aufgabenspezifischen Modelle identifiziert, die für den deklarativen Agent verfügbar sind.

Modelle

ScenarioModel

Identifiziert ein aufgabenspezifisches Modell.

Eigenschaften
Name Typ Beschreibung
id string Erforderlich. Der eindeutige Bezeichner für das Modell.

Beispiel

// Single specialized model for analytics
op scenarioModels is AgentCapabilities.ScenarioModels<Models = [
  { id: "financial-forecasting-model-v3" }
]>;

// Multiple models for different business scenarios
op scenarioModels is AgentCapabilities.ScenarioModels<Models = [
  { id: "sentiment-analysis-model" },
  { id: "document-classification-model" },
  { id: "risk-assessment-model" }
]>;

AgentCapabilities.TeamsMessages

Gibt an, dass der deklarative Agent Teams-Kanäle, Teams, Besprechungen, 1:1-Chats und Gruppenchats durchsuchen kann.

op teamsMessages is AgentCapabilities.TeamsMessages;

Parameter

Name Typ Beschreibung
TeamsMessagesByUrl Array von TeamsMessagesUrl Optional. Ein Array von Objekten, die die URLs der Teams-Kanäle, Besprechungschats, Gruppenchats oder 1:1-Chats identifizieren, die für den deklarativen Agent verfügbar sind. Das Auslassen dieser Eigenschaft ermöglicht eine suche ohne Bereich in allen Kanälen, Besprechungen, 1:1-Chats und Gruppenchats.

Modelle

TeamsMessagesUrl

Identifiziert einen Teams-Kanal, ein Team oder einen Besprechungschat.

Eigenschaften
Name Typ Beschreibung
url string Erforderlich. Eine gut formatierte Teams-URL, die entweder mit einem Teams-Kanal, einem Besprechungschat, einem Gruppenchat oder einem 1:1-Chat verknüpft ist.

Beispiel

// Basic Teams messages with no restrictions
op teamsMessages is AgentCapabilities.TeamsMessages;

// Teams messages limited to specific channels and chats
op teamsMessages is AgentCapabilities.TeamsMessages<TeamsMessagesByUrl = [
  { url: "https://teams.microsoft.com/l/channel/19%3a123abc...%40thread.skype/General?groupId=12345&tenantId=67890" },
  { url: "https://teams.microsoft.com/l/chat/19%3ameeting_abc123...%40thread.v2/0?context=%7b%22Tid%22%3a%22...%22%7d" },
  { url: "https://teams.microsoft.com/l/channel/19%3a456def...%40thread.tacv2/Engineering?groupId=54321&tenantId=09876" }
]>;

// Teams messages for project-specific channels
op teamsMessages is AgentCapabilities.TeamsMessages<TeamsMessagesByUrl = [
  { url: "https://teams.microsoft.com/l/channel/19%3aprojectA...%40thread.tacv2/Development?groupId=11111&tenantId=22222" },
  { url: "https://teams.microsoft.com/l/channel/19%3aprojectA...%40thread.tacv2/Testing?groupId=11111&tenantId=22222" },
  { url: "https://teams.microsoft.com/l/chat/19%3astandup_daily...%40thread.v2/0?context=%7b%22Tid%22%3a%22...%22%7d" }
]>;

AgentCapabilities.WebSearch

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

op webSearch is AgentCapabilities.WebSearch;

Parameter

Name Typ Beschreibung
Sites Array von SiteUrl Optional. Ein Array von -Objekten, die Websites identifizieren, die der Agent durchsuchen darf. Wenn diese Eigenschaft nicht angegeben wird, darf der gesamte Agent alle Websites durchsuchen.

Modelle

SiteUrl

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

Eigenschaften
Name Typ Beschreibung
url string Erforderlich. Eine absolute URL zu einer Website, die nach Inhalten gesucht werden soll.

Beispiel

// Basic web search with no restrictions
op webSearch is AgentCapabilities.WebSearch;

// Web search limited to specific documentation sites
op webSearch is AgentCapabilities.WebSearch<Sites = [
  {
    url: "https://learn.microsoft.com";
  },
  {
    url: "https://docs.microsoft.com";
  },
  {
    url: "https://techcommunity.microsoft.com";
  }
]>;

// Web search for company-specific resources
op webSearch is AgentCapabilities.WebSearch<Sites = [
  {
    url: "https://company.com/knowledge-base";
  },
  {
    url: "https://support.company.com";
  }
]>;