process-mining
latest
false
Wichtig :
Bitte beachten Sie, dass dieser Inhalt teilweise mithilfe von maschineller Übersetzung lokalisiert wurde. Es kann 1–2 Wochen dauern, bis die Lokalisierung neu veröffentlichter Inhalte verfügbar ist.
UiPath logo, featuring letters U and I in white

Process Mining

Letzte Aktualisierung 19. Aug. 2025

Verwenden von LLM-Funktionen in Datentransformationen

Hinweis:

Check out the official Snowflake documentation on Snowflake AI and ML for an overview of Snowflake's artificial intelligence and machine learning capabilities.

Only the explicit data passed in function calls is sent to the LLM.

  1. Data does not leave the Snowflake environment.
  2. Data is not retained beyond processing and is not used for training.
  3. Snowflake contracts and architecture are designed to meet enterprise data governance standards.

Einleitung

Mit LLM-Funktionen können Sie unstrukturierten Text zu einer kategorischen Ausgabe für die aggregierte Analyse in Ihren Dashboards verarbeiten. Die Verwendung von LLM-Funktionen macht komplexe reguläre Ausdrücke in SQL überflüssig, was die Konfiguration und Anpassung Ihrer Transformationen basierend auf neuen Daten erleichtert.

Weitere Informationen zur Verwendung von LLM-Funktionen finden Sie in der offiziellen Snowflake-Dokumentation zu Corex AISQL (einschließlich LLM-Funktionen) .

Warnung: Die Verwendung von LLM-Funktionen in Ihrer SQL kann sich erheblich auf die Transformationszeit auswirken. Beispielsweise kann das Anwenden einer Klassifizierungsfunktion auf 1 Million Datensätze die Verarbeitungszeit um mindestens eine halbe Stunde erhöhen.

Beispielanwendungsfälle für LLM-Funktionen in Datentransformationen:

  • AI_CLASSIFY Funktion zur Klassifizierung von Daten. Weitere Informationen finden Sie in der offiziellen Snowflake-Dokumentation zu AI_CLASSIFY .
  • ENTITY_SENTIMENT Funktion für die Stimmungsanalyse. Weitere Informationen finden Sie in der offiziellen Snowflake-Dokumentation zu ENTity_SENTIment .
Hinweis: Für den unwahrscheinlichen Fall, dass Sie Ihre fairen Nutzungsgrenzen für die LLM-Nutzung überschreiten, erzwingt UiPath® keine sofortigen Beschränkungen, sodass der Kundenbetrieb ohne Unterbrechung weiterlaufen kann. Alle Änderungen daran oder am kommerziellen Angebot werden im Voraus kommuniziert, um ein reibungsloses und nahtloses Erlebnis zu ermöglichen.

Klassifizierung

In diesem Abschnitt wird beschrieben, wie die Funktion AI_CLASSIFY in einem Process Mining-Kontext verwendet wird, einschließlich Beispielen.

Beispiel: Analyse eines Prozesses auf hoher Ebene

Prozesse können aus vielen verschiedenen Aktivitäten bestehen, von denen einige sehr ähnlich sind und Kategorien auf höherer Ebene zugeordnet werden können. Diese Art der Zuordnung reduziert die Anzahl der Prozessvarianten und ermöglicht eine Analyse auf einer abstrakteren Ebene.

In einem Purchase-to-Pay-Prozess können Genehmigungsereignisse beispielsweise auf verschiedenen Ebenen auftreten, z. B. „Bestellanforderung genehmigen“, „Bestellebene 1 genehmigen“, „Genehmigung durch den Manager“ usw. Jede dieser Aktivitäten kann einer generischen Aktivität vom Typ „Genehmigen“ zugeordnet werden.

Ein weiteres Beispiel sind „Ändern“-Ereignisse, wie „Preis ändern“, „Lieferdatum ändern“ oder „Lieferant ändern“. Wenn Sie diese einer einzelnen „Change“-Aktivität zuordnen, wird die Anzahl der Pfade im Prozess reduziert und die Prozessdiagrammansicht vereinfacht.

Der folgende Codeblock zeigt ein SQL-Beispiel zur Anwendung der Funktion AI_CLASSIFY zum Definieren des Prozesses auf hoher Ebene.
select
    {{ pm_utils.id() }} as "Event_ID",
    Purchase_order_item_event_log."Purchase_order_item_ID",
    Purchase_order_item_event_log."Event_end",
    coalesce(
        to_varchar(
            AI_CLASSIFY(
                Purchase_order_item_event_log."Activity",
                ['Create', 'Change', 'Approve', 'Complete', 'Cancel']):labels[0]), 
        'Not mapped') as "High_level_activity"
from {{ ref('Purchase_order_item_event_log') }} as Purchase_order_item_event_logselect
    {{ pm_utils.id() }} as "Event_ID",
    Purchase_order_item_event_log."Purchase_order_item_ID",
    Purchase_order_item_event_log."Event_end",
    coalesce(
        to_varchar(
            AI_CLASSIFY(
                Purchase_order_item_event_log."Activity",
                ['Create', 'Change', 'Approve', 'Complete', 'Cancel']):labels[0]), 
        'Not mapped') as "High_level_activity"
from {{ ref('Purchase_order_item_event_log') }} as Purchase_order_item_event_log

Geben Sie als erstes Argument dieser Funktion die ursprüngliche Aktivitätsspalte aus Ihrer Ereignistabelle an. Das zweite Argument sollte eine Liste von Aktivitäten auf hoher Ebene sein, denen die Aktivitäten zugeordnet werden. In diesem Beispiel werden die Aktivitäten auf „Erstellen“, „Ändern“, „Genehmigen“, „Abschließen“ oder „Abbrechen“ zugeordnet.

Schritte zum Implementieren der Prozessanalyse auf hoher Ebene:

  1. Erstellen Sie eine separate SQL-Datei in Ihrem Projekt, z. B. High_level_events.sql, und fügen Sie die Prozess-SQL-Logik auf hoher Ebene hinzu.
  2. Fügen Sie die High_level_events zum Datenmodell hinzu und konfigurieren Sie die Beziehung. In diesem Beispiel sind die Ereignisse auf hoher Ebene mit der Tabelle der Bestellelemente basierend auf Purchase_order_item_ID verbunden.
  3. Fügen Sie einen zusätzlichen Prozess mit den Bestellelementen als Hauptobjekt und den Ereignissen auf hoher Ebene als Ereignisse für diesen Prozess hinzu.
  4. Wenn Sie Ihre Änderungen auf Dashboards anwenden, können Sie das Prozessdiagramm und andere Dashboards basierend auf dem Prozess auf hoher Ebene erstellen.

Die folgende Abbildung zeigt ein Beispiel.



Hinweis:
  • Die Funktion AI_CLASSIFY gibt Werte im Format { “labels”: [“Create”] } zurück. :labels ruft den Wert ”Create” ab und die Funktion to_varchar() entfernt die umgebenden Anführungszeichen.
  • Wenn keine der Kategorien eine gute Übereinstimmung zu sein scheint, bleibt der Wert, der von der Funktion AI_CLASSIFY generiert wird, null. Um zu verhindern, dass diese Datensätze aus dem Dataset ausgeschlossen werden, ordnen Sie die null -Werte einer Konstanten zu (z. B. "Unmapped"), um anzugeben, dass diese Aktivitäten nicht klassifiziert wurden.

Beispiel: Klassifizieren von Kundenanforderungstypen

Kundenanforderungen sind ein typisches Beispiel für unstrukturierte Daten. Jeder Anforderungstyp erfordert eine andere nächste Aktion. Um die verschiedenen Anforderungstypen in Dashboards effektiver zu analysieren, können Sie sie mithilfe von LLMs kategorisieren – ohne dass ein manuelles Eingreifen durch den Benutzer erforderlich ist.

Der folgende Codeblock zeigt ein SQL-Beispiel, wie Anforderungen in „Feedback“, „Frage“ oder „Beschwerde“ kategorisiert werden können.

select
    Requests_input."Request_ID"
    Requests_input."Request",
    to_varchar(
        AI_CLASSIFY(
            Requests_input."Request",
            ['Feedback', 'Question', 'Complain']):labels[0])
    as "Request_classified"
from {{ ref('Requests_input') }} as Requests_inputselect
    Requests_input."Request_ID"
    Requests_input."Request",
    to_varchar(
        AI_CLASSIFY(
            Requests_input."Request",
            ['Feedback', 'Question', 'Complain']):labels[0])
    as "Request_classified"
from {{ ref('Requests_input') }} as Requests_input
Tipp: Das Klassifizieren von Werten für jeden Datensatz kann sich auf die Erfassungsleistung auswirken. Um die Verarbeitungszeit zu optimieren, sollten Sie die Tabellen filtern, auf die Sie die Funktion AI_CLASSIFY anwenden, damit nur die für Ihre Analyse relevanten Datensätze eingeschlossen werden.

Sie können die klassifizierten Anforderungstypen zur App und zu den Dashboards hinzufügen, um eine aggregiertere Analyse zu ermöglichen. Dies bietet einen besseren Einblick im Vergleich zur direkten Verwendung des ursprünglichen Anforderungstexts, der oft für jeden Datensatz eindeutig ist und zu einer großen Anzahl unterschiedlicher Werte führen kann.

Die folgende Abbildung zeigt ein Beispiel für eine Klassifizierung.



Stimmungsanalyse

In diesem Abschnitt wird beschrieben, wie die Funktionen ENTITY_SENTIMENT und SENTIMENT in einem Process Mining-Kontext verwendet werden, einschließlich Beispielen.

Sie können eine Stimmungsanalyse auf unstrukturierten Text anwenden, um zu klassifizieren, ob der Inhalt positiv oder negativ ist. Diese Art von Analyse kann z. B. verwendet werden für:

  • Analysieren Sie Feedback, um Produkte oder Dienste zu verbessern.
  • Verfolgen Sie Stimmungstrends im Zeitverlauf zur Entscheidungsfindung nach.

Es stehen zwei Arten von Stimmungsanalysefunktionen zur Verfügung.

  • Verwenden Sie die Funktion ENTITY_SENTIMENT für kategorische Ergebnisse (z. B. „Positiv“, „Negativ“, „Neutral“, „Gemischt“ oder „Unbekannt“). Standardmäßig wird die Eingabe auf die allgemeine Stimmung des Texts analysiert. Die Ausgabe wird im folgenden Format zurückgegeben:
    { "categories": [ { "name": "overall", "sentiment": "positiv" } ] }
    
  • Verwenden Sie die Funktion SENTIMENT für numerische Ergebnisse (z. B. eine Stimmungsauswertung auf einer Skala). Die Funktion SENTIMENT gibt einen Wert zwischen -1 und 1 zurück, was den Grad der Negativität oder Positivität im Eingabetext angibt. Sie können diese numerischen Stimmungswerte in Dashboard-Metriken verwenden, um die Stimmung über verschiedene Aggregationsebenen hinweg zu analysieren.

Weitere Informationen finden Sie in der offiziellen Snowflake-Dokumentation zu ENTity_SENTIment .

Beispiel: Benutzerfeedback zur Stimmungsanalyse

Der folgende Codeblock zeigt ein SQL-Beispiel zur Verwendung der Stimmungsanalyse für Benutzerfeedback.

select
    Feedback_input."Feedback_ID",
    Feedback_input."Feedback",
    to_varchar(
        SNOWFLAKE.CORTEX.ENTITY_SENTIMENT(
            Feedback_input."Feedback"):categories[0]:sentiment)
    as "Sentiment_category",
    SNOWFLAKE.CORTEX.SENTIMENT(
        Feedback_input."Feedback")
    as "Sentiment_value"
from {{ ref('Feedback_input') }} as Feedback_inputselect
    Feedback_input."Feedback_ID",
    Feedback_input."Feedback",
    to_varchar(
        SNOWFLAKE.CORTEX.ENTITY_SENTIMENT(
            Feedback_input."Feedback"):categories[0]:sentiment)
    as "Sentiment_category",
    SNOWFLAKE.CORTEX.SENTIMENT(
        Feedback_input."Feedback")
    as "Sentiment_value"
from {{ ref('Feedback_input') }} as Feedback_input
Standardmäßig wird nur die allgemeine Stimmung bestimmt. Wenn Sie bestimmte Themen angeben möchten, für die Sie die Stimmung abrufen möchten, z. B. „Preis“ oder „Unterstützung“, können Sie die Kategorien als zweites Argument zur Funktion ENTITY_SENTIMENT hinzufügen. Die Ausgabe ist ein Stimmungswert für jede der angegebenen Kategorien.
Um die richtigen Werte zu extrahieren, müssen Sie die SQL-Logik anpassen. Anstatt auf category[0] zu verweisen (die nur die erste Kategorie auswählt), ändern Sie die Abfrage, um die Stimmungswerte für die spezifischen Kategorien von Interesse auszuwählen.

Die folgende Abbildung zeigt Beispielergebnisse einer Benutzerfeedback-Stimmungsanalyse.



War diese Seite hilfreich?

Hilfe erhalten
RPA lernen – Automatisierungskurse
UiPath Community-Forum
Uipath Logo