Ergebnis

Die Ergebnisse werden im Verzeichnis "dataflow/results" unter instantiation, execution und dataflow gespeichert und in Unterverzeichnissen basierend auf dem Ergebnis weiter aufbewahrt.

Die Ergebnisse werden gespeichert, indem die Aufgabeninformationen anhand eines Schemas (instantiation_schema oder execution_schema.json im Verzeichnis "dataflow/schema") validiert werden und das Zielverzeichnis basierend auf dem Aufgabentyp und seinem Evaluierungsstatus bestimmt wird, woraufhin das Ergebnis am entsprechenden Speicherort abgelegt wird. Die Struktur der Speicherung und die spezifische Bedeutung des Schemas sind wie folgt.

Gesamtergebnisstruktur

Die Struktur der Ergebnisse der Aufgabe ist wie folgt

UFO/
├── dataflow/                       # Root folder for dataflow
│   └── results/                    # Directory for storing task processing results
│       ├── saved_document/         # Directory for final document results
│       ├── instantiation/          # Directory for instantiation results
│       │   ├── instantiation_pass/ # Tasks successfully instantiated
│       │   └── instantiation_fail/ # Tasks that failed instantiation
│       ├── execution/              # Directory for execution results
│       │   ├── execution_pass/     # Tasks successfully executed
│       │   ├── execution_fail/     # Tasks that failed execution
│       │   └── execution_unsure/   # Tasks with uncertain execution results
│       ├── dataflow/               # Directory for dataflow results
│       │   ├── execution_pass/     # Tasks successfully executed
│       │   ├── execution_fail/     # Tasks that failed execution
│       │   └── execution_unsure/   # Tasks with uncertain execution results
│       └── ...
└── ...
  1. Allgemeine Beschreibung: Diese Verzeichnisstruktur organisiert die Ergebnisse der Aufgabenverarbeitung in spezifische Kategorien, einschließlich der Ergebnisse von Instanziierung, Ausführung und Datenfluss.
  2. Instanziierung

  3. Das Verzeichnis instantiation enthält Unterordner für Aufgaben, die erfolgreich instanziiert wurden (instantiation_pass) und für diejenigen, die während der Instanziierung fehlgeschlagen sind (instantiation_fail).

  4. Dies entspricht dem Ergebnis der instantiation_evaluation mit dem Feldnamen "judge".
  5. Ausführung

  6. Ergebnisse der Ausführung von Aufgaben werden unter dem Verzeichnis execution gespeichert und in erfolgreiche Aufgaben (execution_pass), fehlgeschlagene Aufgaben (execution_fail) und Aufgaben mit unsicheren Ergebnissen (execution_unsure) unterteilt.

  7. Dies entspricht dem Evaluierungsergebnis von execute_flow mit dem Feldnamen "complete".
  8. Datenfluss-Ergebnisse

  9. Das Verzeichnis dataflow speichert ebenfalls die Ergebnisse von Aufgaben basierend auf dem Ausführungsergebnis: execution_pass für Erfolg, execution_fail für Fehler oder execution_unsure für Unsicherheit.

  10. Dies entspricht dem Evaluierungsergebnis von execute_flow mit dem Feldnamen "complete".
  11. Gespeicherte Dokumente: Instanziierte Ergebnisse werden separat im Verzeichnis saved_document gespeichert, um den Zugriff und die Referenzierung zu erleichtern.

Gesamtbeschreibung

Die Ergebnisdaten umfassen unique_id, app, original, execution_result, instantiation_result, time_cost.

Die Ergebnisdaten umfassen die folgenden Felder

Feld Beschreibung
unique_id Eine eindeutige Kennung für die Aufgabe.
app Der Name der Anwendung, die die Aufgabe verarbeitet.
original Enthält Details zur ursprünglichen Aufgabe, einschließlich
original.original_task Eine Beschreibung der ursprünglichen Aufgabe.
original.original_steps Eine Liste der Schritte, die an der ursprünglichen Aufgabe beteiligt sind.
execution_result Speichert das Ergebnis der Aufgabenausführung, einschließlich eventuell aufgetretener Fehler und der Auswertung der Ausführung.
instantiation_result Liefert Details zum Instanziierungsprozess, einschließlich
instantiation_result.choose_template Das Ergebnis der Vorlagenauswahl und damit verbundene Fehler.
instantiation_result.prefill Informationen zur vorausgefüllten Aufgabe, einschließlich der instanziierten Anfrage und des Plans.
instantiation_result.instantiation_evaluation Evaluierungsergebnisse der instanziierten Aufgabe, einschließlich Urteile und Feedback.
time_cost Verfolgt die Zeit, die für verschiedene Phasen des Prozesses benötigt wurde, wie z. B. Vorlagenauswahl, Vorausfüllen und Evaluierung.

Schema für Instanzergebnisse

Das Instanziierungsschema in "dataflow/schema/instantiation_schema.json" definiert die Struktur eines JSON-Objekts, das zur Validierung der Ergebnisse der Instanziierung von Aufgaben verwendet wird.


Tabellarische Beschreibung des Schemas

Feld Beschreibung
unique_id Eine eindeutige Kennung für die Aufgabe.
app Der Name der Anwendung, die die Aufgabe verarbeitet.
original Enthält Details zur ursprünglichen Aufgabe, einschließlich
original.original_task Eine Beschreibung der ursprünglichen Aufgabe.
original.original_steps Eine Liste der Schritte, die an der ursprünglichen Aufgabe beteiligt sind.
execution_result Speichert das Ergebnis der Aufgabenausführung, einschließlich eventuell aufgetretener Fehler und der Auswertung der Ausführung.
execution_result.result Zeigt das Ergebnis der Ausführung an (oder null, falls nicht zutreffend).
execution_result.error Gibt Details zu Fehlern an, die während der Aufgabenausführung aufgetreten sind.
instantiation_result Liefert Details zum Instanziierungsprozess, einschließlich
instantiation_result.choose_template Das Ergebnis der Vorlagenauswahl und damit verbundene Fehler.
instantiation_result.prefill Informationen zu vorausgefüllten Aufgaben, einschließlich der instanziierten Anfrage und des Plans.
instantiation_result.prefill.result Enthält Details zu instanziierten Anfragen und Plänen.
instantiation_result.prefill.result.instantiated_request Die instanziierte Aufgabenanfrage.
instantiation_result.prefill.result.instantiated_plan Enthält Details zu den instanziierten Schritten.
instantiation_result.prefill.result.instantiated_plan.step Die Schrittsequenznummer.
instantiation_result.prefill.result.instantiated_plan.subtask Die Beschreibung der Unteraufgabe.
instantiation_result.prefill.result.instantiated_plan.control_label Steuerungslabel für den Schritt (oder null, falls nicht zutreffend).
instantiation_result.prefill.result.instantiated_plan.control_text Kontextbezogener Text für den Schritt.
instantiation_result.prefill.result.instantiated_plan.function Die in diesem Schritt ausgeführte Funktion.
instantiation_result.prefill.result.instantiated_plan.args Für die Funktion erforderliche Parameter.
instantiation_result.prefill.error Fehler, falls vorhanden, während des Vorausfüllprozesses.
instantiation_result.instantiation_evaluation Evaluierungsergebnisse der instanziierten Aufgabe, einschließlich Urteile und Feedback.
instantiation_result.instantiation_evaluation.result Enthält detaillierte Evaluierungsergebnisse.
instantiation_result.instantiation_evaluation.result.judge Zeigt an, ob die Evaluierung erfolgreich war.
instantiation_result.instantiation_evaluation.result.thought Feedback oder Beobachtungen des Evaluators.
instantiation_result.instantiation_evaluation.result.request_type Klassifizierung des Anfragetyps.
instantiation_result.instantiation_evaluation.error Fehler, falls vorhanden, während der Evaluierung.
time_cost Verfolgt die Zeit, die für verschiedene Phasen des Prozesses benötigt wurde, wie z. B. Vorlagenauswahl, Vorausfüllen und Evaluierung.
time_cost.choose_template Zeitaufwand für die Vorlagenauswahlphase.
time_cost.prefill Zeitaufwand für die Vorausfüllphase.
time_cost.instantiation_evaluation Zeitaufwand für die Evaluierungsphase.
time_cost.total Gesamtzeitaufwand für die Aufgabe.

Beispieldaten

{
    "unique_id": "5",
    "app": "word",
    "original": {
        "original_task": "Turning lines of text into a bulleted list in Word",
        "original_steps": [
            "1. Place the cursor at the beginning of the line of text you want to turn into a bulleted list",
            "2. Click the Bullets button in the Paragraph group on the Home tab and choose a bullet style"
        ]
    },
    "execution_result": {
        "result": null,
        "error": null
    },
    "instantiation_result": {
        "choose_template": {
            "result": "dataflow\\results\\saved_document\\bulleted.docx",
            "error": null
        },
        "prefill": {
            "result": {
                "instantiated_request": "Turn the line of text 'text to edit' into a bulleted list in Word.",
                "instantiated_plan": [
                    {
                        "Step": 1,
                        "Subtask": "Place the cursor at the beginning of the text 'text to edit'",
                        "ControlLabel": null,
                        "ControlText": "",
                        "Function": "select_text",
                        "Args": {
                            "text": "text to edit"
                        }
                    },
                    {
                        "Step": 2,
                        "Subtask": "Click the Bullets button in the Paragraph group on the Home tab",
                        "ControlLabel": null,
                        "ControlText": "Bullets",
                        "Function": "click_input",
                        "Args": {
                            "button": "left",
                            "double": false
                        }
                    }
                ]
            },
            "error": null
        },
        "instantiation_evaluation": {
            "result": {
                "judge": true,
                "thought": "The task is specific and involves a basic function in Word that can be executed locally without any external dependencies.",
                "request_type": "None"
            },
            "error": null
        }
    },
    "time_cost": {
        "choose_template": 0.012,
        "prefill": 15.649,
        "instantiation_evaluation": 2.469,
        "execute": null,
        "execute_eval": null,
        "total": 18.130
    }
}

Schema für Ausführungsergebnisse

Das Schema für Ausführungsergebnisse in "dataflow/schema/execution_schema.json" definiert die Struktur eines JSON-Objekts, das zur Validierung der Ergebnisse von Aufgaben execution oder dataflow verwendet wird.

Das Schema für Ausführungsergebnisse liefert umfassendes Feedback zur Ausführung und betont wichtige Erfolgsmetriken (reason, sub_scores, complete), die im Feld result von execution_result aufgezeichnet werden.

Wichtige Verbesserungen umfassen

  1. Jeder Schritt im instantiated_plan wurde erweitert um

  2. Success: Gibt an, ob der Schritt erfolgreich ausgeführt wurde (keine Fehler).

  3. MatchedControlText: Zeichnet den Namen des zuletzt abgeglichenen Steuerelements auf.
  4. ControlLabel: Wird aktualisiert, um das endgültig ausgewählte Steuerelement widerzuspiegeln.
  5. Die Felder execute, execute_eval und total im Feld time_cost wurden aktualisiert.

Tabellarische Beschreibung des Schemas

Feld Beschreibung
unique_id Eine eindeutige Kennung für die Aufgabe.
app Der Name der Anwendung, die die Aufgabe verarbeitet.
original Enthält Details zur ursprünglichen Aufgabe, einschließlich
original.original_task Eine Beschreibung der ursprünglichen Aufgabe.
original.original_steps Eine Liste der Schritte, die an der ursprünglichen Aufgabe beteiligt sind.
execution_result Stellt das Ergebnis der Aufgabenausführung dar, einschließlich eventuell aufgetretener Fehler und der Auswertung der Ausführung.
execution_result.result Zeigt das Ergebnis der Aufgabenausführung an.
execution_result.error Zeigt eventuelle Fehler an, die während der Ausführung aufgetreten sind.
instantiation_result Liefert Details zur Aufgabeneinrichtung, einschließlich
instantiation_result.choose_template.result Das Ergebnis der Vorlagenauswahl.
instantiation_result.choose_template.error Fehler, falls vorhanden, während der Vorlagenauswahl.
instantiation_result.prefill.result.instantiated_request Die instanziierte Aufgabenanfrage.
instantiation_result.prefill.result.instantiated_plan.Step Die Schrittsequenznummer.
instantiation_result.prefill.result.instantiated_plan.Subtask Die Beschreibung der Unteraufgabe.
instantiation_result.prefill.result.instantiated_plan.ControlLabel Steuerungslabel für den Schritt.
instantiation_result.prefill.result.instantiated_plan.ControlText Kontextbezogener Text für den Schritt.
instantiation_result.prefill.result.instantiated_plan.Function Die in diesem Schritt ausgeführte Funktion.
instantiation_result.prefill.result.instantiated_plan.Args Für die Funktion erforderliche Parameter.
instantiation_result.prefill.result.instantiated_plan.Success Gibt an, ob der Schritt erfolgreich und ohne Fehler ausgeführt wurde.
instantiation_result.prefill.result.instantiated_plan.MatchedControlText Der endgültig abgeglichene Kontrolltext im Ausführungsfluss.
instantiation_result.prefill.error Fehler, falls vorhanden, während des Vorausfüllprozesses.
instantiation_result.instantiation_evaluation.result.judge Zeigt an, ob die Evaluierung erfolgreich war.
instantiation_result.instantiation_evaluation.result.thought Feedback oder Beobachtungen des Evaluators.
instantiation_result.instantiation_evaluation.result.request_type Klassifizierung des Anfragetyps.
instantiation_result.instantiation_evaluation.error Fehler, falls vorhanden, während der Evaluierung.
time_cost Verfolgt die Zeit, die für verschiedene Phasen des Prozesses benötigt wurde, einschließlich
time_cost.choose_template Zeitaufwand für die Vorlagenauswahlphase.
time_cost.prefill Zeitaufwand für die Vorausfüllphase.
time_cost.instantiation_evaluation Zeitaufwand für die Evaluierungsphase.
time_cost.execute Zeitaufwand für die Ausführungsphase.
time_cost.execute_eval Zeitaufwand für die Auswertungsphase der Ausführung.
time_cost.total Gesamtzeitaufwand für die Aufgabe.

Beispieldaten

{
    "unique_id": "5",
    "app": "word",
    "original": {
        "original_task": "Turning lines of text into a bulleted list in Word",
        "original_steps": [
            "1. Place the cursor at the beginning of the line of text you want to turn into a bulleted list",
            "2. Click the Bullets button in the Paragraph group on the Home tab and choose a bullet style"
        ]
    },
    "execution_result": {
        "result": {
            "reason": "The agent successfully selected the text 'text to edit' and then clicked on the 'Bullets' button in the Word application. The final screenshot shows that the text 'text to edit' has been converted into a bulleted list.",
            "sub_scores": {
                "text selection": "yes",
                "bulleted list conversion": "yes"
            },
            "complete": "yes"
        },
        "error": null
    },
    "instantiation_result": {
        "choose_template": {
            "result": "dataflow\\results\\saved_document\\bulleted.docx",
            "error": null
        },
        "prefill": {
            "result": {
                "instantiated_request": "Turn the line of text 'text to edit' into a bulleted list in Word.",
                "instantiated_plan": [
                    {
                        "Step": 1,
                        "Subtask": "Place the cursor at the beginning of the text 'text to edit'",
                        "ControlLabel": null,
                        "ControlText": "",
                        "Function": "select_text",
                        "Args": {
                            "text": "text to edit"
                        },
                        "Success": true,
                        "MatchedControlText": null
                    },
                    {
                        "Step": 2,
                        "Subtask": "Click the Bullets button in the Paragraph group on the Home tab",
                        "ControlLabel": "61",
                        "ControlText": "Bullets",
                        "Function": "click_input",
                        "Args": {
                            "button": "left",
                            "double": false
                        },
                        "Success": true,
                        "MatchedControlText": "Bullets"
                    }
                ]
            },
            "error": null
        },
        "instantiation_evaluation": {
            "result": {
                "judge": true,
                "thought": "The task is specific and involves a basic function in Word that can be executed locally without any external dependencies.",
                "request_type": "None"
            },
            "error": null
        }
    },
    "time_cost": {
        "choose_template": 0.012,
        "prefill": 15.649,
        "instantiation_evaluation": 2.469,
        "execute": 5.824,
        "execute_eval": 8.702,
        "total": 43.522
    }
}