Zum Hauptinhalt springen

Praktische Beispiele für Fin Procedures

Sehen Sie praktische Beispiele, wie Sie effektive Schritte, Bedingungen und Datenconnector-Aufrufe in Ihren Fin Procedures erstellen.

Verfasst von Dawn

Dieser Artikel behandelt praktische Beispiele, wie Sie Ihre Schritte, Bedingungen und Datenconnector-Aufrufe in Fin Procedures strukturieren.


Strukturierung von Instruction-Schritten

Der Instruction-Schritt ist der Standard- und leistungsstärkste Schritt.

Verwandte Aktionen zu einem Schritt zusammenfassen

Weniger, gut gestaltete Schritte, die verwandte Aktionen kohärent zusammenfassen, sind besser als viele separate, kleine Schritte.

WENIGER EFFEKTIV:

  • Schritt 1: @read Email.

  • Schritt 2: Fragen Sie nach der E-Mail, falls diese nicht vorhanden ist.

  • Schritt 3: @use get_subscription_details

  • Schritt 4: Senden Sie eine Antwort, in der jedes API-Feld aufgelistet ist.

EFFIZIENTER:

@read email. Wenn diese nicht bekannt ist, fragen Sie den Benutzer nach seiner E-Mail, bevor Sie fortfahren. Dann @use get_subscription_details und antworten Sie, indem Sie den Benutzer fragen, wobei Sie ihm helfen können. Fügen Sie den aktuellen Plan, den Planstatus und das nächste Verlängerungsdatum des Benutzers in Ihre Antwort ein.

Seien Sie klar und vollständig

Betrachten Sie Fin als neuen Teamkollegen ohne vorherigen Kontext. Wenn ein Mensch Ihre Anweisungen nicht leicht verstehen könnte, wird Fin es wahrscheinlich auch nicht tun.

WENIGER EFFEKTIV:

Sammeln Sie die Bestellnummer des Kunden und stellen Sie sicher, dass sie gültig ist und keine Sendungsverfolgungsnummer.

EFFIZIENTER:

Sammeln Sie die Bestellnummer des Kunden. Wenn eine Nummer angegeben wurde, die länger als 11 Zeichen ohne das # am Anfang ist, informieren Sie ihn, dass es sich möglicherweise um eine Sendungsverfolgungsnummer handelt, und fragen Sie erneut nach der Bestellnummer. Wenn der Kunde seine Bestellnummer nicht angeben kann, fahren Sie nicht fort, sondern @Escalate:Support team.

Notizen für Teamkollegen-Kontext hinzufügen

Verwenden Sie @Add note innerhalb eines Instruction-Schritts, um internen Kontext zum Gespräch hinzuzufügen. Dies ist besonders nützlich vor Eskalationen oder Übergaben, um Teamkollegen den benötigten Kontext zu geben.

WENIGER EFFEKTIV:

  • Schritt 1: @use Get_Order_Details und informieren Sie den Kunden über den Status.

  • Schritt 2: Wenn die Bestellung verloren gegangen ist, @Escalate an Support team.

EFFIZIENTER:

@use Get_Order_Details und informieren Sie den Kunden über den Status. Wenn die Bestellung als verloren oder nicht geliefert nach dem erwarteten Lieferdatum angezeigt wird, @Add note mit der Bestellnummer, dem Versanddienstleister, dem erwarteten Lieferdatum und dem aktuellen Sendestatus. Dann @Escalate an Support team.


Verwendung des Condition-Schritts

Bedingungen sagen Fin, wie es sich in verschiedenen Situationen verhalten soll. Sie können sie für große, unterschiedliche Verzweigungen in Ihrer Logik verwenden.

Beispiel: Code-Bedingung für Rückerstattungsberechtigung

Dieses Beispiel verwendet eine Code-Bedingung, um die Ausgabe eines Datenconnectors zu überprüfen.

WENN: data["Check refund eligibility"].decision == "eligible"

  • Informieren Sie den Benutzer, dass sein Abonnement für eine Rückerstattung berechtigt ist. Bieten Sie das Pausieren als Alternative an: „Wenn Sie möchten, können Sie Ihr Abonnement statt der Kündigung pausieren – so müssen Sie keine Neustartgebühr zahlen, falls Sie später zurückkehren.“ Bestätigen Sie, ob der Benutzer mit der Rückerstattung fortfahren oder sein Abonnement pausieren möchte.

  • Wenn der Benutzer mit der Rückerstattung fortfahren möchte, verwenden Sie @Use Process refund, um die Rückerstattung abzuschließen. Sobald abgeschlossen, informieren Sie den Benutzer, dass die Rückerstattung bearbeitet wurde und die Gelder normalerweise innerhalb von 7-14 Tagen auf seinem Konto sind.

SONST:

  • Informieren Sie den Benutzer, dass sein Abonnement nicht für eine Rückerstattung berechtigt ist. @Tag Not refund eligible.

  • Bieten Sie ihm stattdessen die Möglichkeit, sein Abonnement zu kündigen, was zukünftige Zahlungen pausiert.

  • @Escalate to Support team.

Beispiel: Natural Language-Bedingung für Erfüllungsstatus

Dieses Beispiel verwendet Natural Language, um ein Attribut zu überprüfen.

WENN: @Read Fulfillment status ist ‚fulfilled‘

  • Informieren Sie den Kunden, dass seine Bestellung nicht storniert werden kann, da sie bereits erfüllt wurde.

  • @End Fin fährt fort

Von hier aus können Sie auf das +-Symbol klicken, um else if condition hinzufügen oder else hinzufügen.


Arbeiten mit Datenconnectors und Attributen

Sie können Datenconnectors und Attribute verwenden, um Informationen abzurufen oder zu aktualisieren.

Aufruf eines Datenconnectors

Sie können Fin anweisen, einen Datenconnector zu verwenden, um Informationen aus einem externen System abzurufen oder zu aktualisieren.

Beispiel: @Use: Get order status und informieren Sie den Kunden über den Status seiner Bestellung.

Fin Eingaben sammeln lassen

Sie müssen Fin nicht explizit anweisen, Daten zu sammeln, die ein Connector benötigt. Fin leitet die erforderlichen Eingaben basierend auf der Einrichtung des Connectors ab.

Falsch (unnötig komplex):

Fragen Sie zuerst den Kunden nach seiner E-Mail-Adresse, dann rufen Sie @get_order_details mit dieser E-Mail auf.

Einfach und klar:

Rufen Sie @get_order_details auf.

Daten von einem Connector lesen

Wenn Sie einen Daten-Connector verwenden, sind die zurückgegebenen Daten im gesamten Procedure verfügbar. Verwenden Sie @read attribute, um auf diese Daten in späteren Schritten zuzugreifen, anstatt denselben Connector erneut aufzurufen.

Weniger effektiv (langsamer):

  • Schritt 1: @use Get_Subscription_info und fügen Sie @read plan status in Ihre Antwort ein.

  • Schritt 2: @use Get_Subscription_info und fügen Sie @read refund eligibility in Ihre Antwort ein.

Einfacher und schneller:

  • Schritt 1: @use Get_Subscription_info fügen Sie @read plan status in Ihre Antwort ein.

  • Schritt 2: Fügen Sie @read refund eligibility in Ihre Antwort ein.

Ein Intercom-Attribut lesen

Sie können auch Intercom-Daten wie People-, Company- oder Conversation-Attribute lesen.

Beispiel: Teilen Sie dem Kunden seinen @Read People.Plan mit.


Verwendung von Abschnitten

Abschnitte ermöglichen es Ihnen, ein Procedure in benannte, logische Blöcke zu gliedern. Standardmäßig führt Fin die Schritte von oben nach unten aus, unabhängig von Abschnittsgrenzen – Abschnitte ändern das Ausführungsverhalten nicht, es sei denn, Sie weisen Fin an, zu einem Abschnitt zu springen.

Beispiel: Organisation eines Rückgabeverfahrens mit Abschnitten

Teilen Sie ein längeres Procedure in benannte Abschnitte auf, um die Lesbarkeit zu verbessern und die Navigation mit Gehe zu Abschnitt zu erleichtern.

Abschnitt: Bestellung überprüfen

  • @use Get_Order_Details. Wenn die Bestellung nicht gefunden wird, informieren Sie den Kunden und @End Fin fährt fort.

Abschnitt: Rückgabetyp bestimmen

  • Fragen Sie den Kunden, ob er eine Rückerstattung oder einen Umtausch möchte.

WENN: der Kunde eine Rückerstattung möchte

  • Gehe zu Abschnitt: Rückerstattung bearbeiten

SONST:

  • Gehe zu Abschnitt: Umtausch bearbeiten

Abschnitt: Rückerstattung bearbeiten

  • @use Process_Refund und informieren Sie den Kunden, dass die Rückerstattung in 7-14 Tagen erfolgt. @Add note mit der Bestellnummer und dem Rückerstattungsbetrag. @End Fin fährt fort.

Abschnitt: Umtausch bearbeiten

  • Fragen Sie den Kunden, welchen Artikel er stattdessen möchte. @use Create_Exchange und bestätigen Sie die neuen Bestelldetails. @End Fin fährt fort.

Wann Abschnitte vs. Unterverfahren verwenden

Verwenden Sie Abschnitte, um den Ablauf innerhalb eines einzelnen Procedures zu organisieren. Verwenden Sie Unterverfahren, wenn dieselbe Logik in mehreren Procedures wiederverwendet wird oder wenn Sie ein komplexes Logikstück mit eigenen Eingaben und Ausgaben kapseln möchten.


Verwendung von Unterverfahren

Unterverfahren sind wiederverwendbare Schrittfolgen, die von einem anderen Procedure aufgerufen werden können. Dies wird für komplexe oder wiederholte Logik empfohlen.

Beispiel: Ausführen eines Unterverfahrens in einer Bedingung

Sie können ein Unterverfahren als Teil eines bedingten Zweigs ausführen.

WENN: die Wahl des Kunden ist, den Artikel zurückzugeben und eine vollständige Rückerstattung zu erhalten.

  • Senden Sie den Link https://... zum Herunterladen des Rücksendeetiketts und erklären Sie, dass sie eine vollständige Rückerstattung erhalten, nachdem die Schuhe innerhalb von 3-5 Tagen zurückgesendet wurden.

SONST:

  • @Run sub-procedure Rücksendeetikett senden & Rabattcode geben

Benennung von Unterverfahren

Verwenden Sie klare, handlungsorientierte Namen, die kommunizieren, was das Unterverfahren tut.

Gute Namen:

  • CollectPaymentInfo

  • VerifyUserIdentity

  • ResolveDeliveryIssue

Schlechte Namen:

  • Step4

  • Teil B

  • Bearbeite Rückerstattungsabschnitt A


Verwendung des Ask Teammate-Schritts (Human-in-the-Loop)

Der Ask Teammate-Schritt ermöglicht es Fin, mitten im Verfahren zu pausieren und Input von einem menschlichen Teammitglied anzufordern – ohne das gesamte Gespräch zu übergeben. Verwenden Sie dies für risikoreiche, sensible oder komplexe Entscheidungen, bei denen Sie die Automatisierung meist wünschen, aber an wichtigen Punkten einen Menschen benötigen.

Beispiel: Rückerstattungsfreigabe über einem Schwellenwert

Schritt 1: @use Check_Refund_Eligibility. Wenn berechtigt, @read refund amount.

WENN: data["Check_Refund_Eligibility"].refund_amount > 500

  • Informieren Sie den Kunden, dass seine Rückerstattungsanfrage geprüft wird und er bald eine Rückmeldung erhält.

  • Ask Teammate: „Der Kunde beantragt eine Rückerstattung von @read refund amount für die Bestellung @read order number. Grund: @read refund reason. Bitte genehmigen oder ablehnen.“

SONST:

  • @use Process_Refund und informieren Sie den Kunden, dass die Rückerstattung bearbeitet wurde. Die Gelder werden in 7-14 Tagen eintreffen.

Wie Ask Teammate funktioniert

Wenn Fin den Ask Teammate-Schritt erreicht:

  1. Fin pausiert und sendet eine Notiz an das zugewiesene Teammitglied mit dem von Ihnen konfigurierten Kontext.

  2. Das Teammitglied sieht das Gespräch in einer speziellen Needs teammate input-Ansicht im inbox.

  3. Das Teammitglied kann entweder eine Antwort einreichen (Fin setzt das Verfahren mit deren Input fort) oder das Gespräch vollständig übernehmen (Fin stoppt).

  4. Wenn niemand innerhalb des konfigurierten Zeitlimits antwortet, sendet Fin eine Eskalationsnachricht an den Kunden und weist das Gespräch Ihrem Eskalationsteam zu.

Tipps für Ask Teammate

  • Geben Sie klaren Kontext in der Notiz an – Fügen Sie die spezifischen Datenpunkte hinzu, die das Teammitglied für eine Entscheidung benötigt (z. B. Rückerstattungsbetrag, Bestelldetails, Kundenhistorie).

  • Verwenden Sie Ask Teammate nicht für Routineentscheidungen – Wenn die Logik als Bedingung oder Codeprüfung ausgedrückt werden kann, verwenden Sie diese stattdessen. Reservieren Sie Ask Teammate für wirklich mehrdeutige oder risikoreiche Situationen.


Wechsel zwischen Verfahren

Sie können Fin anweisen, von einem Verfahren zum anderen zu wechseln, wenn sich die Bedürfnisse des Kunden mitten im Gespräch ändern.

Verwendung von @Switch für deterministischen Wechsel

Verwenden Sie den @Switch-Befehl innerhalb eines Anweisungsschritts, um explizit zu einem anderen Verfahren zu wechseln.

Beispiel:

Wenn der Kunde sagt, dass er sein Abonnement kündigen möchte, anstatt seine Zahlungsmethode zu aktualisieren, @Switch zum Kündigungsverfahren.

Verwendung von Agentic Switch für automatischen Wechsel

Wenn Agentic Switch aktiviert ist, kann Fin autonom vom aktuellen Verfahren zu einem anderen aktiven Verfahren wechseln, wenn er feststellt, dass sich die Absicht des Kunden geändert hat. Fin trifft diese Entscheidung basierend auf dem Gespräch und den Verfahrensauslöser-Beschreibungen und kann klärende Fragen stellen, um Unklarheiten zu beseitigen.

Agentic Switch ist optional und kann in den Verfahrenseinstellungen aktiviert werden. Sie können @Switch weiterhin für deterministische Steuerung neben Agentic Switch verwenden.


Verwendung anderer Schritte und Anleitungen

Verwenden Sie Guidance für allgemeine Regeln und Endschritte, um Fin mitzuteilen, was als Nächstes zu tun ist.

Verfahrensanleitung

Verwenden Sie den Guidance-Abschnitt für globale Regeln, wie Fin während dieses Verfahrens interagieren soll.

  • Beispiel: „Bringen Sie eine Rückerstattung niemals zur Sprache, es sei denn, ein Kunde erwähnt sie zuerst.“

Endschritte

Endschritte teilen Fin mit, dass das Verfahren abgeschlossen ist und was als Nächstes zu tun ist.

  • Beispiel (Weiterleitung an wiederverwendbaren Workflow): Wenn der Kunde weiterhin keine Bestellnummer angibt, dann @Pass to reusable workflow Agent Handover.

  • Beispiel (Beenden und eskalieren): @End - Escalate an das Support-Team

  • Beispiel (Beenden und Fin weitermachen lassen): @End - Let Fin continue


    Tipps zum Erstellen besserer Verfahren

    Verwenden Sie eine KI-gestützte Überprüfung vor dem Livegang

    Nach dem Erstellen Ihres Verfahrens verwenden Sie die KI-gestützte Verfahrensüberprüfung, um potenzielle Probleme in Ihren Anweisungen zu erkennen. Die Überprüfung analysiert Ihre Schritte und markiert Probleme, die dazu führen könnten, dass Fin ihnen nicht zuverlässig folgt. Dies ist eine schnelle Möglichkeit, Probleme zu erkennen, bevor Ihre Kunden darauf stoßen.

    Verwenden Sie Versionsnotizen und Rollbacks

    Wenn Sie Änderungen an einem Live-Verfahren veröffentlichen, fügen Sie eine Versionsnotiz hinzu, in der Sie beschreiben, was Sie geändert haben. Wenn etwas schiefgeht, können Sie Ihre Versionshistorie anzeigen und direkt von der Verfahrensseite auf eine zuvor live geschaltete Version zurücksetzen.

  • Beispiel (Beenden mit Nachricht): @End mit der Nachricht „Danke, dass Sie sich gemeldet haben! Wenn Sie noch etwas brauchen, schreiben Sie uns einfach wieder.“ Dies sendet eine Abschlussnachricht an den Kunden, bevor das Verfahren endet.

  • Beispiel (Beenden und Gespräch schließen): @End - Close conversation. Dies beendet das Verfahren und schließt das Gespräch automatisch.

  • Beispiel (Beenden und ein Ticket erstellen): @End - Create a ticket mit dem Tickettyp „Bug Report“. Dies beendet das Verfahren und fordert den Kunden auf, ein ticket zu erstellen, und übergibt dann das Gespräch an ein Teammitglied.

Hat dies deine Frage beantwortet?