BreezeWu commited on
Commit
43e5d82
·
verified ·
1 Parent(s): 6653941

Add torch_cuda deployment: checkpoints + updated manifest (ascend_310p preserved)

Browse files
assets/adapter.json CHANGED
@@ -1,9 +1,8 @@
1
  {
2
  "diffusion_steps": 10,
3
- "family": "graspgen",
 
4
  "geometry": {
5
- "ball_query_order": "input_index",
6
- "fps_start_index": 0,
7
  "npoints": [
8
  256,
9
  64
@@ -18,8 +17,18 @@
18
  ]
19
  },
20
  "grasp_batch_size": 1000,
 
 
21
  "kappa": 2.02217,
 
 
22
  "point_count": 2048,
23
  "postprocessing": "grasp-pose-matrix-confidence-sorted-v1",
24
- "preprocessing": "object-points-outlier-filtered-centered-kappa-scaled-v1"
 
 
 
 
 
 
25
  }
 
1
  {
2
  "diffusion_steps": 10,
3
+ "discriminator_checkpoint": "assets/discriminator_checkpoint.pth",
4
+ "generator_checkpoint": "assets/generator_checkpoint.pth",
5
  "geometry": {
 
 
6
  "npoints": [
7
  256,
8
  64
 
17
  ]
18
  },
19
  "grasp_batch_size": 1000,
20
+ "gripper_config": "assets/graspgen_config.yml",
21
+ "interface": "tensor_model",
22
  "kappa": 2.02217,
23
+ "model_type": "graspgen",
24
+ "operation": "generate_grasps",
25
  "point_count": 2048,
26
  "postprocessing": "grasp-pose-matrix-confidence-sorted-v1",
27
+ "preprocessing": "object-points-outlier-filtered-centered-kappa-scaled-v1",
28
+ "source_sha256": {
29
+ "assets/discriminator_checkpoint.pth": "52f68d3cd3decb71499e084fdb88808d174419a72cd9ef38f821083a4409895d",
30
+ "assets/generator_checkpoint.pth": "fe8497108e39d8fc50be06cd7df22a2f680e0495e713d24c3104616f291e00dd",
31
+ "assets/graspgen_config.yml": "93804f423ec02def08add164d83379212204ddc33779cd273ffffdacf94f67f3"
32
+ },
33
+ "torch_module_loader": "perception_service.torch_model_loaders:load_graspgen"
34
  }
assets/discriminator_checkpoint.pth ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:52f68d3cd3decb71499e084fdb88808d174419a72cd9ef38f821083a4409895d
3
+ size 39427928
assets/generator_checkpoint.pth ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:fe8497108e39d8fc50be06cd7df22a2f680e0495e713d24c3104616f291e00dd
3
+ size 471436414
assets/graspgen_config.yml ADDED
@@ -0,0 +1,245 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ data:
2
+ root_dir: ''
3
+ tasks:
4
+ - pick
5
+ num_points: 2048
6
+ num_object_points: 1024
7
+ cam_coord: false
8
+ num_rotations: 64
9
+ grid_resolution: 0.01
10
+ jitter_scale: 0.0
11
+ contact_radius: 0.005
12
+ dist_above_table: 0.002
13
+ robot_prob: 1.0
14
+ offset_bins:
15
+ - 0
16
+ - 0.00794435329
17
+ - 0.0158887021
18
+ - 0.0238330509
19
+ - 0.0317773996
20
+ - 0.0397217484
21
+ - 0.0476660972
22
+ - 0.055610446
23
+ - 0.0635547948
24
+ - 0.0714991435
25
+ - 0.08
26
+ random_seed: -1
27
+ rotation_augmentation: false
28
+ add_depth_noise: false
29
+ downsample_points: false
30
+ downsample_to_fixed_batch_size: false
31
+ dataset_cls: ObjectPickDataset
32
+ load_patch: false
33
+ load_discriminator_dataset: false
34
+ patch_width: 256
35
+ prob_point_cloud: -1
36
+ object_root_dir: ''
37
+ grasp_root_dir: ''
38
+ dataset_name: acronym
39
+ dataset_version: v1
40
+ gripper_name: robotiq_2f_140
41
+ num_grasps_per_object: 1000
42
+ load_contact: false
43
+ prefiltering: false
44
+ discriminator_ratio:
45
+ - 0.5
46
+ - 0.2
47
+ - 0.25
48
+ - 0.05
49
+ - 0.0
50
+ visualize_batch: false
51
+ onpolicy_dataset_dir: null
52
+ onpolicy_dataset_h5_path: null
53
+ redundancy: 1
54
+ preload_dataset: false
55
+ m2t2:
56
+ scene_encoder:
57
+ type: pointnet2_msg
58
+ num_points: 16384
59
+ downsample: 4
60
+ radius: 0.02
61
+ radius_mult: 2
62
+ use_rgb: false
63
+ object_encoder:
64
+ type: pointnet2_msg_cls
65
+ num_points: 1024
66
+ downsample: 4
67
+ radius: 0.02
68
+ radius_mult: 2
69
+ use_rgb: false
70
+ contact_decoder:
71
+ mask_feature: res0
72
+ in_features:
73
+ - res1
74
+ - res2
75
+ - res3
76
+ place_feature: res4
77
+ embed_dim: 256
78
+ feedforward_dim: 512
79
+ num_scales: 3
80
+ num_layers: 3
81
+ num_heads: 8
82
+ num_grasp_queries: 1000
83
+ num_place_queries: 0
84
+ use_attn_mask: true
85
+ use_task_embed: false
86
+ activation: GELU
87
+ pos_enc: new
88
+ action_decoder:
89
+ use_embed: false
90
+ conf_thresh: 0.5
91
+ max_num_pred: null
92
+ hidden_dim: 256
93
+ num_layers: 2
94
+ activation: GELU
95
+ offset_bins:
96
+ - 0
97
+ - 0.00794435329
98
+ - 0.0158887021
99
+ - 0.0238330509
100
+ - 0.0317773996
101
+ - 0.0397217484
102
+ - 0.0476660972
103
+ - 0.055610446
104
+ - 0.0635547948
105
+ - 0.0714991435
106
+ - 0.08
107
+ gripper_depth: 0.1034
108
+ gripper_name: robotiq_2f_140
109
+ matcher:
110
+ object_weight: 2.0
111
+ bce_weight: 5.0
112
+ dice_weight: 5.0
113
+ grasp_loss:
114
+ object_weight: 2.0
115
+ not_object_weight: 0.1
116
+ pseudo_ce_weight: 0.0
117
+ bce_topk: 512
118
+ bce_weight: 5.0
119
+ dice_weight: 5.0
120
+ deep_supervision: true
121
+ recompute_indices: true
122
+ adds_pred2gt: 100.0
123
+ adds_gt2pred: 0.0
124
+ adds_per_obj: false
125
+ contact_dir: 0.0
126
+ approach_dir: 0.0
127
+ offset: 1.0
128
+ offset_bin_weights:
129
+ - 0.16652107
130
+ - 0.21488856
131
+ - 0.37031708
132
+ - 0.55618503
133
+ - 0.75124664
134
+ - 0.93943357
135
+ - 1.07824539
136
+ - 1.19423112
137
+ - 1.55731375
138
+ - 3.17161779
139
+ gripper_name: robotiq_2f_140
140
+ place_loss:
141
+ bce_topk: 1024
142
+ bce_weight: 5.0
143
+ dice_weight: 5.0
144
+ deep_supervision: true
145
+ diffusion:
146
+ obs_backbone: pointnet
147
+ checkpoint_object_encoder_pretrained: null
148
+ num_embed_dim: 256
149
+ num_obs_dim: 512
150
+ diffusion_embed_dim: 512
151
+ image_size: 256
152
+ num_diffusion_iters: 10
153
+ num_diffusion_iters_eval: 10
154
+ compositional_schedular: true
155
+ loss_pointmatching: false
156
+ loss_l1_pos: true
157
+ loss_l1_rot: true
158
+ grasp_repr: r3_so3
159
+ kappa: 2.02217
160
+ clip_sample: true
161
+ beta_schedule: squaredcos_cap_v2
162
+ npn_architecture: ffn
163
+ attention: cat_attn
164
+ gripper_name: robotiq_2f_140
165
+ pose_repr: mlp
166
+ num_grasps_per_object: 500
167
+ ptv3:
168
+ grid_size: 0.01
169
+ discriminator:
170
+ checkpoint: graspgen_robotiq_2f_140_dis.pth
171
+ checkpoint_object_encoder_pretrained: null
172
+ obs_backbone: pointnet
173
+ num_embed_dim: 256
174
+ num_obs_dim: 512
175
+ grasp_repr: r3_so3
176
+ pose_repr: mlp
177
+ topk_ratio: 0.75
178
+ kappa: 2.02217
179
+ gripper_name: robotiq_2f_140
180
+ ptv3:
181
+ grid_size: 0.01
182
+ optimizer:
183
+ type: ADAMW
184
+ base_batch_size: 128
185
+ base_lr: 0.0008
186
+ backbone_multiplier: 1.0
187
+ grad_clip: -1
188
+ weight_decay: 0.05
189
+ lr_scale_multiplier: 1.0
190
+ lr: 5.0e-05
191
+ momentum: 0.9
192
+ train:
193
+ model_name: m2t2
194
+ num_gpus: 1
195
+ port: '1234'
196
+ mask_thresh: 0.0
197
+ batch_size: 8
198
+ num_workers: 8
199
+ num_epochs: 160
200
+ print_freq: 25
201
+ plot_freq: 50
202
+ save_freq: 10
203
+ eval_freq: 5
204
+ checkpoint: null
205
+ log_dir: ''
206
+ num_scenes: null
207
+ debug: false
208
+ debug_ddp: false
209
+ eval:
210
+ model_name: diffusion-discriminator
211
+ task: pick
212
+ split: valid
213
+ first_scene: -1
214
+ last_scene: 1000
215
+ scene: null
216
+ acronym_dir: ''
217
+ checkpoint: graspgen_robotiq_2f_140_gen.pth
218
+ output_dir: null
219
+ exp_name: null
220
+ cam_coord: false
221
+ object_thresh: 0.0
222
+ mask_thresh: 0.6
223
+ seed_thresh: null
224
+ num_seed_grasps: 150
225
+ max_num_grasps: 200
226
+ retract: 0.0
227
+ grid_res: 0.01
228
+ placement_height: 0.02
229
+ placement_vis_radius: 0.2
230
+ batch_size: 1
231
+ num_workers: 1
232
+ print_freq: 1
233
+ num_procs: 4
234
+ num_vis: 5
235
+ num_runs: 1
236
+ debug: true
237
+ scene_file: ''
238
+ output_file: ''
239
+ meshcat:
240
+ visualize: true
241
+ point_size: 0.01
242
+ line_width: 2
243
+ obj:
244
+ scale: 1.0
245
+ num_sample_points: 2024
inference_manifest.json CHANGED
@@ -3,15 +3,24 @@
3
  "digest": {
4
  "algorithm": "sha256",
5
  "scope": "structure",
6
- "value": "b0a4edd6424e49ee3502079604ecc4fd972b59acd2f527d8af672da09c81b599"
7
  },
8
  "files": [
 
 
 
 
 
 
 
 
 
9
  {
10
  "path": "assets/adapter.json"
11
  }
12
  ],
13
- "name": "graspgen",
14
- "revision": 4,
15
  "uuid": "b300dc60-3bd4-4a64-8f70-670618235cbe"
16
  },
17
  "deployments": {
@@ -372,6 +381,24 @@
372
  }
373
  },
374
  "uuid": "11d63596-aa79-414d-ad3c-b63c4057fbd1"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
375
  }
376
  },
377
  "model": {
 
3
  "digest": {
4
  "algorithm": "sha256",
5
  "scope": "structure",
6
+ "value": "3a71ce928384178e8a5b95bdb1214a6919553ba53fde9ca5bb14594dddad9bdc"
7
  },
8
  "files": [
9
+ {
10
+ "path": "assets/graspgen_config.yml"
11
+ },
12
+ {
13
+ "path": "assets/generator_checkpoint.pth"
14
+ },
15
+ {
16
+ "path": "assets/discriminator_checkpoint.pth"
17
+ },
18
  {
19
  "path": "assets/adapter.json"
20
  }
21
  ],
22
+ "name": "grasp",
23
+ "revision": 5,
24
  "uuid": "b300dc60-3bd4-4a64-8f70-670618235cbe"
25
  },
26
  "deployments": {
 
381
  }
382
  },
383
  "uuid": "11d63596-aa79-414d-ad3c-b63c4057fbd1"
384
+ },
385
+ "torch_cuda": {
386
+ "execution_contract": {
387
+ "cancellation_granularity": "request_boundary",
388
+ "execution_structure": "direct",
389
+ "state_scope": "request"
390
+ },
391
+ "revision": 1,
392
+ "runtime_profile": {
393
+ "backend": "torch",
394
+ "profile": {
395
+ "device": "cuda"
396
+ },
397
+ "target": {
398
+ "runtime": "torch"
399
+ }
400
+ },
401
+ "uuid": "2bbc4acc-5ce8-44c9-aa2d-74666d06f4f2"
402
  }
403
  },
404
  "model": {
inference_manifest.schema-v2.backup.json ADDED
@@ -0,0 +1,405 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "bundle": {
3
+ "digest": {
4
+ "algorithm": "sha256",
5
+ "scope": "structure",
6
+ "value": "c2fa61f0f0cfc818104380861ca54a97de3c058696075965e6a9e31ce49506c0"
7
+ },
8
+ "files": [
9
+ {
10
+ "path": "assets/adapter.json"
11
+ },
12
+ {
13
+ "path": "assets/artifact-digests.json"
14
+ }
15
+ ],
16
+ "name": "grasp",
17
+ "revision": 3,
18
+ "uuid": "b300dc60-3bd4-4a64-8f70-670618235cbe"
19
+ },
20
+ "deployments": {
21
+ "ascend_310p": {
22
+ "artifacts": {
23
+ "denoiser": {
24
+ "format": "om",
25
+ "path": "artifacts/ascend/ascend_310p/denoiser.om"
26
+ },
27
+ "discriminator_encoder_head": {
28
+ "format": "om",
29
+ "path": "artifacts/ascend/ascend_310p/discriminator_encoder_head.om"
30
+ },
31
+ "discriminator_head": {
32
+ "format": "om",
33
+ "path": "artifacts/ascend/ascend_310p/discriminator_head.om"
34
+ },
35
+ "discriminator_sa1": {
36
+ "format": "om",
37
+ "path": "artifacts/ascend/ascend_310p/discriminator_sa1.om"
38
+ },
39
+ "discriminator_sa2": {
40
+ "format": "om",
41
+ "path": "artifacts/ascend/ascend_310p/discriminator_sa2.om"
42
+ },
43
+ "generator_encoder_head": {
44
+ "format": "om",
45
+ "path": "artifacts/ascend/ascend_310p/generator_encoder_head.om"
46
+ },
47
+ "generator_sa1": {
48
+ "format": "om",
49
+ "path": "artifacts/ascend/ascend_310p/generator_sa1.om"
50
+ },
51
+ "generator_sa2": {
52
+ "format": "om",
53
+ "path": "artifacts/ascend/ascend_310p/generator_sa2.om"
54
+ }
55
+ },
56
+ "backend": "ascend",
57
+ "bindings": {
58
+ "denoiser": {
59
+ "inputs": [
60
+ {
61
+ "dtype": "float32",
62
+ "index": 0,
63
+ "runtime_name": "object_embedding",
64
+ "semantic": "internal.graspgen.generator_embedding",
65
+ "shape": [
66
+ 1,
67
+ 512
68
+ ]
69
+ },
70
+ {
71
+ "dtype": "float32",
72
+ "index": 1,
73
+ "runtime_name": "sample",
74
+ "semantic": "host.graspgen.diffusion_sample",
75
+ "shape": [
76
+ 1000,
77
+ 6
78
+ ]
79
+ },
80
+ {
81
+ "dtype": "float32",
82
+ "index": 2,
83
+ "runtime_name": "timestep",
84
+ "semantic": "host.graspgen.diffusion_time",
85
+ "shape": [
86
+ 1
87
+ ]
88
+ }
89
+ ],
90
+ "outputs": [
91
+ {
92
+ "dtype": "float32",
93
+ "index": 0,
94
+ "runtime_name": "PartitionedCall_/prediction_head/prediction_head.4/Gemm_add_130:0:predicted_noise",
95
+ "semantic": "host.graspgen.predicted_noise",
96
+ "shape": [
97
+ 1000,
98
+ 6
99
+ ]
100
+ }
101
+ ]
102
+ },
103
+ "discriminator_encoder_head": {
104
+ "inputs": [
105
+ {
106
+ "dtype": "float32",
107
+ "index": 0,
108
+ "layout": "NCHW",
109
+ "runtime_name": "grouped_features",
110
+ "semantic": "host.graspgen.global_features",
111
+ "shape": [
112
+ 1,
113
+ 259,
114
+ 1,
115
+ 64
116
+ ]
117
+ }
118
+ ],
119
+ "outputs": [
120
+ {
121
+ "dtype": "float32",
122
+ "index": 0,
123
+ "runtime_name": "PartitionedCall_/prediction_head/prediction_head.4/Gemm_add_17:0:object_embedding",
124
+ "semantic": "internal.graspgen.discriminator_embedding",
125
+ "shape": [
126
+ 1,
127
+ 512
128
+ ]
129
+ }
130
+ ]
131
+ },
132
+ "discriminator_head": {
133
+ "inputs": [
134
+ {
135
+ "dtype": "float32",
136
+ "index": 0,
137
+ "runtime_name": "object_embedding",
138
+ "semantic": "internal.graspgen.discriminator_embedding",
139
+ "shape": [
140
+ 1,
141
+ 512
142
+ ]
143
+ },
144
+ {
145
+ "dtype": "float32",
146
+ "index": 1,
147
+ "runtime_name": "grasp_rt",
148
+ "semantic": "host.graspgen.grasp_rt",
149
+ "shape": [
150
+ 1000,
151
+ 6
152
+ ]
153
+ }
154
+ ],
155
+ "outputs": [
156
+ {
157
+ "dtype": "float32",
158
+ "index": 0,
159
+ "runtime_name": "PartitionedCall_/prediction_head/prediction_head.4/Gemm_add_24:0:logits",
160
+ "semantic": "host.graspgen.grasp_logits",
161
+ "shape": [
162
+ 1000,
163
+ 1
164
+ ]
165
+ },
166
+ {
167
+ "dtype": "float32",
168
+ "index": 1,
169
+ "runtime_name": "/Sigmoid:0:confidence",
170
+ "semantic": "host.graspgen.grasp_scores",
171
+ "shape": [
172
+ 1000,
173
+ 1
174
+ ]
175
+ }
176
+ ]
177
+ },
178
+ "discriminator_sa1": {
179
+ "inputs": [
180
+ {
181
+ "dtype": "float32",
182
+ "index": 0,
183
+ "layout": "NCHW",
184
+ "runtime_name": "grouped_features",
185
+ "semantic": "host.graspgen.grouped_points",
186
+ "shape": [
187
+ 1,
188
+ 3,
189
+ 256,
190
+ 64
191
+ ]
192
+ }
193
+ ],
194
+ "outputs": [
195
+ {
196
+ "dtype": "float32",
197
+ "index": 0,
198
+ "runtime_name": "PartitionedCall_/ReduceMax_ReduceMax_1:0:features",
199
+ "semantic": "host.graspgen.features",
200
+ "shape": [
201
+ 1,
202
+ 128,
203
+ 256
204
+ ]
205
+ }
206
+ ]
207
+ },
208
+ "discriminator_sa2": {
209
+ "inputs": [
210
+ {
211
+ "dtype": "float32",
212
+ "index": 0,
213
+ "layout": "NCHW",
214
+ "runtime_name": "grouped_features",
215
+ "semantic": "host.graspgen.stage2_features",
216
+ "shape": [
217
+ 1,
218
+ 131,
219
+ 64,
220
+ 128
221
+ ]
222
+ }
223
+ ],
224
+ "outputs": [
225
+ {
226
+ "dtype": "float32",
227
+ "index": 0,
228
+ "runtime_name": "PartitionedCall_/ReduceMax_ReduceMax_1:0:features",
229
+ "semantic": "host.graspgen.features",
230
+ "shape": [
231
+ 1,
232
+ 256,
233
+ 64
234
+ ]
235
+ }
236
+ ]
237
+ },
238
+ "generator_encoder_head": {
239
+ "inputs": [
240
+ {
241
+ "dtype": "float32",
242
+ "index": 0,
243
+ "layout": "NCHW",
244
+ "runtime_name": "grouped_features",
245
+ "semantic": "host.graspgen.global_features",
246
+ "shape": [
247
+ 1,
248
+ 259,
249
+ 1,
250
+ 64
251
+ ]
252
+ }
253
+ ],
254
+ "outputs": [
255
+ {
256
+ "dtype": "float32",
257
+ "index": 0,
258
+ "runtime_name": "PartitionedCall_/prediction_head/prediction_head.4/Gemm_add_17:0:object_embedding",
259
+ "semantic": "internal.graspgen.generator_embedding",
260
+ "shape": [
261
+ 1,
262
+ 512
263
+ ]
264
+ }
265
+ ]
266
+ },
267
+ "generator_sa1": {
268
+ "inputs": [
269
+ {
270
+ "dtype": "float32",
271
+ "index": 0,
272
+ "layout": "NCHW",
273
+ "runtime_name": "grouped_features",
274
+ "semantic": "host.graspgen.grouped_points",
275
+ "shape": [
276
+ 1,
277
+ 3,
278
+ 256,
279
+ 64
280
+ ]
281
+ }
282
+ ],
283
+ "outputs": [
284
+ {
285
+ "dtype": "float32",
286
+ "index": 0,
287
+ "runtime_name": "PartitionedCall_/ReduceMax_ReduceMax_1:0:features",
288
+ "semantic": "host.graspgen.features",
289
+ "shape": [
290
+ 1,
291
+ 128,
292
+ 256
293
+ ]
294
+ }
295
+ ]
296
+ },
297
+ "generator_sa2": {
298
+ "inputs": [
299
+ {
300
+ "dtype": "float32",
301
+ "index": 0,
302
+ "layout": "NCHW",
303
+ "runtime_name": "grouped_features",
304
+ "semantic": "host.graspgen.stage2_features",
305
+ "shape": [
306
+ 1,
307
+ 131,
308
+ 64,
309
+ 128
310
+ ]
311
+ }
312
+ ],
313
+ "outputs": [
314
+ {
315
+ "dtype": "float32",
316
+ "index": 0,
317
+ "runtime_name": "PartitionedCall_/ReduceMax_ReduceMax_1:0:features",
318
+ "semantic": "host.graspgen.features",
319
+ "shape": [
320
+ 1,
321
+ 256,
322
+ 64
323
+ ]
324
+ }
325
+ ]
326
+ }
327
+ },
328
+ "device_links": [
329
+ {
330
+ "consumer": "denoiser",
331
+ "lifetime": "inference",
332
+ "owner": "producer",
333
+ "producer": "generator_encoder_head",
334
+ "producer_binding": "output",
335
+ "semantic": "internal.graspgen.generator_embedding",
336
+ "transport": "device_pointer"
337
+ },
338
+ {
339
+ "consumer": "discriminator_head",
340
+ "lifetime": "inference",
341
+ "owner": "producer",
342
+ "producer": "discriminator_encoder_head",
343
+ "producer_binding": "output",
344
+ "semantic": "internal.graspgen.discriminator_embedding",
345
+ "transport": "device_pointer"
346
+ }
347
+ ],
348
+ "execution": [
349
+ "generator_sa1",
350
+ "generator_sa2",
351
+ "generator_encoder_head",
352
+ "discriminator_sa1",
353
+ "discriminator_sa2",
354
+ "discriminator_encoder_head",
355
+ "denoiser",
356
+ "discriminator_head"
357
+ ],
358
+ "revision": 1,
359
+ "target": {
360
+ "runtime": "acl",
361
+ "soc": "Ascend310P1"
362
+ },
363
+ "uuid": "11d63596-aa79-414d-ad3c-b63c4057fbd1"
364
+ }
365
+ },
366
+ "model": {
367
+ "family": "graspgen",
368
+ "inputs": [
369
+ {
370
+ "dtype": "float32",
371
+ "semantic": "observation.object_points",
372
+ "shape": [
373
+ -1,
374
+ 3
375
+ ]
376
+ }
377
+ ],
378
+ "kind": "perception",
379
+ "operation": "",
380
+ "outputs": [
381
+ {
382
+ "dtype": "float32",
383
+ "semantic": "grasp.poses",
384
+ "shape": [
385
+ -1,
386
+ 4,
387
+ 4
388
+ ]
389
+ },
390
+ {
391
+ "dtype": "float32",
392
+ "semantic": "grasp.confidence",
393
+ "shape": [
394
+ -1
395
+ ]
396
+ }
397
+ ],
398
+ "semantic_identity": {
399
+ "logical_model_revision": "graspgen@v2",
400
+ "output_semantics": "grasp-pose-matrix-confidence-sorted-v1",
401
+ "preprocessing_contract": "object-points-outlier-filtered-centered-kappa-scaled-v1"
402
+ }
403
+ },
404
+ "schema_version": 2
405
+ }