Beispiel für Bewertungsmetriken: Klassifizierung

Fortgeschritten

Dies ist ein Engineering, AI-Bereich Automatisierungsworkflow mit 13 Nodes. Hauptsächlich werden Set, Webhook, Evaluation, Agent, RespondToWebhook und andere Nodes verwendet, kombiniert mit KI-Technologie für intelligente Automatisierung. Beispiel für Bewertungsmetriken: Klassifizierung

Voraussetzungen
  • HTTP Webhook-Endpunkt (wird von n8n automatisch generiert)
  • OpenAI API Key
Workflow-Vorschau
Visualisierung der Node-Verbindungen, mit Zoom und Pan
Workflow exportieren
Kopieren Sie die folgende JSON-Konfiguration und importieren Sie sie in n8n
{
  "meta": {
    "instanceId": "bf40384a063e00f3b983f4f9bada22b57a8231a04c0fb48d363e26d7b0f2b7e7",
    "templateCredsSetupCompleted": true
  },
  "nodes": [
    {
      "id": "88b3ca67-d7d6-4e6d-9529-d81377315c05",
      "name": "Notizzettel1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        180,
        -20
      ],
      "parameters": {
        "color": 7,
        "width": 180,
        "height": 260,
        "content": "Check whether the category/priority matches the expected one in the dataset"
      },
      "typeVersion": 1
    },
    {
      "id": "25d9ced2-d91c-486a-bbc9-481258c716e5",
      "name": "Notizzettel3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1200,
        40
      ],
      "parameters": {
        "width": 200,
        "height": 500,
        "content": "## How it works\nThis template shows how to calculate a workflow evaluation metric: **whether a category matches the expected one**.\n\nThe workflow takes support tickets and generates a category and priority, which is then compared with the correct answers in the dataset.\n\nYou can find more information on workflow evaluation [here](https://docs.n8n.io/advanced-ai/evaluations/overview), and other metric examples [here](https://docs.n8n.io/advanced-ai/evaluations/metric-based-evaluations/#2-calculate-metrics)."
      },
      "typeVersion": 1
    },
    {
      "id": "c1f452ac-31e6-4a8c-9558-92ba83a34464",
      "name": "Notizzettel4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -960,
        280
      ],
      "parameters": {
        "color": 7,
        "width": 220,
        "height": 220,
        "content": "Read in [this test dataset](https://docs.google.com/spreadsheets/d/1uuPS5cHtSNZ6HNLOi75A2m8nVWZrdBZ_Ivf58osDAS8/edit?gid=294497137#gid=294497137) of support tickets"
      },
      "typeVersion": 1
    },
    {
      "id": "79375ec3-713a-4d07-8701-2c8d3392d6c5",
      "name": "KI-Agent",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        -420,
        200
      ],
      "parameters": {
        "text": "=Subject: {{ $json.subject }}\nBody: {{ $json.body }}",
        "options": {
          "systemMessage": "=You are a support triage assistant.\nGiven the subject and body of a customer support email, return the category and priority based on the following classification:\n\n### Categories:\nBug Report\nFeature Request\nUsage Question\nAccount/Billing\nOutage/Emergency\nIntegration Issue\nFeedback/Compliment\nOther/Uncategorized\n\n### Priorities:\nLow, Medium, High, Urgent\n\nReturn your output as JSON in this format:\n{\n  \"category\": \"<category>\",\n  \"priority\": \"<priority>\"\n}\n\n### Example \nExample input:\nSubject: OAuth not working with Salesforce node\nBody: I'm trying to connect to Salesforce using OAuth2, but I keep getting a token error. I followed the docs exactly.\n\nExpected output:\n{\n  \"category\": \"Integration Issue\",\n  \"priority\": \"High\"\n}",
          "returnIntermediateSteps": true
        },
        "promptType": "define",
        "hasOutputParser": true
      },
      "typeVersion": 1.9
    },
    {
      "id": "93932809-9b1e-47a2-a50d-0b0978d0b881",
      "name": "OpenAI Chat Model",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        -440,
        420
      ],
      "parameters": {
        "model": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-4o-mini"
        },
        "options": {}
      },
      "credentials": {
        "openAiApi": {
          "id": "Ag9qPAsY7lpIGkvC",
          "name": "JPs n8n openAI key"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "5d8383f2-e0ea-4fd9-bdcb-0f04e1872896",
      "name": "Structured Output Parser",
      "type": "@n8n/n8n-nodes-langchain.outputParserStructured",
      "position": [
        -240,
        420
      ],
      "parameters": {
        "jsonSchemaExample": "{\n  \"category\": \"<category>\",\n  \"priority\": \"<priority>\"\n}"
      },
      "typeVersion": 1.2
    },
    {
      "id": "e0d259ea-a9b7-45db-a4fb-fa2a2e5769b3",
      "name": "Kategorisierung prüfen",
      "type": "n8n-nodes-base.set",
      "position": [
        220,
        80
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "58c48e6f-4a12-4bf6-94ae-705244273a84",
              "name": "category_match",
              "type": "boolean",
              "value": "={{ $json.output.category == $('When fetching a dataset row').item.json.expected_category }}"
            },
            {
              "id": "23959e14-6026-4bd5-b28c-12ab529f21de",
              "name": "priority_match",
              "type": "boolean",
              "value": "={{ $json.output.priority == $('When fetching a dataset row').item.json.expected_priority }}"
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "1ffc9841-a146-4127-a957-69cb73f7e6f8",
      "name": "Match webhook Format",
      "type": "n8n-nodes-base.set",
      "position": [
        -680,
        340
      ],
      "parameters": {
        "mode": "raw",
        "options": {},
        "jsonOutput": "=  {\n    \"headers\": {\n    },\n    \"params\": {},\n    \"query\": {\n      \"subject\": {{ $json.subject.toJsonString() }},\n      \"body\": {{ $json.body.toJsonString() }}\n    },\n    \"body\": {},\n    \"executionMode\": \"test\"\n  }"
      },
      "typeVersion": 3.4
    },
    {
      "id": "7505b06e-0179-4e8a-a830-8631be7a9ca9",
      "name": "Webhook",
      "type": "n8n-nodes-base.webhook",
      "position": [
        -900,
        40
      ],
      "webhookId": "fbe73ea5-bb42-4e3b-9eea-1b6535248eef",
      "parameters": {
        "path": "fbe73ea5-bb42-4e3b-9eea-1b6535248eef",
        "options": {}
      },
      "typeVersion": 2
    },
    {
      "id": "5090592c-b883-4644-a8d5-74ada2c4863e",
      "name": "When fetching a dataset row",
      "type": "n8n-nodes-base.evaluationTrigger",
      "position": [
        -900,
        340
      ],
      "parameters": {
        "sheetName": {
          "__rl": true,
          "mode": "url",
          "value": "https://docs.google.com/spreadsheets/d/1uuPS5cHtSNZ6HNLOi75A2m8nVWZrdBZ_Ivf58osDAS8/edit?gid=294497137#gid=294497137"
        },
        "documentId": {
          "__rl": true,
          "mode": "url",
          "value": "https://docs.google.com/spreadsheets/d/1uuPS5cHtSNZ6HNLOi75A2m8nVWZrdBZ_Ivf58osDAS8/edit?gid=294497137#gid=294497137"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "id": "bpr2LoSELMlxpwnN",
          "name": "Google Sheets account David"
        }
      },
      "typeVersion": 4.6
    },
    {
      "id": "30ecf24a-2012-4751-a7fd-712fa498ac46",
      "name": "Respond to Webhook",
      "type": "n8n-nodes-base.respondToWebhook",
      "position": [
        220,
        320
      ],
      "parameters": {
        "options": {}
      },
      "typeVersion": 1.3
    },
    {
      "id": "a6293ef9-fd50-439e-a906-c9e03e97d0bc",
      "name": "Evaluating?",
      "type": "n8n-nodes-base.evaluation",
      "position": [
        -60,
        200
      ],
      "parameters": {
        "operation": "checkIfEvaluating"
      },
      "typeVersion": 4.6
    },
    {
      "id": "db1b0fac-0268-44c3-87ce-af552bb6c42d",
      "name": "Metriken setzen",
      "type": "n8n-nodes-base.evaluation",
      "position": [
        440,
        80
      ],
      "parameters": {
        "metrics": {
          "assignments": [
            {
              "id": "0e507b06-e6d5-4ace-aa22-f06c6db5b883",
              "name": "category_match",
              "type": "number",
              "value": "={{ $json.category_match.toNumber() }}"
            },
            {
              "id": "44918a17-d8b9-41e1-b336-3ee67b86b528",
              "name": "priority_match",
              "type": "number",
              "value": "={{ $json.priority_match.toNumber() }}"
            }
          ]
        },
        "operation": "setMetrics"
      },
      "typeVersion": 4.6
    }
  ],
  "pinData": {},
  "connections": {
    "7505b06e-0179-4e8a-a830-8631be7a9ca9": {
      "main": [
        [
          {
            "node": "79375ec3-713a-4d07-8701-2c8d3392d6c5",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "79375ec3-713a-4d07-8701-2c8d3392d6c5": {
      "main": [
        [
          {
            "node": "a6293ef9-fd50-439e-a906-c9e03e97d0bc",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "a6293ef9-fd50-439e-a906-c9e03e97d0bc": {
      "main": [
        [
          {
            "node": "e0d259ea-a9b7-45db-a4fb-fa2a2e5769b3",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "30ecf24a-2012-4751-a7fd-712fa498ac46",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "93932809-9b1e-47a2-a50d-0b0978d0b881": {
      "ai_languageModel": [
        [
          {
            "node": "79375ec3-713a-4d07-8701-2c8d3392d6c5",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "e0d259ea-a9b7-45db-a4fb-fa2a2e5769b3": {
      "main": [
        [
          {
            "node": "db1b0fac-0268-44c3-87ce-af552bb6c42d",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "1ffc9841-a146-4127-a957-69cb73f7e6f8": {
      "main": [
        [
          {
            "node": "79375ec3-713a-4d07-8701-2c8d3392d6c5",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "5d8383f2-e0ea-4fd9-bdcb-0f04e1872896": {
      "ai_outputParser": [
        [
          {
            "node": "79375ec3-713a-4d07-8701-2c8d3392d6c5",
            "type": "ai_outputParser",
            "index": 0
          }
        ]
      ]
    },
    "5090592c-b883-4644-a8d5-74ada2c4863e": {
      "main": [
        [
          {
            "node": "1ffc9841-a146-4127-a957-69cb73f7e6f8",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
Häufig gestellte Fragen

Wie verwende ich diesen Workflow?

Kopieren Sie den obigen JSON-Code, erstellen Sie einen neuen Workflow in Ihrer n8n-Instanz und wählen Sie "Aus JSON importieren". Fügen Sie die Konfiguration ein und passen Sie die Anmeldedaten nach Bedarf an.

Für welche Szenarien ist dieser Workflow geeignet?

Fortgeschritten - Engineering, Künstliche Intelligenz

Ist es kostenpflichtig?

Dieser Workflow ist völlig kostenlos. Beachten Sie jedoch, dass Drittanbieterdienste (wie OpenAI API), die im Workflow verwendet werden, möglicherweise kostenpflichtig sind.

Workflow-Informationen
Schwierigkeitsgrad
Fortgeschritten
Anzahl der Nodes13
Kategorie2
Node-Typen9
Schwierigkeitsbeschreibung

Für erfahrene Benutzer, mittelkomplexe Workflows mit 6-15 Nodes

Externe Links
Auf n8n.io ansehen

Diesen Workflow teilen

Kategorien

Kategorien: 34