Zum Inhalt

KI: JSON-Inhalt abfragen

Der Service Task „KI: JSON-Inhalt abfragen" beantwortet gezielte Fragen zu einem JSON-Objekt und gibt die Antworten als strukturiertes Ergebnisobjekt zurück. Er funktioniert identisch zum Task „KI: Markdown-Inhalt abfragen", akzeptiert jedoch JSON-Daten als Eingabe.

Damit lassen sich komplexe JSON-Strukturen — etwa Ergebnisse aus vorherigen Prozessschritten, API-Antworten oder strukturierte Datensätze — gezielt auswerten, ohne aufwendige JSONata-Ausdrücke schreiben zu müssen.


Input-Parameter

Die folgenden Felder werden als Eingabe für den Task benötigt:

{
  "content": {
    "invoice": {
      "number": "RE-2024-001",
      "date": "2024-03-15"
    },
    "customer": {
      "name": "Müller GmbH",
      "city": "Stuttgart"
    },
    "items": [
      {"article": "Widget A", "quantity": 100, "price": 25.00},
      {"article": "Widget B", "quantity": 50, "price": 18.50}
    ]
  },
  "questions": [
    {
      "question": "Wie lautet die Rechnungsnummer?",
      "attribute": "invoiceNumber"
    },
    {
      "question": "Wie heißt der Kunde?",
      "attribute": "customerName"
    },
    {
      "question": "Wie hoch ist der Gesamtbetrag aller Positionen?",
      "attribute": "totalAmount",
      "format": "Zahl mit 2 Dezimalstellen"
    }
  ],
  "returnNotFoundFields": false,
  "maxContentLength": 50000
}

Erläuterung:

  • content: Das JSON-Objekt, das analysiert werden soll. Es kann als Objekt oder als bereits serialisierter JSON-String übergeben werden.
  • questions: Ein Array von Fragen. Jede Frage enthält:
    • question: Die Frage in natürlicher Sprache.
    • attribute: Der Schlüsselname im Ergebnisobjekt.
    • format (optional): Ein Hinweis an die KI, in welchem Format die Antwort erwartet wird.
    • validation (optional): Ein regulärer Ausdruck (Regex) zur automatischen Prüfung des extrahierten Werts.
  • returnNotFoundFields (optional, Standard: false): Wenn true, enthält das Ergebnis ein _notFound-Array mit Attributnamen ohne Antwort.
  • maxContentLength (optional, Standard: 50000): Maximale Zeichenanzahl des serialisierten Inhalts.

Output

Der Task gibt ein JSON-Objekt zurück, dessen Schlüssel den Attributnamen der Fragen entsprechen:

{
  "invoiceNumber": "RE-2024-001",
  "customerName": "Müller GmbH",
  "totalAmount": 3425.00
}

Die KI kann dabei auch Berechnungen durchführen (z. B. Summen bilden) oder Informationen aus verschachtelten Strukturen zusammenführen.


JSONata-Beispiele

{
  "content": api_response.body,
  "questions": [
    {
      "question": "Wie lautet der Bestellstatus?",
      "attribute": "orderStatus"
    },
    {
      "question": "Wann wurde die Bestellung aufgegeben?",
      "attribute": "orderDate",
      "format": "YYYY-MM-DD"
    }
  ]
}

Hinweise

  • content kann als JSON-Objekt oder als JSON-String übergeben werden — beides wird akzeptiert.
  • Bei sehr großen JSON-Strukturen wird der Inhalt intern serialisiert. Die Länge des serialisierten Strings darf den Wert von maxContentLength nicht überschreiten.
  • Die KI analysiert die gesamte JSON-Struktur einschließlich verschachtelter Objekte und Arrays.
  • Alle weiteren Regeln (Fragen, Format, Validation, Retry-Logik) sind identisch zum Task „KI: Markdown-Inhalt abfragen".

Tipp

Dieser Task eignet sich besonders gut, wenn die Ergebnisse eines vorherigen Prozessschritts (z. B. einer HTTP-Anfrage oder einer anderen Extraktion) per natürlicher Sprache abgefragt werden sollen — ohne komplexe JSONata-Ausdrücke. Für Markdown- oder OCR-Texte kann stattdessen der Task „KI: Markdown-Inhalt abfragen" verwendet werden.