Freigeben über


Schreiben effektiver Anweisungen für deklarative Agents

Deklarative Agents sind angepasste Versionen von Microsoft 365 Copilot, mit denen Sie personalisierte Erfahrungen erstellen können, indem Sie bestimmte Anweisungen, Aktionen und Kenntnisse deklarieren. Um effektive Anweisungen für Ihren deklarativen Agent zu schreiben, stellen Sie sich die folgenden Fragen:

  • Welches Ziel muss Ihr Agent erreichen?
  • Welche Workflows stellen Sie sich vor, dass Ihre Endbenutzer durchgehen?
    • Gibt es Geschäftslogik, die Sie integrieren möchten?
    • Gibt es eine gewünschte Endbenutzererfahrung, die Sie integrieren möchten?
  • Können Sie für jeden Workflow schritt-für-Schritt-Anweisungen für den Agent bereitstellen?

Wenn Ihr deklarativer Agent auch API-Plug-Ins als Aktionen enthält, hilft das OpenAPI-Dokument für Ihr Plug-In dem Agent dabei, alle Anweisungen zu verstehen, die sich auf die API beziehen. Weitere Informationen finden Sie unter How to make an OpenAPI document effective in extending Copilot.For more information, see How to make an OpenAPI document effective in extending Copilot.

Dieser Leitfaden gilt für Entwickler und Entwickler, die microsoft 365 Agents Toolkit (eine Weiterentwicklung von Teams Toolkit) oder Copilot Studio verwenden, um deklarative Agents zu erstellen.

Anweisungskomponenten

Ein gut strukturierter Satz von Anweisungen stellt sicher, dass der Agent seine Rolle, die Aufgaben, die er ausführen sollte, und die Interaktion mit Benutzern versteht. Im Folgenden finden Sie die Standard Komponenten der Anweisungen für deklarative Agents:

  • Zweck
  • Allgemeine Richtlinien, einschließlich allgemeiner Anweisungen, Ton und Einschränkungen
  • Skills

Darüber hinaus umfassen die Anweisungen, sofern relevant, Folgendes:

  • Schrittweise Anweisungen
  • Fehlerbehandlung und Einschränkungen
  • Feedback und Iteration
  • Interaktionsbeispiele
  • Nicht standardmäßige Begriffe
  • Nachverfolgung und Abschluss

Das folgende Diagramm zeigt die primären Komponenten der Anweisungen für den deklarativen Agent.

Diagramm der Komponenten von Agent-Anweisungen, einschließlich Zweck, Richtlinien und Fähigkeiten

Bewährte Methoden für Agent-Anweisungen

Verwenden einer klar umsetzbaren Sprache

  • Konzentrieren Sie sich darauf, was Copilot tun sollte, nicht auf das, was Sie vermeiden sollten.
  • Verwenden Sie präzise, bestimmte Verben, z. B. "ask", "search", "send", "check" oder "use".
  • Ergänzen Sie mit Beispielen , um Mehrdeutigkeiten zu minimieren.
  • Definieren Sie in den Anweisungen alle Begriffe, die nicht dem Standard entsprechen oder für die organization eindeutig sind.

Erstellen von Schrittweisen Workflows mit Übergängen

Unterteilen Sie Workflows in modulare, eindeutige und nicht zusammenhängende Schritte. Jeder Schritt sollte Folgendes umfassen:

  • Ziel: Der Zweck des Schritts.
  • Aktion: Was der Agent tun soll und welche Tools verwendet werden sollen.
  • Übergang: Löschen Sie die Kriterien für den Wechsel zum nächsten Schritt oder zum Beenden des Workflows.

Strukturanweisungen in Markdown

Verwenden Sie Markdown, um die Reihenfolge der Schritte hervorzuheben und zu verdeutlichen.

  • Verwenden Sie #, ##und ### für Abschnittsheader.
  • Wird - für ungeordnete Listen und 1. für nummerierte Listen verwendet. Verwenden Sie ungeordnete Listen, es sei denn, die Reihenfolge der Schritte ist wichtig, in diesem Fall verwenden Sie nummerierte Listen.
  • Hervorheben von Tool- oder Systemnamen (z. B Jira. , ServiceNow, Teams) mithilfe von Backticks (''''').
  • Machen Sie kritische Anweisungen fett mit **.

Explizites Verweisen auf Funktionen, Wissen und Aktionen

Nennen Sie die Namen der Aktionen, Funktionen oder Wissensquellen, die bei jedem Schritt beteiligt sind.

  • Aktionen: Beispiel: "Verwenden Sie Jira zum Abrufen von Tickets".
  • Copilot-Connectorwissen: Beispiel: "Verwenden sie ServiceNow KB für Hilfeartikel".
  • SharePoint-Wissen: Beispiel: "Verweisen auf interne SharePoint- oder OneDrive-Dokumente".
  • Email Nachrichten: z. B. "Überprüfen Sie die E-Mails des Benutzers auf relevante Informationen."
  • Teams-Nachrichten: Beispiel: "Teams-Chatverlauf durchsuchen".
  • Codeinterpreter: Beispiel: "Verwenden Des Codeinterpreters zum Generieren von Balken- oder Kreisdiagrammen"
  • Personen Wissen, z. B. "Benutzerwissen zum Abrufen von Benutzer-E-Mails verwenden".

Beispiele bereitstellen

Beispiele helfen dem Agent, Anweisungen zu verstehen.

  • Für einfache Szenarien müssen Sie keine Beispiele geben.
  • Für komplexe Szenarien funktionieren deklarative Agents am besten mit wenigen Eingabeaufforderungen. Das heißt, geben Sie mehr als ein Beispiel, um verschiedene Aspekte oder Edge-Fälle zu veranschaulichen.

Vermeiden häufiger Eingabeaufforderungsfehler

Seien Sie sich dieser Fallstricke und ihrer Lösungen bewusst.

  • Übermäßiger Einsatz von Tools
    • Problem: Das Modell ruft Tools ohne erforderliche Eingaben auf.
    • Lösung: Hinzufügen der Anweisung "Rufen Sie das Tool nur auf, wenn erforderliche Eingaben verfügbar sind; andernfalls fragen Sie den Benutzer."
  • Sich wiederholende Ausdrücke
    • Problem: Das Modell verwendet Beispielausdrücke wortwörtlich wieder.
    • Lösung: Fördern Sie vielfältige Antworten und natürliche Sprache. Erwägen Sie, mehr als ein Beispiel anstelle von nur einem (Eingabeaufforderung mit wenigen Schüssen) hinzuzufügen. Experimentieren Sie mit dem Entfernen des Beispiels, um token zu speichern.
  • Ausführliche Erklärungen
    • Problem: Das Modell erklärt zu viel oder bietet übermäßige Formatierung.
    • Lösung: Um Ausführlichkeit oder Formatierung einzuschränken, fügen Sie Einschränkungen und präzise Beispiele hinzu.

Durchlaufen Ihrer Anweisungen

Die Entwicklung von Anweisungen für deklarative Agents ist häufig iterativ und besteht in der Regel aus den folgenden Schritten.

  1. Erstellen Sie Anweisungen und Konversationsstarter für Ihren Agent gemäß der in diesem Artikel beschriebenen Struktur und dem Format.
  2. Veröffentlichen Sie Ihren Agent. Praktiken der verantwortungsvollen KI (RAI) sind in den Validierungsprozess integriert, um sicherzustellen, dass die Agenten ethische Standards einhalten. Weitere Informationen finden Sie unter:
  3. Testen Sie Ihren Agent.
    1. Um zu bestätigen, dass der Agent bei der Beantwortung einen Mehrwert bietet, vergleichen Sie die Ergebnisse mit Microsoft 365 Copilot.
    2. Überprüfen Sie anhand der schritt-für-Schritt-Anleitung, ob die Konversationsstarter wie erwartet funktionieren.
    3. Vergewissern Sie sich, dass der Agent gemäß den angegebenen Anweisungen handelt.
    4. Vergewissern Sie sich, dass Benutzeraufforderungen außerhalb der Konversationsstarter ordnungsgemäß behandelt werden.
  4. Durchlaufen Sie anweisungen, um zu untersuchen, ob Sie die Ausgabe weiter verbessern können.
    • Ändern Sie die Anweisungen, um das Verhalten des Agents zu ändern.
    • Versuchen Sie, Wissen wie die Websuche, OneDrive/SharePoint oder Microsoft 365 Copilot-Connectors (früher Microsoft Graph-Connectors) hinzuzufügen, falls erforderlich, mithilfe des Agents Toolkits oder Copilot Studio.

Das folgende Diagramm veranschaulicht den iterativen Prozess zum Erstellen und Verfeinern von Anweisungen für deklarative Agents.

Diagramm der iterativen Schritte zum Erstellen und Verfeinern von Agent-Anweisungen

Beispielanweisungen

Die folgenden Beispielanweisungen gelten für einen Agent, der bei der Behebung allgemeiner IT-Probleme helfen kann.

# OBJECTIVE
Guide users through issue resolution by gathering information, checking outages, narrowing down solutions, and creating tickets if needed. Ensure the interaction is focused, friendly, and efficient.

# RESPONSE RULES
- Ask one clarifying question at a time, only when needed.
- Present information as concise bullet points or tables.
- Avoid overwhelming users with details or options.
- Always confirm before moving to the next step or ending.
- Use tools only if data is sufficient; otherwise, ask for missing info.

# WORKFLOW

## Step 1: Gather Basic Details
- **Goal:** Identify the user's issue.
- **Action:**
  - Proceed if the description is clear.
  - If unclear, ask a single, focused clarifying question.
    - Example:
      User: "Issue accessing a portal."
      Assistant: "Which portal?"
- **Transition:** Once clear, proceed to Step 2.

## Step 2: Check for Ongoing Outages
- **Goal:** Rule out known outages.
- **Action:**
  - Query `ServiceNow` for current outages.
  - If an outage is found:
    - Share details and ETA.
    - Ask: "Is your issue unrelated? If yes, I can help further."
    - If yes, go to Step 3. If no/no response, end politely.
  - If none, inform the user and go to Step 3.

## Step 3: Narrow Down Resolution
- **Goal:** Find best-fit solutions from the knowledge base.
- **Action:**
  - Search `ServiceNow KB` for related articles.
  - **Iterative narrowing:** Don't list all results. Instead:
    - Ask clarifying questions based on article differences.
    - Eliminate irrelevant options with user responses.
    - Repeat until the best solution is found.
  - Provide step-by-step fix instructions.
  - Confirm: "Did this help? If not, I can go deeper or create a ticket."
    - If more info is provided, repeat this step.
    - If ticket needed, go to Step 4.
    - If resolved/no response, end politely.

## Step 4: Create Support Ticket
- **Goal:** Log unresolved issues.
- **Action:**
  1. Map **category** and **subcategory** from the `sys_choice` SharePoint file.
     - Use only valid pairs. Leave blank if not clear.
  2. Fetch user's UPN (email) with the people capability.
  3. Fill the ticket with:
     - Caller ID (email)
     - Category, Subcategory (if mapped)
     - Description, attempted steps, error codes, metadata
- **Transition:** Confirm ticket creation and next steps.

# OUTPUT FORMATTING RULES
- Use bullets for actions, lists, next steps.
- Use tables for structured data where UI allows.
- Avoid long paragraphs; keep responses skimmable.
- Always confirm before ending or submitting tickets.

# EXAMPLES

## Valid Example
**User:** "I can't connect to VPN."
**Assistant:**
- "Are you seeing a specific error?"
  (User: "DNS server not responding.")
- "Let me check for outages."
  (No outage.)
- "No outages. Searching knowledge base…"
  (Finds articles. Asks: "Are you on office Wi-Fi or home?")
  (User: "Home.")
- "Try resetting your DNS settings. Here's how…"
- "Did this help? If not, I can create a support ticket."

## Invalid Example
- "Here are 15 articles I found…" *(Overwhelms the user)*
- "I'm raising a ticket" *(without confirming details)*