Wenn Sie Blöcke verbinden, ist das Verständnis der Datenstruktur verschiedener Block-Ausgaben wichtig, da die Ausgabedatenstruktur des Quellblocks bestimmt, welche Werte im Zielblock verfügbar sind. Jeder Blocktyp erzeugt eine spezifische Ausgabestruktur, auf die Sie in nachgelagerten Blöcken verweisen können.
Das Verständnis dieser Datenstrukturen ist wesentlich für die effektive Nutzung von Verbindungs-Tags und den Zugriff auf die richtigen Daten in Ihren Workflows.
Block-Ausgabestrukturen
Verschiedene Blocktypen erzeugen unterschiedliche Ausgabestrukturen. Hier ist, was Sie von jedem Blocktyp erwarten können:
{
"content": "The generated text response",
"model": "gpt-4o",
"tokens": {
"prompt": 120,
"completion": 85,
"total": 205
},
"toolCalls": [...],
"cost": [...],
"usage": [...]
}Ausgabefelder des Agent-Blocks
- content: Die vom Agenten generierte Haupttextantwort
- model: Das verwendete KI-Modell (z.B. "gpt-4o", "claude-3-opus")
- tokens: Token-Nutzungsstatistiken
- prompt: Anzahl der Token in der Eingabeaufforderung
- completion: Anzahl der Token in der Vervollständigung
- total: Insgesamt verwendete Token
- toolCalls: Array von Werkzeugaufrufen des Agenten (falls vorhanden)
- cost: Array von Kostenobjekten für jeden Werkzeugaufruf (falls vorhanden)
- usage: Token-Nutzungsstatistiken für die gesamte Antwort
Benutzerdefinierte Ausgabestrukturen
Einige Blöcke können basierend auf ihrer Konfiguration benutzerdefinierte Ausgabestrukturen erzeugen:
-
Agent-Blöcke mit Antwortformat: Bei Verwendung eines Antwortformats in einem Agent-Block entspricht die Ausgabestruktur dem definierten Schema anstelle der Standardstruktur.
-
Function-Blöcke: Das Feld
resultkann jede Datenstruktur enthalten, die von Ihrem Funktionscode zurückgegeben wird. -
API-Blöcke: Das Feld
dataenthält die Rückgabe der API, die jede gültige JSON-Struktur sein kann.
Überprüfen Sie während der Entwicklung immer die tatsächliche Ausgabestruktur Ihrer Blöcke, um sicherzustellen, dass Sie in Ihren Verbindungen auf die richtigen Felder verweisen.
Verschachtelte Datenstrukturen
Viele Block-Ausgaben enthalten verschachtelte Datenstrukturen. Du kannst auf diese mit Punktnotation in Verbindungs-Tags zugreifen:
<blockName.path.to.nested.data>Zum Beispiel:
<agent1.tokens.total>- Greife auf die Gesamtzahl der Tokens aus einem Agent-Block zu<api1.data.results[0].id>- Greife auf die ID des ersten Ergebnisses einer API-Antwort zu<function1.result.calculations.total>- Greife auf ein verschachteltes Feld im Ergebnis eines Funktionsblocks zu