Josedcape commited on
Commit
46159c3
·
verified ·
1 Parent(s): 5a275bc

Update src/utils/default_config_settings.py

Browse files
Files changed (1) hide show
  1. src/utils/default_config_settings.py +117 -122
src/utils/default_config_settings.py CHANGED
@@ -1,122 +1,117 @@
1
- import os
2
- import pickle
3
- import uuid
4
- import gradio as gr
5
-
6
-
7
- def default_config():
8
- """Prepare the default configuration"""
9
- return {
10
- "agent_type": "custom",
11
- "max_steps": 100,
12
- "max_actions_per_step": 10,
13
- "use_vision": True,
14
- "tool_call_in_content": True,
15
- "llm_provider": "openai",
16
- "llm_model_name": "gpt-4o",
17
- "llm_temperature": 1.0,
18
- "llm_base_url": "",
19
- "llm_api_key": "",
20
- "use_own_browser": os.getenv("CHROME_PERSISTENT_SESSION", "false").lower() == "true",
21
- "keep_browser_open": False,
22
- "headless": False,
23
- "disable_security": True,
24
- "enable_recording": True,
25
- "window_w": 1280,
26
- "window_h": 1100,
27
- "save_recording_path": "./tmp/record_videos",
28
- "save_trace_path": "./tmp/traces",
29
- "save_agent_history_path": "./tmp/agent_history",
30
- "task": "go to google.com and type 'OpenAI' click search and give me the first url",
31
- }
32
-
33
-
34
- def load_config_from_file(config_file):
35
- """Load settings from a UUID.pkl file."""
36
- try:
37
- with open(config_file, 'rb') as f:
38
- settings = pickle.load(f)
39
- return settings
40
- except Exception as e:
41
- return f"Error loading configuration: {str(e)}"
42
-
43
-
44
- def save_config_to_file(settings, save_dir="./tmp/webui_settings"):
45
- """Save the current settings to a UUID.pkl file with a UUID name."""
46
- os.makedirs(save_dir, exist_ok=True)
47
- config_file = os.path.join(save_dir, f"{uuid.uuid4()}.pkl")
48
- with open(config_file, 'wb') as f:
49
- pickle.dump(settings, f)
50
- return f"Configuration saved to {config_file}"
51
-
52
-
53
- def save_current_config(*args):
54
- current_config = {
55
- "agent_type": args[0],
56
- "max_steps": args[1],
57
- "max_actions_per_step": args[2],
58
- "use_vision": args[3],
59
- "tool_call_in_content": args[4],
60
- "llm_provider": args[5],
61
- "llm_model_name": args[6],
62
- "llm_temperature": args[7],
63
- "llm_base_url": args[8],
64
- "llm_api_key": args[9],
65
- "use_own_browser": args[10],
66
- "keep_browser_open": args[11],
67
- "headless": args[12],
68
- "disable_security": args[13],
69
- "enable_recording": args[14],
70
- "window_w": args[15],
71
- "window_h": args[16],
72
- "save_recording_path": args[17],
73
- "save_trace_path": args[18],
74
- "save_agent_history_path": args[19],
75
- "task": args[20],
76
- }
77
- return save_config_to_file(current_config)
78
-
79
-
80
- def update_ui_from_config(config_file):
81
- if config_file is not None:
82
- loaded_config = load_config_from_file(config_file.name)
83
- if isinstance(loaded_config, dict):
84
- return (
85
- gr.update(value=loaded_config.get("agent_type", "custom")),
86
- gr.update(value=loaded_config.get("max_steps", 100)),
87
- gr.update(value=loaded_config.get("max_actions_per_step", 10)),
88
- gr.update(value=loaded_config.get("use_vision", True)),
89
- gr.update(value=loaded_config.get("tool_call_in_content", True)),
90
- gr.update(value=loaded_config.get("llm_provider", "openai")),
91
- gr.update(value=loaded_config.get("llm_model_name", "gpt-4o")),
92
- gr.update(value=loaded_config.get("llm_temperature", 1.0)),
93
- gr.update(value=loaded_config.get("llm_base_url", "")),
94
- gr.update(value=loaded_config.get("llm_api_key", "")),
95
- gr.update(value=loaded_config.get("use_own_browser", False)),
96
- gr.update(value=loaded_config.get("keep_browser_open", False)),
97
- gr.update(value=loaded_config.get("headless", False)),
98
- gr.update(value=loaded_config.get("disable_security", True)),
99
- gr.update(value=loaded_config.get("enable_recording", True)),
100
- gr.update(value=loaded_config.get("window_w", 1280)),
101
- gr.update(value=loaded_config.get("window_h", 1100)),
102
- gr.update(value=loaded_config.get("save_recording_path", "./tmp/record_videos")),
103
- gr.update(value=loaded_config.get("save_trace_path", "./tmp/traces")),
104
- gr.update(value=loaded_config.get("save_agent_history_path", "./tmp/agent_history")),
105
- gr.update(value=loaded_config.get("task", "")),
106
- "Configuration loaded successfully."
107
- )
108
- else:
109
- return (
110
- gr.update(), gr.update(), gr.update(), gr.update(), gr.update(),
111
- gr.update(), gr.update(), gr.update(), gr.update(), gr.update(),
112
- gr.update(), gr.update(), gr.update(), gr.update(), gr.update(),
113
- gr.update(), gr.update(), gr.update(), gr.update(), gr.update(),
114
- gr.update(), "Error: Invalid configuration file."
115
- )
116
- return (
117
- gr.update(), gr.update(), gr.update(), gr.update(), gr.update(),
118
- gr.update(), gr.update(), gr.update(), gr.update(), gr.update(),
119
- gr.update(), gr.update(), gr.update(), gr.update(), gr.update(),
120
- gr.update(), gr.update(), gr.update(), gr.update(), gr.update(),
121
- gr.update(), "No file selected."
122
- )
 
1
+ import os
2
+ import pickle
3
+ import uuid
4
+ import gradio as gr
5
+
6
+ def default_config():
7
+ return {
8
+ "agent_type": "custom",
9
+ "max_steps": 100,
10
+ "max_actions_per_step": 10,
11
+ "use_vision": True,
12
+ "tool_call_in_content": True,
13
+ "llm_provider": "openai",
14
+ "llm_model_name": "gpt-4o",
15
+ "llm_temperature": 1.0,
16
+ "llm_base_url": "",
17
+ "llm_api_key": "",
18
+ "use_own_browser": os.getenv("CHROME_PERSISTENT_SESSION", "false").lower() == "true",
19
+ "keep_browser_open": False,
20
+ "headless": False,
21
+ "disable_security": True,
22
+ "enable_recording": True,
23
+ "window_w": 1280,
24
+ "window_h": 1100,
25
+ "save_recording_path": "./tmp/record_videos",
26
+ "save_trace_path": "./tmp/traces",
27
+ "save_agent_history_path": "./tmp/agent_history",
28
+ "task": "go to google.com and type 'OpenAI' click search and give me the first url",
29
+ }
30
+
31
+ def load_config_from_file(config_file):
32
+ try:
33
+ with open(config_file, 'rb') as f:
34
+ settings = pickle.load(f)
35
+ return settings
36
+ except Exception as e:
37
+ return f"Error loading configuration: {str(e)}"
38
+
39
+ def save_config_to_file(settings, save_dir="./tmp/webui_settings"):
40
+ os.makedirs(save_dir, exist_ok=True)
41
+ config_file = os.path.join(save_dir, f"{uuid.uuid4()}.pkl")
42
+ try:
43
+ with open(config_file, 'wb') as f:
44
+ pickle.dump(settings, f)
45
+ return f"Configuration saved to {config_file}"
46
+ except Exception as e:
47
+ return f"Error saving configuration: {str(e)}"
48
+
49
+ def save_current_config(*args):
50
+ current_config = {
51
+ "agent_type": args[0],
52
+ "max_steps": args[1],
53
+ "max_actions_per_step": args[2],
54
+ "use_vision": args[3],
55
+ "tool_call_in_content": args[4],
56
+ "llm_provider": args[5],
57
+ "llm_model_name": args[6],
58
+ "llm_temperature": args[7],
59
+ "llm_base_url": args[8],
60
+ "llm_api_key": args[9],
61
+ "use_own_browser": args[10],
62
+ "keep_browser_open": args[11],
63
+ "headless": args[12],
64
+ "disable_security": args[13],
65
+ "enable_recording": args[14],
66
+ "window_w": args[15],
67
+ "window_h": args[16],
68
+ "save_recording_path": args[17],
69
+ "save_trace_path": args[18],
70
+ "save_agent_history_path": args[19],
71
+ "task": args[20],
72
+ }
73
+ return save_config_to_file(current_config)
74
+
75
+ def update_ui_from_config(config_file):
76
+ if config_file is not None:
77
+ loaded_config = load_config_from_file(config_file.name)
78
+ if isinstance(loaded_config, dict):
79
+ return (
80
+ gr.update(value=loaded_config.get("agent_type", "custom")),
81
+ gr.update(value=loaded_config.get("max_steps", 100)),
82
+ gr.update(value=loaded_config.get("max_actions_per_step", 10)),
83
+ gr.update(value=loaded_config.get("use_vision", True)),
84
+ gr.update(value=loaded_config.get("tool_call_in_content", True)),
85
+ gr.update(value=loaded_config.get("llm_provider", "openai")),
86
+ gr.update(value=loaded_config.get("llm_model_name", "gpt-4o")),
87
+ gr.update(value=loaded_config.get("llm_temperature", 1.0)),
88
+ gr.update(value=loaded_config.get("llm_base_url", "")),
89
+ gr.update(value=loaded_config.get("llm_api_key", "")),
90
+ gr.update(value=loaded_config.get("use_own_browser", False)),
91
+ gr.update(value=loaded_config.get("keep_browser_open", False)),
92
+ gr.update(value=loaded_config.get("headless", False)),
93
+ gr.update(value=loaded_config.get("disable_security", True)),
94
+ gr.update(value=loaded_config.get("enable_recording", True)),
95
+ gr.update(value=loaded_config.get("window_w", 1280)),
96
+ gr.update(value=loaded_config.get("window_h", 1100)),
97
+ gr.update(value=loaded_config.get("save_recording_path", "./tmp/record_videos")),
98
+ gr.update(value=loaded_config.get("save_trace_path", "./tmp/traces")),
99
+ gr.update(value=loaded_config.get("save_agent_history_path", "./tmp/agent_history")),
100
+ gr.update(value=loaded_config.get("task", "")),
101
+ "Configuration loaded successfully."
102
+ )
103
+ else:
104
+ return (
105
+ gr.update(), gr.update(), gr.update(), gr.update(), gr.update(),
106
+ gr.update(), gr.update(), gr.update(), gr.update(), gr.update(),
107
+ gr.update(), gr.update(), gr.update(), gr.update(), gr.update(),
108
+ gr.update(), gr.update(), gr.update(), gr.update(), gr.update(),
109
+ gr.update(), "Error: Invalid configuration file."
110
+ )
111
+ return (
112
+ gr.update(), gr.update(), gr.update(), gr.update(), gr.update(),
113
+ gr.update(), gr.update(), gr.update(), gr.update(), gr.update(),
114
+ gr.update(), gr.update(), gr.update(), gr.update(), gr.update(),
115
+ gr.update(), gr.update(), gr.update(), gr.update(), gr.update(),
116
+ gr.update(), "No file selected."
117
+ )