Verbessern von KI-generierten Agent-Nachrichten

Wichtig

  • Die KI-Bibliothek von Teams wurde jetzt in Teams SDK umbenannt.
  • Die Teams KI-Bibliothek v1 ist veraltet. Es wird empfohlen, dass Sie Für Ihre Agents ein Upgrade durchführen, um das aktualisierte Teams SDK zu verwenden.

Das Teams SDK ist jetzt allgemein für JavaScript und C# verfügbar und unterstützt Python in der Entwicklervorschau. Es bietet ein vereinfachtes SDK, Unterstützung für MCP (Model Context Protocol), Agent-to-Agent-Kommunikation (A2A) und optimierte Tools, damit Entwickler intelligente Agents für Teams erstellen können.

KI-Bezeichnungen, Zitate, Feedbackschaltflächen und Vertraulichkeitsbezeichnungen in den Nachrichten Ihres Agents verbessern die Benutzerbindung und fördern Transparenz und Vertrauen.

Die folgenden Screenshots zeigen, wie Agent-Nachrichten mit KI-Bezeichnung, Zitat, Feedbackschaltflächen und Vertraulichkeitsbezeichnung verbessert werden können:

Before

Screenshot: Agent-Nachricht ohne KI-Bezeichnung, Zitat, Feedbackschaltflächen und Vertraulichkeitsbezeichnung

After

Screenshot: Agent-Nachricht mit KI-Bezeichnung, Zitat, Feedbackschaltflächen und Vertraulichkeitsbezeichnung im Teams-Desktopclient

Hinweis

KI-Bezeichnung

Eine KI-Bezeichnung in Ihrer Agent-Nachricht gibt an, dass sie von KI generiert wird. Ki-gestützte Agents, die große Sprachmodelle (Large Language Models, LLMs) verwenden, sind zwar im Allgemeinen zuverlässig, aber die Bezeichnung trägt dazu bei, Verwechslungen über die Quelle der Informationen zu vermeiden.

Ki-Bezeichnung hinzufügen

Um Ihren Agent mit dem Teams SDK zu erstellen, verwenden Sie die addAiGenerated() -Methode, um eine Nachricht als KI-generiert zu markieren. Der folgende Codeausschnitt zeigt, wie die KI-Bezeichnung in einer Agent-Nachricht aktiviert wird:

app.message(/label/i, async ({ send }) => {
  await send(new MessageActivity("Hi, this message is generated by AI").addAiGenerated());
});

Nachdem Sie eine KI-Bezeichnung hinzugefügt haben, wird in der Meldung Ihres Agents neben dem Namen des Agents eine VON KI generierte Bezeichnung angezeigt. Wenn Sie mit dem Mauszeiger auf die KI-Bezeichnung zeigen, wird ein Haftungsausschluss angezeigt, der besagt, dass KI-generierte Inhalte möglicherweise falsch sind. Die KI-Bezeichnung und der Haftungsausschluss können nicht für KI-gestützte Agents angepasst werden.

Fehlerbehandlung

Fehlercode Beschreibung
400 Mehrere Stammnachrichtenentitäten, die unter dem entities Array gefunden werden.
400 Fehler beim Analysieren der Nachrichtenentität aus einem entities Array.

Zitate

Das Zitieren von Quellen in Agent-Nachrichten hilft Benutzern, Folgefragen zu stellen oder unabhängige Recherchen durchzuführen. Zitieren Sie Datenquellen wie Dateien, Nachrichten, E-Mails und Arbeitselemente, um wertvolle Erkenntnisse zu liefern. Zitate sind für Agents, die Techniken wie Retrieval-Augmented Generation (RAG) verwenden, von entscheidender Bedeutung.

Zitate

Screenshot einer KI-gestützten Agent-Antwort mit Zitaten im Teams-Desktopclient.

Modales Fenster

Screenshot: Popupfenster aus einem Zitat in einer KI-gestützten Agent-Nachricht im Teams-Desktopclient

Zitate in den Nachrichten Ihres Agents können Folgendes enthalten:

  • In-Text-Zitate bezeichnen die Zitatnummern, die der Agent-Nachricht im [#]-Format hinzugefügt wurden, die jeweils einem Verweis entsprechen. Ein Zitat kann an einer beliebigen Stelle innerhalb des Texts eingefügt werden.
  • Zu den Details der Zitatreferenz gehören Titel, Symbol, Schlüsselwörter, Abstract, Hyperlink, Vertraulichkeitsinformationen und eine Schaltfläche zum Öffnen eines modales Fensters mit zusätzlichem Inhalt. Verweise werden als Popupfenster für jedes In-Text-Zitat angezeigt.
  • Vertraulichkeitsbezeichnungen für Zitate geben die Vertraulichkeit des Zitatinhalts an, auf den verwiesen wird, und werden nicht automatisch hinzugefügt. Informationen zum Hinzufügen von Vertraulichkeitsbezeichnungen für Zitate finden Sie unter Hinzufügen von Vertraulichkeitsbezeichnungen.
  • Ein modales Fenster mit zusätzlichem Inhalt rendert eine adaptive Karte ohne interaktive Elemente.

Hinweis

  • In einer Nachricht werden maximal 20 Zitate angezeigt.
  • Zitate mit adaptiven Karten sind in der öffentlichen Entwicklervorschau verfügbar.
  • Adaptive Karten werden nicht im Popupfenster für Zitate gerendert. Adaptive Karten können jedoch in der Nachricht des Agents oder im modalem Fenster des Zitats gerendert werden, auf das über das Popupfenster zugegriffen werden kann.

Zitate hinzufügen

Wenn Sie das Teams SDK zum Erstellen Ihres Agents verwenden, verwenden Sie addCitation() , um In-Text-Verweise und Zitatmetadaten in Ihre Nachricht einzuschließen. Es folgt ein Beispielcodeausschnitt:

app.message(/citation/i, async ({ send }) => {
  const card = new AdaptiveCard(new TextBlock("Adaptive Card text"))
    .withOptions({ version: "1.6" });
  const appearance: CitationAppearance = {
    name: "AI messages agent",
    url: "https://example.com/claim-1",
    abstract: "Excerpt description",
    text: JSON.stringify(card),
    keywords: ["keyword 1", "keyword 2", "keyword 3"],
    icon: "Microsoft Word",
  };
  await send(
    new MessageActivity("Hey I'm a friendly AI agent. This message is generated through AI [1]")
      .addCitation(1, appearance)
  );
});
Eigenschaft Typ Erforderlich Beschreibung
citation Object ✔️ Details des Zitats.
citation.@type Zeichenfolge ✔️ Objekt des Zitats.
Zulässiger Wert: Claim
citation.position Integer ✔️ Zeigt die Zitatnummer an. Dieser Wert muss für jedes Zitat eindeutig sein.
citation.appearance Objekt ✔️ Informationen über das Aussehen des Zitats.
citation.appearance.@type Zeichenfolge ✔️ Objekt der Zitatdarstellung.
Zulässiger Wert: DigitalDocument
citation.appearance.name Zeichenfolge ✔️ Titel des Inhalts, auf den verwiesen wird. Maximale Anzahl von Zeichen: 80
citation.appearance.url Zeichenfolge URL des Inhalts, auf den verwiesen wird.
citation.appearance.abstract Zeichenfolge Eine Zusammenfassung des Inhalts, auf den verwiesen wird. Maximale Anzahl von Zeichen: 160
citation.appearance.text Zeichenfolge Eine zeichenfolgenfähige adaptive Karte mit zusätzlichen Informationen zum Zitat. Es wird innerhalb des modale Fensters gerendert, auf das über das Popupfenster zugegriffen werden kann.
citation.appearance.keywords Array Schlüsselwörter aus dem Inhalt, auf den verwiesen wird. Sie können nicht mehr als drei Schlüsselwörter hinzufügen. Jede Schlüsselwort (keyword) darf nur 28 Zeichen enthalten.
citation.appearance.encodingFormat Zeichenfolge Das Codierungsformat des citation.appearance.text Felds.
Zulässiger Wert: application/vnd.microsoft.card.adaptive
citation.appearance.image Objekt Informationen zum Zitatsymbol.
citation.appearance.image.@type Zeichenfolge ✔️ Das Objekt des Zitatsymbols. Muss ImageObject sein.
citation.appearance.image.name Zeichenfolge ✔️ Der Name des vordefinierten Symbols. Es rendert das Zitatsymbol in den Details des Zitatverweises.
Zulässige Werte: Microsoft Word, Microsoft Excel, Microsoft PowerPoint, Microsoft OneNote, Microsoft SharePoint, Microsoft Visio, Microsoft Loop, Microsoft Whiteboard, SketchSource Code, Adobe Illustrator, ZIPSoundTextVideoAdobe PhotoshopAdobe InDesignAdobe FlashImageGIFPDF

Nachdem Sie Zitate aktiviert haben, enthält die Agent-Nachricht In-Text-Zitate und Verweise. Die In-Text-Zitate zeigen die Verweisdetails an, wenn Benutzer mit dem Mauszeiger auf das Zitat zeigen.

Fehlerbehandlung

Fehlercode Beschreibung
400 Mehrere Stammnachrichtenentitäten, die unter dem entities Array gefunden werden.
400 Fehler beim Analysieren der Nachrichtenentität aus einem entities Array.
400 Agent-Nachricht mit mehr als 20 Zitaten.
400 Das appearance Objekt ist leer.
400 Fehler beim Analysieren der Zitatentität mit der ID: X.

Feedbackschaltflächen

Feedbackschaltflächen in Agent-Nachrichten sind wichtig, um die Benutzerbindung nachzuverfolgen, Fehler zu identifizieren und Einblicke in die Agent-Leistung zu erhalten. Diese Erkenntnisse ermöglichen gezielte Verbesserungen der Konversationsfunktionen des Agents. Aktivieren Sie Feedbackschaltflächen, damit Benutzer Nachrichten mit "Gefällt mir" mögen oder nicht mögen und detailliertes Feedback geben können.

Wenn der Benutzer eine Feedbackschaltfläche auswählt, wird basierend auf der Auswahl des Benutzers ein Feedbackformular angezeigt. Sie können entweder das Standardfeedbackformular verwenden oder es an die Anforderungen Ihrer App anpassen.

Feedbackschaltflächen befinden sich in der Fußzeile der Nachricht des Agents und enthalten eine 👍 (Daumen nach oben) und eine 👎 Schaltfläche (Daumen nach unten), die der Benutzer auswählt.

Schaltflächen zum Hinzufügen von Feedback

Um Feedbackschaltflächen in einem Agent zu aktivieren, der mit dem Teams SDK erstellt wurde, verwenden Sie die addFeedback() -Methode für die Nachrichtenaktivität.

app.message(/feedback/i, async ({ send }) => { 

  await send(new MessageActivity("This is an example of a feedback button - this helps to provide feedback for a message").addFeedback()); 

}); 
Eigenschaft Typ Erforderlich Beschreibung
feedbackLoop Object ✔️ Aktiviert Feedbackschaltflächen in der Nachricht des Agents.
feedbackLoop.type Zeichenfolge ✔️ Definiert den Typ des Feedbackformulars, das angezeigt wird, wenn ein Benutzer die Feedbackschaltflächen auswählt.
Zulässige Werte: custom, default

Wenn Sie auf defaultfestlegenfeedbackLoop.type, wird das Standardfeedbackformular angezeigt, wenn ein Benutzer die Feedbackschaltflächen auswählt. Wenn Sie ein benutzerdefiniertes Feedbackformular anzeigen möchten, legen Sie auf fest feedbackLoop.typecustom. Die folgende Aufrufanforderung wird an den Agent gesendet, um ein benutzerdefiniertes Formular abzurufen, das dem Benutzer angezeigt wird:

{
    "type": "invoke",
    "name": "message/fetchTask",
    "value": {
        "actionName": "feedback",
        "actionValue": {
            "reaction": "like" // like or dislike
        }
    }
}

Sie müssen auf diesen Aufruf mit einem Dialog (in TeamsJS v1.x als Aufgabenmodule bezeichnet) reagieren, genauso wie Sie auf einen task/fetch Aufruf reagieren würden. Weitere Informationen zum Aufrufen von Dialogen in Agents finden Sie unter Verwenden von Dialogen mit Bots.

Verarbeiten von Feedback

Der Agent empfängt Benutzereingaben aus dem Feedbackformular über einen Agent-Aufrufflow. Für Agents, die mit dem Teams SDK erstellt wurden, wird die Agent-Aufrufanforderung automatisch verarbeitet. Verarbeiten von Benutzerfeedback mithilfe des -Ereignisses message.submit.feedback .

app.on("message.submit.feedback", async (context) => { 
  // custom logic here... 
}); 

Hinweis

Teams speichert oder verarbeitet kein Feedback. Es stellt keine API oder einen Speichermechanismus bereit.

Wenn ein Benutzer Ihren Agent deinstalliert und weiterhin Zugriff auf den Agent-Chat hat, entfernt Teams die Feedbackschaltflächen aus den Agent-Nachrichten, um zu verhindern, dass der Benutzer Feedback an den Agent senden kann.

Fehlerbehandlung

Fehlercode Beschreibung
400 message.submit.feedback event app.message(/label/i, async ({ send }) => { response isn't empty.

Vertraulichkeitsbezeichnung

Agentantworten können vertrauliche Informationen enthalten oder nur für bestimmte Personen innerhalb der organization zugänglich sein. Fügen Sie eine Vertraulichkeitsbezeichnung hinzu, um Benutzern zu helfen, die Vertraulichkeit einer Nachricht zu identifizieren, sodass sie bei der Freigabe vorsichtshalber vorgehen können.

Hinweis

Fügen Sie den Nachrichten Ihres Agents nur dann eine Vertraulichkeitsbezeichnung hinzu, wenn diese vertrauliche Informationen enthalten.

Vertraulichkeitsbezeichnung hinzufügen

Für Agents, die mit dem Teams SDK erstellt wurden, fügen Sie Ihrer Agent-Nachricht eine Vertraulichkeitsbezeichnung hinzu, indem Sie die Nachricht so ändern, dass sie in das entities -Objekt aufgenommen wirdusageInfo.

Der folgende Codeausschnitt zeigt, wie Sie Vertraulichkeitsbezeichnungen sowohl zu Agent-Nachrichten als auch zu Zitaten hinzufügen:

await context.sendActivity({
  type: ActivityTypes.Message,
  text: `Hey, I'm a friendly AI agent. This message is generated through AI [1]`,
  entities: [
    {
      type: "https://schema.org/Message",
      "@type": "Message",
      "@context": "https://schema.org",
      usageInfo: {
        "@type": "CreativeWork",
        name: "Sensitivity title",
        description: "Sensitivity description",
      },
    },
  ],
});
Eigenschaft Typ Erforderlich Beschreibung
usageInfo.@type Zeichenfolge ✔️ Aktiviert die Vertraulichkeitsbezeichnung in der Agent-Nachricht.
citation.usageInfo.@id Zeichenfolge ✔️ Aktiviert die Vertraulichkeitsbezeichnung im Zitatverweis. Dies ist beim Hinzufügen einer Vertraulichkeitsbezeichnung zum Zitatverweis erforderlich.
usageInfo.name Zeichenfolge ✔️ Gibt den Titel der Vertraulichkeitsbezeichnung an.
usageInfo.description Zeichenfolge Gibt die Popupfenstermeldung an, die angezeigt wird, wenn ein Benutzer auf die Vertraulichkeitsbezeichnung zeigt.

Nachdem Sie die Vertraulichkeitsbezeichnung hinzugefügt haben, wird in ihrer Agent-Nachricht ein Schildsymbol angezeigt. Benutzer können mit dem Mauszeiger auf das Symbol zeigen, um einen Haftungsausschluss zur Vertraulichkeit der Nachricht anzuzeigen.

Fehlerbehandlung

Fehlercode Beschreibung
400 Mehrere Stammnachrichtenentitäten, die unter dem entities Array gefunden werden.
400 Fehler beim Analysieren der Nachrichtenentität aus einem entities Array.
400 Der Wert der Zitatebene usageInfo.@id stimmt nicht mit der Nachrichtenebene usageInfo.@id in mindestens einer instance überein.
400 Es gibt mehrere Eigenschaften auf Zitatebene usageInfo mit demselben @id, aber ihre name Eigenschaften und description unterscheiden sich.

Codebeispiel

Beispielname Beschreibung Node.js .NET Python
Teams-Konversations-Agent Diese Beispiel-App zeigt die KI-Bezeichnung, das Zitat, die Feedbackschaltflächen und die Vertraulichkeitsbezeichnung in Nachrichten an. View View Anzeigen

Siehe auch