Orion181 commited on
Commit
213e794
·
verified ·
1 Parent(s): 645ad6e

First Push

Browse files
README.md ADDED
@@ -0,0 +1,35 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ library_name: ml-agents
3
+ tags:
4
+ - SnowballTarget
5
+ - deep-reinforcement-learning
6
+ - reinforcement-learning
7
+ - ML-Agents-SnowballTarget
8
+ ---
9
+
10
+ # **ppo** Agent playing **SnowballTarget**
11
+ This is a trained model of a **ppo** agent playing **SnowballTarget**
12
+ using the [Unity ML-Agents Library](https://github.com/Unity-Technologies/ml-agents).
13
+
14
+ ## Usage (with ML-Agents)
15
+ The Documentation: https://unity-technologies.github.io/ml-agents/ML-Agents-Toolkit-Documentation/
16
+
17
+ We wrote a complete tutorial to learn to train your first agent using ML-Agents and publish it to the Hub:
18
+ - A *short tutorial* where you teach Huggy the Dog 🐶 to fetch the stick and then play with him directly in your
19
+ browser: https://huggingface.co/learn/deep-rl-course/unitbonus1/introduction
20
+ - A *longer tutorial* to understand how works ML-Agents:
21
+ https://huggingface.co/learn/deep-rl-course/unit5/introduction
22
+
23
+ ### Resume the training
24
+ ```bash
25
+ mlagents-learn <your_configuration_file_path.yaml> --run-id=<run_id> --resume
26
+ ```
27
+
28
+ ### Watch your Agent play
29
+ You can watch your agent **playing directly in your browser**
30
+
31
+ 1. If the environment is part of ML-Agents official environments, go to https://huggingface.co/unity
32
+ 2. Step 1: Find your model_id: Orion181/ppo-SnowballTarget
33
+ 3. Step 2: Select your *.nn /*.onnx file
34
+ 4. Click on Watch the agent play 👀
35
+
SnowballTarget.onnx ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:3ba7863a4418dac5306d3ac0c8034fe4d8e56ad897d5b93eafd8f40cb4677b02
3
+ size 650646
SnowballTarget/SnowballTarget-149984.onnx ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:95a29259533188dc43cde13aa8c488b950e052cba0de838370644141cc6b3552
3
+ size 650646
SnowballTarget/SnowballTarget-149984.pt ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:4c4a18dfbd37ea728082822636f70b37fb35aecd684a9fe0e4e72de51dce1df8
3
+ size 3849115
SnowballTarget/SnowballTarget-199984.onnx ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:3ba7863a4418dac5306d3ac0c8034fe4d8e56ad897d5b93eafd8f40cb4677b02
3
+ size 650646
SnowballTarget/SnowballTarget-199984.pt ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:84743c7ebe2b3a9fb786f89d1482b988c6487c3dd1a04394c4ef979676dbf276
3
+ size 3849115
SnowballTarget/SnowballTarget-200112.onnx ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:3ba7863a4418dac5306d3ac0c8034fe4d8e56ad897d5b93eafd8f40cb4677b02
3
+ size 650646
SnowballTarget/SnowballTarget-200112.pt ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:6ca6b6c2a31c1586ece2210b9a7a2445c3575edcefc1fd9f62e7d938a4590c6f
3
+ size 3849115
SnowballTarget/SnowballTarget-49936.onnx ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:64c52651f5430e18af09583bc7b887f828bd2b8782e4a3d93bcb3f88a54adf2c
3
+ size 650646
SnowballTarget/SnowballTarget-49936.pt ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:b7c4c7fb1d9fd4ffec50db211572ce49f900676716568f4c8f2795d7ed35699b
3
+ size 3849040
SnowballTarget/SnowballTarget-99960.onnx ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:f6f32d9ef66b7bc7650c8e6b7a7d35020b2f6c26b02eeef0c467cab1e44f4bd8
3
+ size 650646
SnowballTarget/SnowballTarget-99960.pt ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:1eabea9221a26a0b6541fb624e99c934cd2083034f41fcf5587e4a24985c1888
3
+ size 3849040
SnowballTarget/checkpoint.pt ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:9c4248a5edf0859924593c5328fa2baf3ef6a2af2db657d61aef883758f583d9
3
+ size 3848290
SnowballTarget/events.out.tfevents.1734830246.f7b919f04677.1321.0 ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:456d257c9c657f73139fda677445be2f977658f27e61f707e6fe00893557febe
3
+ size 28495
config.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"default_settings": null, "behaviors": {"SnowballTarget": {"trainer_type": "ppo", "hyperparameters": {"batch_size": 128, "buffer_size": 2048, "learning_rate": 0.0003, "beta": 0.005, "epsilon": 0.2, "lambd": 0.95, "num_epoch": 3, "shared_critic": false, "learning_rate_schedule": "linear", "beta_schedule": "linear", "epsilon_schedule": "linear"}, "checkpoint_interval": 50000, "network_settings": {"normalize": false, "hidden_units": 256, "num_layers": 2, "vis_encode_type": "simple", "memory": null, "goal_conditioning_type": "hyper", "deterministic": false}, "reward_signals": {"extrinsic": {"gamma": 0.99, "strength": 1.0, "network_settings": {"normalize": false, "hidden_units": 128, "num_layers": 2, "vis_encode_type": "simple", "memory": null, "goal_conditioning_type": "hyper", "deterministic": false}}}, "init_path": null, "keep_checkpoints": 10, "even_checkpoints": false, "max_steps": 200000, "time_horizon": 64, "summary_freq": 10000, "threaded": true, "self_play": null, "behavioral_cloning": null}}, "env_settings": {"env_path": "./training-envs-executables/linux/SnowballTarget/SnowballTarget", "env_args": null, "base_port": 5005, "num_envs": 1, "num_areas": 1, "timeout_wait": 60, "seed": -1, "max_lifetime_restarts": 10, "restarts_rate_limit_n": 1, "restarts_rate_limit_period_s": 60}, "engine_settings": {"width": 84, "height": 84, "quality_level": 5, "time_scale": 20, "target_frame_rate": -1, "capture_frame_rate": 60, "no_graphics": true, "no_graphics_monitor": false}, "environment_parameters": null, "checkpoint_settings": {"run_id": "SnowballTarget1", "initialize_from": null, "load_model": false, "resume": false, "force": false, "train_model": false, "inference": false, "results_dir": "results"}, "torch_settings": {"device": null}, "debug": false}
configuration.yaml ADDED
@@ -0,0 +1,79 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ default_settings: null
2
+ behaviors:
3
+ SnowballTarget:
4
+ trainer_type: ppo
5
+ hyperparameters:
6
+ batch_size: 128
7
+ buffer_size: 2048
8
+ learning_rate: 0.0003
9
+ beta: 0.005
10
+ epsilon: 0.2
11
+ lambd: 0.95
12
+ num_epoch: 3
13
+ shared_critic: false
14
+ learning_rate_schedule: linear
15
+ beta_schedule: linear
16
+ epsilon_schedule: linear
17
+ checkpoint_interval: 50000
18
+ network_settings:
19
+ normalize: false
20
+ hidden_units: 256
21
+ num_layers: 2
22
+ vis_encode_type: simple
23
+ memory: null
24
+ goal_conditioning_type: hyper
25
+ deterministic: false
26
+ reward_signals:
27
+ extrinsic:
28
+ gamma: 0.99
29
+ strength: 1.0
30
+ network_settings:
31
+ normalize: false
32
+ hidden_units: 128
33
+ num_layers: 2
34
+ vis_encode_type: simple
35
+ memory: null
36
+ goal_conditioning_type: hyper
37
+ deterministic: false
38
+ init_path: null
39
+ keep_checkpoints: 10
40
+ even_checkpoints: false
41
+ max_steps: 200000
42
+ time_horizon: 64
43
+ summary_freq: 10000
44
+ threaded: true
45
+ self_play: null
46
+ behavioral_cloning: null
47
+ env_settings:
48
+ env_path: ./training-envs-executables/linux/SnowballTarget/SnowballTarget
49
+ env_args: null
50
+ base_port: 5005
51
+ num_envs: 1
52
+ num_areas: 1
53
+ timeout_wait: 60
54
+ seed: -1
55
+ max_lifetime_restarts: 10
56
+ restarts_rate_limit_n: 1
57
+ restarts_rate_limit_period_s: 60
58
+ engine_settings:
59
+ width: 84
60
+ height: 84
61
+ quality_level: 5
62
+ time_scale: 20
63
+ target_frame_rate: -1
64
+ capture_frame_rate: 60
65
+ no_graphics: true
66
+ no_graphics_monitor: false
67
+ environment_parameters: null
68
+ checkpoint_settings:
69
+ run_id: SnowballTarget1
70
+ initialize_from: null
71
+ load_model: false
72
+ resume: false
73
+ force: false
74
+ train_model: false
75
+ inference: false
76
+ results_dir: results
77
+ torch_settings:
78
+ device: null
79
+ debug: false
run_logs/Player-0.log ADDED
@@ -0,0 +1,353 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ Mono path[0] = '/workspaces/unit5_docker_dev/ml-agents/training-envs-executables/linux/SnowballTarget/SnowballTarget_Data/Managed'
2
+ Mono config path = '/workspaces/unit5_docker_dev/ml-agents/training-envs-executables/linux/SnowballTarget/SnowballTarget_Data/MonoBleedingEdge/etc'
3
+ Preloaded 'lib_burst_generated.so'
4
+ Preloaded 'libgrpc_csharp_ext.x64.so'
5
+ PlayerPrefs - Creating folder: /home/vscode/.config/unity3d/Hugging Face
6
+ PlayerPrefs - Creating folder: /home/vscode/.config/unity3d/Hugging Face/SnowballTarget
7
+ Unable to load player prefs
8
+ Initialize engine version: 2021.3.14f1 (eee1884e7226)
9
+ [Subsystems] Discovering subsystems at path /workspaces/unit5_docker_dev/ml-agents/training-envs-executables/linux/SnowballTarget/SnowballTarget_Data/UnitySubsystems
10
+ Forcing GfxDevice: Null
11
+ GfxDevice: creating device client; threaded=0; jobified=0
12
+ NullGfxDevice:
13
+ Version: NULL 1.0 [1.0]
14
+ Renderer: Null Device
15
+ Vendor: Unity Technologies
16
+ FMOD initialized on nosound output
17
+ Begin MonoManager ReloadAssembly
18
+ - Completed reload, in 1.114 seconds
19
+ ERROR: Shader Sprites/Default shader is not supported on this GPU (none of subshaders/fallbacks are suitable)
20
+ ERROR: Shader Sprites/Mask shader is not supported on this GPU (none of subshaders/fallbacks are suitable)
21
+ ERROR: Shader Legacy Shaders/VertexLit shader is not supported on this GPU (none of subshaders/fallbacks are suitable)
22
+ WARNING: Shader Unsupported: 'Standard' - All subshaders removed
23
+ WARNING: Shader Did you use #pragma only_renderers and omit this platform?
24
+ WARNING: Shader If subshaders removal was intentional, you may have forgotten turning Fallback off?
25
+ ERROR: Shader Standard shader is not supported on this GPU (none of subshaders/fallbacks are suitable)
26
+ WARNING: Shader Unsupported: 'Standard' - All subshaders removed
27
+ WARNING: Shader Did you use #pragma only_renderers and omit this platform?
28
+ WARNING: Shader If subshaders removal was intentional, you may have forgotten turning Fallback off?
29
+ UnloadTime: 3.719353 ms
30
+ ERROR: Shader UI/Default shader is not supported on this GPU (none of subshaders/fallbacks are suitable)
31
+ requesting resize 84 x 84
32
+ Setting up 12 worker threads for Enlighten.
33
+ Memory Statistics:
34
+ [ALLOC_TEMP_TLS] TLS Allocator
35
+ StackAllocators :
36
+ [ALLOC_TEMP_MAIN]
37
+ Peak usage frame count: [8.0 KB-16.0 KB]: 5371 frames, [16.0 KB-32.0 KB]: 91 frames, [2.0 MB-4.0 MB]: 1 frames
38
+ Initial Block Size 4.0 MB
39
+ Current Block Size 4.0 MB
40
+ Peak Allocated Bytes 2.0 MB
41
+ Overflow Count 0
42
+ [ALLOC_TEMP_Job.Worker 18]
43
+ Initial Block Size 256.0 KB
44
+ Current Block Size 256.0 KB
45
+ Peak Allocated Bytes 3.6 KB
46
+ Overflow Count 0
47
+ [ALLOC_TEMP_Loading.PreloadManager]
48
+ Initial Block Size 256.0 KB
49
+ Current Block Size 304.0 KB
50
+ Peak Allocated Bytes 228.9 KB
51
+ Overflow Count 4
52
+ [ALLOC_TEMP_Background Job.Worker 8]
53
+ Initial Block Size 32.0 KB
54
+ Current Block Size 32.0 KB
55
+ Peak Allocated Bytes 0 B
56
+ Overflow Count 0
57
+ [ALLOC_TEMP_Background Job.Worker 10]
58
+ Initial Block Size 32.0 KB
59
+ Current Block Size 32.0 KB
60
+ Peak Allocated Bytes 0 B
61
+ Overflow Count 0
62
+ [ALLOC_TEMP_Job.Worker 16]
63
+ Initial Block Size 256.0 KB
64
+ Current Block Size 256.0 KB
65
+ Peak Allocated Bytes 3.6 KB
66
+ Overflow Count 0
67
+ [ALLOC_TEMP_Background Job.Worker 6]
68
+ Initial Block Size 32.0 KB
69
+ Current Block Size 32.0 KB
70
+ Peak Allocated Bytes 0 B
71
+ Overflow Count 0
72
+ [ALLOC_TEMP_Job.Worker 4]
73
+ Initial Block Size 256.0 KB
74
+ Current Block Size 256.0 KB
75
+ Peak Allocated Bytes 3.6 KB
76
+ Overflow Count 0
77
+ [ALLOC_TEMP_Job.Worker 14]
78
+ Initial Block Size 256.0 KB
79
+ Current Block Size 256.0 KB
80
+ Peak Allocated Bytes 3.6 KB
81
+ Overflow Count 0
82
+ [ALLOC_TEMP_Job.Worker 17]
83
+ Initial Block Size 256.0 KB
84
+ Current Block Size 256.0 KB
85
+ Peak Allocated Bytes 3.6 KB
86
+ Overflow Count 0
87
+ [ALLOC_TEMP_Job.Worker 3]
88
+ Initial Block Size 256.0 KB
89
+ Current Block Size 256.0 KB
90
+ Peak Allocated Bytes 3.6 KB
91
+ Overflow Count 0
92
+ [ALLOC_TEMP_Background Job.Worker 12]
93
+ Initial Block Size 32.0 KB
94
+ Current Block Size 32.0 KB
95
+ Peak Allocated Bytes 0 B
96
+ Overflow Count 0
97
+ [ALLOC_TEMP_Background Job.Worker 1]
98
+ Initial Block Size 32.0 KB
99
+ Current Block Size 32.0 KB
100
+ Peak Allocated Bytes 0 B
101
+ Overflow Count 0
102
+ [ALLOC_TEMP_AssetGarbageCollectorHelper] x 23
103
+ Initial Block Size 64.0 KB
104
+ Current Block Size 64.0 KB
105
+ Peak Allocated Bytes 0 B
106
+ Overflow Count 0
107
+ [ALLOC_TEMP_Background Job.Worker 5]
108
+ Initial Block Size 32.0 KB
109
+ Current Block Size 32.0 KB
110
+ Peak Allocated Bytes 0 B
111
+ Overflow Count 0
112
+ [ALLOC_TEMP_Background Job.Worker 13]
113
+ Initial Block Size 32.0 KB
114
+ Current Block Size 32.0 KB
115
+ Peak Allocated Bytes 0 B
116
+ Overflow Count 0
117
+ [ALLOC_TEMP_Background Job.Worker 11]
118
+ Initial Block Size 32.0 KB
119
+ Current Block Size 32.0 KB
120
+ Peak Allocated Bytes 0 B
121
+ Overflow Count 0
122
+ [ALLOC_TEMP_Job.Worker 2]
123
+ Initial Block Size 256.0 KB
124
+ Current Block Size 256.0 KB
125
+ Peak Allocated Bytes 3.6 KB
126
+ Overflow Count 0
127
+ [ALLOC_TEMP_Background Job.Worker 3]
128
+ Initial Block Size 32.0 KB
129
+ Current Block Size 32.0 KB
130
+ Peak Allocated Bytes 0 B
131
+ Overflow Count 0
132
+ [ALLOC_TEMP_Background Job.Worker 0]
133
+ Initial Block Size 32.0 KB
134
+ Current Block Size 32.0 KB
135
+ Peak Allocated Bytes 0 B
136
+ Overflow Count 0
137
+ [ALLOC_TEMP_Job.Worker 20]
138
+ Initial Block Size 256.0 KB
139
+ Current Block Size 256.0 KB
140
+ Peak Allocated Bytes 3.6 KB
141
+ Overflow Count 0
142
+ [ALLOC_TEMP_Job.Worker 11]
143
+ Initial Block Size 256.0 KB
144
+ Current Block Size 256.0 KB
145
+ Peak Allocated Bytes 3.6 KB
146
+ Overflow Count 0
147
+ [ALLOC_TEMP_Background Job.Worker 4]
148
+ Initial Block Size 32.0 KB
149
+ Current Block Size 32.0 KB
150
+ Peak Allocated Bytes 0 B
151
+ Overflow Count 0
152
+ [ALLOC_TEMP_BatchDeleteObjects]
153
+ Initial Block Size 64.0 KB
154
+ Current Block Size 64.0 KB
155
+ Peak Allocated Bytes 0 B
156
+ Overflow Count 0
157
+ [ALLOC_TEMP_Job.Worker 6]
158
+ Initial Block Size 256.0 KB
159
+ Current Block Size 256.0 KB
160
+ Peak Allocated Bytes 3.6 KB
161
+ Overflow Count 0
162
+ [ALLOC_TEMP_Job.Worker 0]
163
+ Initial Block Size 256.0 KB
164
+ Current Block Size 256.0 KB
165
+ Peak Allocated Bytes 3.6 KB
166
+ Overflow Count 0
167
+ [ALLOC_TEMP_Job.Worker 21]
168
+ Initial Block Size 256.0 KB
169
+ Current Block Size 256.0 KB
170
+ Peak Allocated Bytes 3.6 KB
171
+ Overflow Count 0
172
+ [ALLOC_TEMP_Job.Worker 5]
173
+ Initial Block Size 256.0 KB
174
+ Current Block Size 256.0 KB
175
+ Peak Allocated Bytes 3.6 KB
176
+ Overflow Count 0
177
+ [ALLOC_TEMP_Background Job.Worker 9]
178
+ Initial Block Size 32.0 KB
179
+ Current Block Size 32.0 KB
180
+ Peak Allocated Bytes 0 B
181
+ Overflow Count 0
182
+ [ALLOC_TEMP_Background Job.Worker 14]
183
+ Initial Block Size 32.0 KB
184
+ Current Block Size 32.0 KB
185
+ Peak Allocated Bytes 0 B
186
+ Overflow Count 0
187
+ [ALLOC_TEMP_Job.Worker 13]
188
+ Initial Block Size 256.0 KB
189
+ Current Block Size 256.0 KB
190
+ Peak Allocated Bytes 3.6 KB
191
+ Overflow Count 0
192
+ [ALLOC_TEMP_EnlightenWorker] x 12
193
+ Initial Block Size 64.0 KB
194
+ Current Block Size 64.0 KB
195
+ Peak Allocated Bytes 0 B
196
+ Overflow Count 0
197
+ [ALLOC_TEMP_Background Job.Worker 15]
198
+ Initial Block Size 32.0 KB
199
+ Current Block Size 32.0 KB
200
+ Peak Allocated Bytes 0 B
201
+ Overflow Count 0
202
+ [ALLOC_TEMP_Background Job.Worker 2]
203
+ Initial Block Size 32.0 KB
204
+ Current Block Size 32.0 KB
205
+ Peak Allocated Bytes 0 B
206
+ Overflow Count 0
207
+ [ALLOC_TEMP_Background Job.Worker 7]
208
+ Initial Block Size 32.0 KB
209
+ Current Block Size 32.0 KB
210
+ Peak Allocated Bytes 0 B
211
+ Overflow Count 0
212
+ [ALLOC_TEMP_Job.Worker 22]
213
+ Initial Block Size 256.0 KB
214
+ Current Block Size 256.0 KB
215
+ Peak Allocated Bytes 3.6 KB
216
+ Overflow Count 0
217
+ [ALLOC_TEMP_Job.Worker 9]
218
+ Initial Block Size 256.0 KB
219
+ Current Block Size 256.0 KB
220
+ Peak Allocated Bytes 3.6 KB
221
+ Overflow Count 0
222
+ [ALLOC_TEMP_Job.Worker 8]
223
+ Initial Block Size 256.0 KB
224
+ Current Block Size 256.0 KB
225
+ Peak Allocated Bytes 3.6 KB
226
+ Overflow Count 0
227
+ [ALLOC_TEMP_Job.Worker 7]
228
+ Initial Block Size 256.0 KB
229
+ Current Block Size 256.0 KB
230
+ Peak Allocated Bytes 3.6 KB
231
+ Overflow Count 0
232
+ [ALLOC_TEMP_Job.Worker 1]
233
+ Initial Block Size 256.0 KB
234
+ Current Block Size 256.0 KB
235
+ Peak Allocated Bytes 3.6 KB
236
+ Overflow Count 0
237
+ [ALLOC_TEMP_Job.Worker 10]
238
+ Initial Block Size 256.0 KB
239
+ Current Block Size 256.0 KB
240
+ Peak Allocated Bytes 3.6 KB
241
+ Overflow Count 0
242
+ [ALLOC_TEMP_Job.Worker 15]
243
+ Initial Block Size 256.0 KB
244
+ Current Block Size 256.0 KB
245
+ Peak Allocated Bytes 3.6 KB
246
+ Overflow Count 0
247
+ [ALLOC_TEMP_Job.Worker 12]
248
+ Initial Block Size 256.0 KB
249
+ Current Block Size 256.0 KB
250
+ Peak Allocated Bytes 3.6 KB
251
+ Overflow Count 0
252
+ [ALLOC_TEMP_Job.Worker 19]
253
+ Initial Block Size 256.0 KB
254
+ Current Block Size 256.0 KB
255
+ Peak Allocated Bytes 3.6 KB
256
+ Overflow Count 0
257
+ [ALLOC_TEMP_Loading.AsyncRead]
258
+ Initial Block Size 64.0 KB
259
+ Current Block Size 64.0 KB
260
+ Peak Allocated Bytes 238 B
261
+ Overflow Count 0
262
+ [ALLOC_DEFAULT] Dual Thread Allocator
263
+ Peak main deferred allocation count 41
264
+ [ALLOC_BUCKET]
265
+ Large Block size 4.0 MB
266
+ Used Block count 1
267
+ Peak Allocated bytes 1.0 MB
268
+ [ALLOC_DEFAULT_MAIN]
269
+ Peak usage frame count: [4.0 MB-8.0 MB]: 5463 frames
270
+ Requested Block Size 16.0 MB
271
+ Peak Block count 1
272
+ Peak Allocated memory 7.2 MB
273
+ Peak Large allocation bytes 0 B
274
+ [ALLOC_DEFAULT_THREAD]
275
+ Peak usage frame count: [16.0 MB-32.0 MB]: 5463 frames
276
+ Requested Block Size 16.0 MB
277
+ Peak Block count 1
278
+ Peak Allocated memory 17.3 MB
279
+ Peak Large allocation bytes 16.0 MB
280
+ [ALLOC_TEMP_JOB_1_FRAME]
281
+ Initial Block Size 2.0 MB
282
+ Used Block Count 1
283
+ Overflow Count (too large) 0
284
+ Overflow Count (full) 0
285
+ [ALLOC_TEMP_JOB_2_FRAMES]
286
+ Initial Block Size 2.0 MB
287
+ Used Block Count 1
288
+ Overflow Count (too large) 0
289
+ Overflow Count (full) 0
290
+ [ALLOC_TEMP_JOB_4_FRAMES (JobTemp)]
291
+ Initial Block Size 2.0 MB
292
+ Used Block Count 2
293
+ Overflow Count (too large) 0
294
+ Overflow Count (full) 0
295
+ [ALLOC_TEMP_JOB_ASYNC (Background)]
296
+ Initial Block Size 1.0 MB
297
+ Used Block Count 3
298
+ Overflow Count (too large) 0
299
+ Overflow Count (full) 0
300
+ [ALLOC_GFX] Dual Thread Allocator
301
+ Peak main deferred allocation count 0
302
+ [ALLOC_BUCKET]
303
+ Large Block size 4.0 MB
304
+ Used Block count 1
305
+ Peak Allocated bytes 1.0 MB
306
+ [ALLOC_GFX_MAIN]
307
+ Peak usage frame count: [32.0 KB-64.0 KB]: 4377 frames, [64.0 KB-128.0 KB]: 1086 frames
308
+ Requested Block Size 16.0 MB
309
+ Peak Block count 1
310
+ Peak Allocated memory 66.8 KB
311
+ Peak Large allocation bytes 0 B
312
+ [ALLOC_GFX_THREAD]
313
+ Peak usage frame count: [32.0 KB-64.0 KB]: 5463 frames
314
+ Requested Block Size 16.0 MB
315
+ Peak Block count 1
316
+ Peak Allocated memory 39.6 KB
317
+ Peak Large allocation bytes 0 B
318
+ [ALLOC_CACHEOBJECTS] Dual Thread Allocator
319
+ Peak main deferred allocation count 0
320
+ [ALLOC_BUCKET]
321
+ Large Block size 4.0 MB
322
+ Used Block count 1
323
+ Peak Allocated bytes 1.0 MB
324
+ [ALLOC_CACHEOBJECTS_MAIN]
325
+ Peak usage frame count: [0.5 MB-1.0 MB]: 5463 frames
326
+ Requested Block Size 4.0 MB
327
+ Peak Block count 1
328
+ Peak Allocated memory 0.6 MB
329
+ Peak Large allocation bytes 0 B
330
+ [ALLOC_CACHEOBJECTS_THREAD]
331
+ Peak usage frame count: [0.5 MB-1.0 MB]: 5462 frames, [2.0 MB-4.0 MB]: 1 frames
332
+ Requested Block Size 4.0 MB
333
+ Peak Block count 1
334
+ Peak Allocated memory 2.2 MB
335
+ Peak Large allocation bytes 0 B
336
+ [ALLOC_TYPETREE] Dual Thread Allocator
337
+ Peak main deferred allocation count 0
338
+ [ALLOC_BUCKET]
339
+ Large Block size 4.0 MB
340
+ Used Block count 1
341
+ Peak Allocated bytes 1.0 MB
342
+ [ALLOC_TYPETREE_MAIN]
343
+ Peak usage frame count: [0-1.0 KB]: 5463 frames
344
+ Requested Block Size 2.0 MB
345
+ Peak Block count 1
346
+ Peak Allocated memory 1.0 KB
347
+ Peak Large allocation bytes 0 B
348
+ [ALLOC_TYPETREE_THREAD]
349
+ Peak usage frame count: [1.0 KB-2.0 KB]: 5463 frames
350
+ Requested Block Size 2.0 MB
351
+ Peak Block count 1
352
+ Peak Allocated memory 1.7 KB
353
+ Peak Large allocation bytes 0 B
run_logs/timers.json ADDED
@@ -0,0 +1,377 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "name": "root",
3
+ "gauges": {
4
+ "SnowballTarget.Policy.Entropy.mean": {
5
+ "value": 1.1267740726470947,
6
+ "min": 1.1267740726470947,
7
+ "max": 2.874922513961792,
8
+ "count": 20
9
+ },
10
+ "SnowballTarget.Policy.Entropy.sum": {
11
+ "value": 10795.6220703125,
12
+ "min": 10795.6220703125,
13
+ "max": 29536.953125,
14
+ "count": 20
15
+ },
16
+ "SnowballTarget.Step.mean": {
17
+ "value": 199984.0,
18
+ "min": 9952.0,
19
+ "max": 199984.0,
20
+ "count": 20
21
+ },
22
+ "SnowballTarget.Step.sum": {
23
+ "value": 199984.0,
24
+ "min": 9952.0,
25
+ "max": 199984.0,
26
+ "count": 20
27
+ },
28
+ "SnowballTarget.Policy.ExtrinsicValueEstimate.mean": {
29
+ "value": 12.457562446594238,
30
+ "min": 0.4340077042579651,
31
+ "max": 12.457562446594238,
32
+ "count": 20
33
+ },
34
+ "SnowballTarget.Policy.ExtrinsicValueEstimate.sum": {
35
+ "value": 2429.224609375,
36
+ "min": 84.19749450683594,
37
+ "max": 2493.00048828125,
38
+ "count": 20
39
+ },
40
+ "SnowballTarget.Environment.EpisodeLength.mean": {
41
+ "value": 199.0,
42
+ "min": 199.0,
43
+ "max": 199.0,
44
+ "count": 20
45
+ },
46
+ "SnowballTarget.Environment.EpisodeLength.sum": {
47
+ "value": 8756.0,
48
+ "min": 8756.0,
49
+ "max": 10945.0,
50
+ "count": 20
51
+ },
52
+ "SnowballTarget.Losses.PolicyLoss.mean": {
53
+ "value": 0.06689958804724716,
54
+ "min": 0.06290343934418999,
55
+ "max": 0.07709801059536403,
56
+ "count": 20
57
+ },
58
+ "SnowballTarget.Losses.PolicyLoss.sum": {
59
+ "value": 0.26759835218898864,
60
+ "min": 0.26074268133418754,
61
+ "max": 0.36521570256673824,
62
+ "count": 20
63
+ },
64
+ "SnowballTarget.Losses.ValueLoss.mean": {
65
+ "value": 0.2038862613194129,
66
+ "min": 0.11257207941711314,
67
+ "max": 0.27098822586384474,
68
+ "count": 20
69
+ },
70
+ "SnowballTarget.Losses.ValueLoss.sum": {
71
+ "value": 0.8155450452776516,
72
+ "min": 0.45028831766845256,
73
+ "max": 1.3441393766917435,
74
+ "count": 20
75
+ },
76
+ "SnowballTarget.Policy.LearningRate.mean": {
77
+ "value": 8.082097306000005e-06,
78
+ "min": 8.082097306000005e-06,
79
+ "max": 0.000291882002706,
80
+ "count": 20
81
+ },
82
+ "SnowballTarget.Policy.LearningRate.sum": {
83
+ "value": 3.232838922400002e-05,
84
+ "min": 3.232838922400002e-05,
85
+ "max": 0.00138516003828,
86
+ "count": 20
87
+ },
88
+ "SnowballTarget.Policy.Epsilon.mean": {
89
+ "value": 0.10269400000000001,
90
+ "min": 0.10269400000000001,
91
+ "max": 0.19729400000000002,
92
+ "count": 20
93
+ },
94
+ "SnowballTarget.Policy.Epsilon.sum": {
95
+ "value": 0.41077600000000003,
96
+ "min": 0.41077600000000003,
97
+ "max": 0.96172,
98
+ "count": 20
99
+ },
100
+ "SnowballTarget.Policy.Beta.mean": {
101
+ "value": 0.0001444306000000001,
102
+ "min": 0.0001444306000000001,
103
+ "max": 0.0048649706,
104
+ "count": 20
105
+ },
106
+ "SnowballTarget.Policy.Beta.sum": {
107
+ "value": 0.0005777224000000004,
108
+ "min": 0.0005777224000000004,
109
+ "max": 0.023089828,
110
+ "count": 20
111
+ },
112
+ "SnowballTarget.Environment.CumulativeReward.mean": {
113
+ "value": 24.5,
114
+ "min": 2.909090909090909,
115
+ "max": 24.5,
116
+ "count": 20
117
+ },
118
+ "SnowballTarget.Environment.CumulativeReward.sum": {
119
+ "value": 1078.0,
120
+ "min": 128.0,
121
+ "max": 1346.0,
122
+ "count": 20
123
+ },
124
+ "SnowballTarget.Policy.ExtrinsicReward.mean": {
125
+ "value": 24.5,
126
+ "min": 2.909090909090909,
127
+ "max": 24.5,
128
+ "count": 20
129
+ },
130
+ "SnowballTarget.Policy.ExtrinsicReward.sum": {
131
+ "value": 1078.0,
132
+ "min": 128.0,
133
+ "max": 1346.0,
134
+ "count": 20
135
+ },
136
+ "SnowballTarget.IsTraining.mean": {
137
+ "value": 1.0,
138
+ "min": 1.0,
139
+ "max": 1.0,
140
+ "count": 20
141
+ },
142
+ "SnowballTarget.IsTraining.sum": {
143
+ "value": 1.0,
144
+ "min": 1.0,
145
+ "max": 1.0,
146
+ "count": 20
147
+ }
148
+ },
149
+ "metadata": {
150
+ "timer_format_version": "0.1.0",
151
+ "start_time_seconds": "1734830244",
152
+ "python_version": "3.10.12 (main, Nov 6 2024, 20:22:13) [GCC 11.4.0]",
153
+ "command_line_arguments": "/home/vscode/.local/bin/mlagents-learn ./config/ppo/SnowballTarget.yaml --env=./training-envs-executables/linux/SnowballTarget/SnowballTarget --run-id=SnowballTarget1 --no-graphics",
154
+ "mlagents_version": "1.2.0.dev0",
155
+ "mlagents_envs_version": "1.2.0.dev0",
156
+ "communication_protocol_version": "1.5.0",
157
+ "pytorch_version": "2.5.1+cu124",
158
+ "numpy_version": "1.23.5",
159
+ "end_time_seconds": "1734830576"
160
+ },
161
+ "total": 331.9028437140005,
162
+ "count": 1,
163
+ "self": 0.474280534999707,
164
+ "children": {
165
+ "run_training.setup": {
166
+ "total": 0.04218745899925125,
167
+ "count": 1,
168
+ "self": 0.04218745899925125
169
+ },
170
+ "TrainerController.start_learning": {
171
+ "total": 331.3863757200015,
172
+ "count": 1,
173
+ "self": 0.4308585048929672,
174
+ "children": {
175
+ "TrainerController._reset_env": {
176
+ "total": 4.027840693001053,
177
+ "count": 1,
178
+ "self": 4.027840693001053
179
+ },
180
+ "TrainerController.advance": {
181
+ "total": 326.8188069571079,
182
+ "count": 18209,
183
+ "self": 0.20260516988128074,
184
+ "children": {
185
+ "env_step": {
186
+ "total": 326.6162017872266,
187
+ "count": 18209,
188
+ "self": 259.59416884987513,
189
+ "children": {
190
+ "SubprocessEnvManager._take_step": {
191
+ "total": 66.81118004836753,
192
+ "count": 18209,
193
+ "self": 1.1402526641686563,
194
+ "children": {
195
+ "TorchPolicy.evaluate": {
196
+ "total": 65.67092738419888,
197
+ "count": 18209,
198
+ "self": 65.67092738419888
199
+ }
200
+ }
201
+ },
202
+ "workers": {
203
+ "total": 0.21085288898393628,
204
+ "count": 18209,
205
+ "self": 0.0,
206
+ "children": {
207
+ "worker_root": {
208
+ "total": 330.6570750361316,
209
+ "count": 18209,
210
+ "is_parallel": true,
211
+ "self": 142.57170759897417,
212
+ "children": {
213
+ "run_training.setup": {
214
+ "total": 0.0,
215
+ "count": 0,
216
+ "is_parallel": true,
217
+ "self": 0.0,
218
+ "children": {
219
+ "steps_from_proto": {
220
+ "total": 0.0019350370021129493,
221
+ "count": 1,
222
+ "is_parallel": true,
223
+ "self": 0.0005614760048047174,
224
+ "children": {
225
+ "_process_rank_one_or_two_observation": {
226
+ "total": 0.0013735609973082319,
227
+ "count": 10,
228
+ "is_parallel": true,
229
+ "self": 0.0013735609973082319
230
+ }
231
+ }
232
+ },
233
+ "UnityEnvironment.step": {
234
+ "total": 0.02228339499924914,
235
+ "count": 1,
236
+ "is_parallel": true,
237
+ "self": 0.0003154009973513894,
238
+ "children": {
239
+ "UnityEnvironment._generate_step_input": {
240
+ "total": 0.0002375170006416738,
241
+ "count": 1,
242
+ "is_parallel": true,
243
+ "self": 0.0002375170006416738
244
+ },
245
+ "communicator.exchange": {
246
+ "total": 0.020916853998642182,
247
+ "count": 1,
248
+ "is_parallel": true,
249
+ "self": 0.020916853998642182
250
+ },
251
+ "steps_from_proto": {
252
+ "total": 0.0008136230026138946,
253
+ "count": 1,
254
+ "is_parallel": true,
255
+ "self": 0.00019884400171577,
256
+ "children": {
257
+ "_process_rank_one_or_two_observation": {
258
+ "total": 0.0006147790008981247,
259
+ "count": 10,
260
+ "is_parallel": true,
261
+ "self": 0.0006147790008981247
262
+ }
263
+ }
264
+ }
265
+ }
266
+ }
267
+ }
268
+ },
269
+ "UnityEnvironment.step": {
270
+ "total": 188.0853674371574,
271
+ "count": 18208,
272
+ "is_parallel": true,
273
+ "self": 4.596227572001226,
274
+ "children": {
275
+ "UnityEnvironment._generate_step_input": {
276
+ "total": 2.7097099801576405,
277
+ "count": 18208,
278
+ "is_parallel": true,
279
+ "self": 2.7097099801576405
280
+ },
281
+ "communicator.exchange": {
282
+ "total": 166.82013903385086,
283
+ "count": 18208,
284
+ "is_parallel": true,
285
+ "self": 166.82013903385086
286
+ },
287
+ "steps_from_proto": {
288
+ "total": 13.95929085114767,
289
+ "count": 18208,
290
+ "is_parallel": true,
291
+ "self": 3.3975848144800693,
292
+ "children": {
293
+ "_process_rank_one_or_two_observation": {
294
+ "total": 10.561706036667601,
295
+ "count": 182080,
296
+ "is_parallel": true,
297
+ "self": 10.561706036667601
298
+ }
299
+ }
300
+ }
301
+ }
302
+ }
303
+ }
304
+ }
305
+ }
306
+ }
307
+ }
308
+ }
309
+ }
310
+ },
311
+ "trainer_threads": {
312
+ "total": 0.00019187599900760688,
313
+ "count": 1,
314
+ "self": 0.00019187599900760688,
315
+ "children": {
316
+ "thread_root": {
317
+ "total": 0.0,
318
+ "count": 0,
319
+ "is_parallel": true,
320
+ "self": 0.0,
321
+ "children": {
322
+ "trainer_advance": {
323
+ "total": 324.9403932249661,
324
+ "count": 281415,
325
+ "is_parallel": true,
326
+ "self": 5.720903608631488,
327
+ "children": {
328
+ "process_trajectory": {
329
+ "total": 179.9420745453208,
330
+ "count": 281415,
331
+ "is_parallel": true,
332
+ "self": 179.3076142473219,
333
+ "children": {
334
+ "RLTrainer._checkpoint": {
335
+ "total": 0.6344602979988849,
336
+ "count": 4,
337
+ "is_parallel": true,
338
+ "self": 0.6344602979988849
339
+ }
340
+ }
341
+ },
342
+ "_update_policy": {
343
+ "total": 139.27741507101382,
344
+ "count": 90,
345
+ "is_parallel": true,
346
+ "self": 34.63973974009059,
347
+ "children": {
348
+ "TorchPPOOptimizer.update": {
349
+ "total": 104.63767533092323,
350
+ "count": 4587,
351
+ "is_parallel": true,
352
+ "self": 104.63767533092323
353
+ }
354
+ }
355
+ }
356
+ }
357
+ }
358
+ }
359
+ }
360
+ }
361
+ },
362
+ "TrainerController._save_models": {
363
+ "total": 0.10867768900061492,
364
+ "count": 1,
365
+ "self": 0.022836290998384356,
366
+ "children": {
367
+ "RLTrainer._checkpoint": {
368
+ "total": 0.08584139800223056,
369
+ "count": 1,
370
+ "self": 0.08584139800223056
371
+ }
372
+ }
373
+ }
374
+ }
375
+ }
376
+ }
377
+ }
run_logs/training_status.json ADDED
@@ -0,0 +1,65 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "SnowballTarget": {
3
+ "checkpoints": [
4
+ {
5
+ "steps": 49936,
6
+ "file_path": "results/SnowballTarget1/SnowballTarget/SnowballTarget-49936.onnx",
7
+ "reward": 12.909090909090908,
8
+ "creation_time": 1734830330.2602947,
9
+ "auxillary_file_paths": [
10
+ "results/SnowballTarget1/SnowballTarget/SnowballTarget-49936.pt"
11
+ ]
12
+ },
13
+ {
14
+ "steps": 99960,
15
+ "file_path": "results/SnowballTarget1/SnowballTarget/SnowballTarget-99960.onnx",
16
+ "reward": 21.181818181818183,
17
+ "creation_time": 1734830415.0809424,
18
+ "auxillary_file_paths": [
19
+ "results/SnowballTarget1/SnowballTarget/SnowballTarget-99960.pt"
20
+ ]
21
+ },
22
+ {
23
+ "steps": 149984,
24
+ "file_path": "results/SnowballTarget1/SnowballTarget/SnowballTarget-149984.onnx",
25
+ "reward": 23.454545454545453,
26
+ "creation_time": 1734830496.1575046,
27
+ "auxillary_file_paths": [
28
+ "results/SnowballTarget1/SnowballTarget/SnowballTarget-149984.pt"
29
+ ]
30
+ },
31
+ {
32
+ "steps": 199984,
33
+ "file_path": "results/SnowballTarget1/SnowballTarget/SnowballTarget-199984.onnx",
34
+ "reward": 24.90909090909091,
35
+ "creation_time": 1734830575.5774577,
36
+ "auxillary_file_paths": [
37
+ "results/SnowballTarget1/SnowballTarget/SnowballTarget-199984.pt"
38
+ ]
39
+ },
40
+ {
41
+ "steps": 200112,
42
+ "file_path": "results/SnowballTarget1/SnowballTarget/SnowballTarget-200112.onnx",
43
+ "reward": 24.90909090909091,
44
+ "creation_time": 1734830575.6804585,
45
+ "auxillary_file_paths": [
46
+ "results/SnowballTarget1/SnowballTarget/SnowballTarget-200112.pt"
47
+ ]
48
+ }
49
+ ],
50
+ "final_checkpoint": {
51
+ "steps": 200112,
52
+ "file_path": "results/SnowballTarget1/SnowballTarget.onnx",
53
+ "reward": 24.90909090909091,
54
+ "creation_time": 1734830575.6804585,
55
+ "auxillary_file_paths": [
56
+ "results/SnowballTarget1/SnowballTarget/SnowballTarget-200112.pt"
57
+ ]
58
+ }
59
+ },
60
+ "metadata": {
61
+ "stats_format_version": "0.3.0",
62
+ "mlagents_version": "1.2.0.dev0",
63
+ "torch_version": "2.5.1+cu124"
64
+ }
65
+ }