Entwicklerkonfiguration
Dieser Abschnitt enthält detaillierte Informationen zur Konfiguration des UFO-Agenten für Entwickler. Die Konfigurationsdatei config_dev.yaml befindet sich im Verzeichnis ufo/config und enthält verschiedene Einstellungen und Schalter, um den UFO-Agenten für Entwicklungszwecke anzupassen.
Systemkonfiguration
Die folgenden Parameter sind in der Systemkonfiguration des UFO-Agenten enthalten
| Konfigurationsoption | Beschreibung | Typ | Standardwert |
|---|---|---|---|
CONTROL_BACKEND |
Die Liste der Backends für Steuerungsaktionen, derzeit werden uia, win32 und onmiparser unterstützt |
Liste | ["uia"] |
ACTION_SEQUENCE |
Ob mehrere Aktionen in einem einzigen Schritt ausgegeben werden sollen. | Boolean | False |
MAX_STEP |
Die maximale Schrittbegrenzung für die Erfüllung der Benutzeranfrage in einer Sitzung. | Integer | 100 |
MAX_ROUND |
Die maximale Rundenbegrenzung für die Erfüllung der Benutzeranfrage in einer Sitzung. | Integer | 10 |
SLEEP_TIME |
Die Schlafzeit in Sekunden zwischen jedem Schritt, um auf das Fenster zu warten, bis es bereit ist. | Integer | 5 |
RECTANGLE_TIME |
Die Zeit in Sekunden für die Anzeige des Rechtecks um das ausgewählte Steuerelement. | Integer | 1 |
SAFE_GUARD |
Ob der Sicherheitswächter verwendet werden soll, um vor der Durchführung sensibler Operationen eine Benutzerbestätigung anzufordern. | Boolean | True |
CONTROL_LIST |
Die Liste der Steuerelemente, die ausgewählt werden dürfen. | Liste | ["Button", "Edit", "TabItem", "Document", "ListItem", "MenuItem", "ScrollBar", "TreeItem", "Hyperlink", "ComboBox", "RadioButton", "DataItem"] |
HISTORY_KEYS |
Die Schlüssel des Schrittverlaufs, die zur Blackboard für die Entscheidungsfindung des Agenten hinzugefügt werden. |
Liste | ["Step", "Thought", "ControlText", "Subtask", "Action", "Comment", "Results", "UserConfirm"] |
ANNOTATION_COLORS |
Die zugewiesenen Farben für verschiedene Steuerelementtypen zur Annotation. | Dictionary | {"Button": "#FFF68F", "Edit": "#A5F0B5", "TabItem": "#A5E7F0", "Document": "#FFD18A", "ListItem": "#D9C3FE", "MenuItem": "#E7FEC3", "ScrollBar": "#FEC3F8", "TreeItem": "#D6D6D6", "Hyperlink": "#91FFEB", "ComboBox": "#D8B6D4"} |
ANNOTATION_FONT_SIZE |
Die Schriftgröße für die Annotation. | Integer | 22 |
PRINT_LOG |
Ob das Protokoll in der Konsole ausgegeben werden soll. | Boolean | False |
CONCAT_SCREENSHOT |
Ob die Screenshots zu einem einzigen Bild für die LLM-Eingabe verkettet werden sollen. | Boolean | False |
INCLUDE_LAST_SCREENSHOT |
Ob der Screenshot des letzten Schritts in die Beobachtung aufgenommen werden soll. | Boolean | True |
LOG_LEVEL |
Die Protokollebene für den UFO-Agenten. | String | "DEBUG" |
REQUEST_TIMEOUT |
Die Aufruf-Timeout-Zeit in Sekunden für das LLM-Modell. | Integer | 250 |
USE_APIS |
Ob die Verwendung von Anwendungs-APIs erlaubt sein soll. | Boolean | True |
LOG_XML |
Ob die XML-Datei bei jedem Schritt protokolliert werden soll. | Boolean | False |
SCREENSHOT_TO_MEMORY |
Ob der Screenshot auf die Blackboard zur Entscheidungsfindung des Agenten geladen werden soll. |
Boolean | True |
SAVE_UI_TREE |
Ob der UI-Baum im Protokoll gespeichert werden soll. | Boolean | False |
SAVE_EXPERIENCE |
Ob die Erfahrung gespeichert werden soll, kann "always" für immer speichern, "always_not" für nie speichern, "ask" für Nachfrage beim Benutzer sein. Standardmäßig ist es "always_not" | String | "always_not" |
TASK_STATUS |
Ob der Status der Aufgaben im Stapelausführungsmodus aufgezeichnet werden soll. | Boolean | True |
Haupt-Prompt-Konfiguration
Haupt-Prompt-Vorlagen
Die Haupt-Prompt-Vorlagen umfassen die Prompts im UFO-Agenten sowohl für die system- als auch für die user-Rolle.
| Konfigurationsoption | Beschreibung | Typ | Standardwert |
|---|---|---|---|
HOSTAGENT_PROMPT |
Die Haupt-Prompt-Vorlage für den HostAgent. |
String | "ufo/prompts/share/base/host_agent.yaml" |
APPAGENT_PROMPT |
Die Haupt-Prompt-Vorlage für den AppAgent. |
String | "ufo/prompts/share/base/app_agent.yaml" |
FOLLOWERAGENT_PROMPT |
Die Haupt-Prompt-Vorlage für den FollowerAgent. |
String | "ufo/prompts/share/base/app_agent.yaml" |
EVALUATION_PROMPT |
Die Prompt-Vorlage für die Evaluierung. | String | "ufo/prompts/evaluation/evaluate.yaml" |
Lite-Versionen der Haupt-Prompt-Vorlagen finden Sie im Verzeichnis ufo/prompts/share/lite, um die Eingabegröße für bestimmte Token-Limits zu reduzieren.
Beispiel-Prompt-Vorlagen
Beispiel-Prompt-Vorlagen werden für Demonstrationszwecke im UFO-Agenten verwendet.
| Konfigurationsoption | Beschreibung | Typ | Standardwert |
|---|---|---|---|
HOSTAGENT_EXAMPLE_PROMPT |
Die Beispiel-Prompt-Vorlage für den HostAgent, die zur Demonstration verwendet wird. |
String | "ufo/prompts/examples/{mode}/host_agent_example.yaml" |
APPAGENT_EXAMPLE_PROMPT |
Die Beispiel-Prompt-Vorlage für den AppAgent, die zur Demonstration verwendet wird. |
String | "ufo/prompts/examples/{mode}/app_agent_example.yaml" |
Lite-Versionen der Beispiel-Prompt-Vorlagen finden Sie im Verzeichnis ufo/prompts/examples/lite/{mode}, um die Eingabegröße für Demonstrationszwecke zu reduzieren.
Erfahrungs- und Demonstrationslernen
Diese Konfigurationsparameter werden für Erfahrung und Demonstrationslernen im UFO-Agenten verwendet.
| Konfigurationsoption | Beschreibung | Typ | Standardwert |
|---|---|---|---|
EXPERIENCE_PROMPT |
Der Prompt für das eigene Lernerlebnis. | String | "ufo/prompts/experience/experience_summary.yaml" |
EXPERIENCE_SAVED_PATH |
Der Pfad zum Speichern der Erfahrungslerndaten. | String | "vectordb/experience/" |
DEMONSTRATION_PROMPT |
Der Prompt für das Benutzerdemonstrationslernen. | String | "ufo/prompts/demonstration/demonstration_summary.yaml" |
DEMONSTRATION_SAVED_PATH |
Der Pfad zum Speichern der Demonstrationslerndaten. | String | "vectordb/demonstration/" |
Anwendungs-API-Konfiguration
Diese Prompt-Konfigurationsparameter werden für die Anwendungs- und Steuerungs-APIs im UFO-Agenten verwendet.
| Konfigurationsoption | Beschreibung | Typ | Standardwert |
|---|---|---|---|
API_PROMPT |
Der Prompt für die UI-Automatisierungs-API. | String | "ufo/prompts/share/base/api.yaml" |
APP_API_PROMPT_ADDRESS |
Die Prompt-Adresse für die Anwendungs-API. | Dict | {"WINWORD.EXE": "ufo/prompts/apps/word/api.yaml", "EXCEL.EXE": "ufo/prompts/apps/excel/api.yaml", "msedge.exe": "ufo/prompts/apps/web/api.yaml", "chrome.exe": "ufo/prompts/apps/web/api.yaml"} |
pywinauto Konfiguration
Die API-Konfigurationsparameter werden für die pywinauto-API im UFO-Agenten verwendet.
| Konfigurationsoption | Beschreibung | Typ | Standardwert |
|---|---|---|---|
CLICK_API |
Die API, die für Klickaktionen verwendet wird, kann click_input oder click sein. |
String | "click_input" |
INPUT_TEXT_API |
Die API, die für die Texteingabeaktion verwendet wird, kann type_keys oder set_text sein. |
String | "type_keys" |
INPUT_TEXT_ENTER |
Ob Enter nach der Texteingabe gedrückt werden soll. | Boolean | False |
Steuerungsfilterung
Die Konfigurationsparameter für die Steuerelementfilterung werden für die Steuerelementfilterung in der Beobachtung des Agenten verwendet.
| Konfigurationsoption | Beschreibung | Typ | Standardwert |
|---|---|---|---|
CONTROL_FILTER |
Der Steuerelementfiltertyp, kann TEXT, SEMANTIC oder ICON sein. |
Liste | [] |
CONTROL_FILTER_TOP_K_PLAN |
Der Effekt des Steuerelementfilters auf die Top-K-Pläne des Agenten. | Integer | 2 |
CONTROL_FILTER_TOP_K_SEMANTIC |
Die Top-K-Werte für die semantische Ähnlichkeit des Steuerelementfilters. | Integer | 15 |
CONTROL_FILTER_TOP_K_ICON |
Die Top-K-Werte für die Ikone-Ähnlichkeit des Steuerelementfilters. | Integer | 15 |
CONTROL_FILTER_MODEL_SEMANTIC_NAME |
Der Modellname des Steuerelementfilters für semantische Ähnlichkeit. | String | "all-MiniLM-L6-v2" |
CONTROL_FILTER_MODEL_ICON_NAME |
Der Modellname des Steuerelementfilters für Ikone-Ähnlichkeit. | String | "clip-ViT-B-32" |
Anpassungen
Die Konfigurationsparameter für Anpassungen werden für Anpassungen im UFO-Agenten verwendet.
| Konfigurationsoption | Beschreibung | Typ | Standardwert |
|---|---|---|---|
ASK_QUESTION |
Ob den Benutzer nach einer Frage gefragt werden soll. | Boolean | True |
USE_CUSTOMIZATION |
Ob die Anpassung aktiviert werden soll. | Boolean | True |
QA_PAIR_FILE |
Der Pfad für die historischen QA-Paare. | String | "customization/historical_qa.txt" |
QA_PAIR_NUM |
Die Anzahl der QA-Paare für die Anpassung. | Integer | 20 |
Evaluierung
Die Konfigurationsparameter für die Evaluierung werden für die Evaluierung im UFO-Agenten verwendet.
| Konfigurationsoption | Beschreibung | Typ | Standardwert |
|---|---|---|---|
EVA_SESSION |
Ob die Sitzung in die Evaluierung einbezogen werden soll. | Boolean | True |
EVA_ROUND |
Ob die Runde in die Evaluierung einbezogen werden soll. | Boolean | False |
EVA_ALL_SCREENSHOTS |
Ob alle Screenshots in die Evaluierung einbezogen werden sollen. | Boolean | True |
Sie können die Konfigurationsparameter in der Datei config_dev.yaml an Ihre Entwicklungsbedürfnisse anpassen und die Funktionalität des UFO-Agenten erweitern.