{ "format": 1, "base_model": { "repo": "TencentARC/Pixal3D", "revision": "0b31f9160aa400719af409098bff7936a932f726" }, "key_convention": "Each key is 'backbone.model..lora_A.weight' or 'backbone.model..lora_B.weight', where names an nn.Linear in the state dict of the base flow model given by base_submodel (minus its '.weight' suffix); lora_A has shape [rank, in_features], lora_B has shape [out_features, rank], and the layer's weight update is (alpha / rank) * lora_B @ lora_A; example: 'backbone.model.blocks.0.self_attn.to_qkv.lora_A.weight'.", "fold_rule": { "none": "The adapters stay separate in float32: y = base(x) + (lora_B(lora_A(x.float())) * (alpha / rank)).to(base(x).dtype).", "bf16": "At load time each adapted weight W (bfloat16, the dtype of the base model's transformer blocks) is replaced by W + ((lora_B.float() @ lora_A.float()) * (alpha / rank)).to(bfloat16), the sum being taken in bfloat16, and the adapters are removed." }, "students": { "structure": { "file": "structure_student.safetensors", "sha256": "a938130271c96eaaf67643bb428aa2aa8e53033b09608ea3eedc5531d9b97396", "size_bytes": 1274085008, "base_submodel": "ckpts/ss_flow_img_dit_1_3B_64_bf16", "pipeline_key": "sparse_structure_flow_model", "lora": { "rank": 256, "alpha": 256, "target_modules": [ "self_attn.to_qkv", "self_attn.to_out", "cross_attn.cross_attn_block.to_q", "cross_attn.cross_attn_block.to_kv", "cross_attn.cross_attn_block.to_out", "cross_attn.proj_linear", "mlp.mlp.0", "mlp.mlp.2" ], "num_blocks": 30, "num_adapters": 240, "num_tensors": 480, "num_elements": 318504960 }, "steps": { "num_steps": 4, "t": [ 1.0, 0.9, 0.75, 0.6, 0.0 ], "grid_indices": [ 0, 3, 6, 8, 12 ], "teacher_grid": "t = linspace(1, 0, 13) warped by t' = 3t / (1 + 2t); grid_indices index this grid", "update": "euler", "guidance_strength": 1.0 }, "fold": "none", "dtype": "float32", "source_checkpoint_sha256": "be04198a3751c999343510611e627ff92a696b02bdeb83ec8ea93c966663c1f8", "training_updates": 500 }, "coarse_shape": { "file": "coarse_shape_student.safetensors", "sha256": "59be306522816b4d1defa525cfecf3f9666a161902b245fee387cd7a34fb9a66", "size_bytes": 1305542328, "base_submodel": "ckpts/slat_flow_img2shape_dit_1_3B_512_bf16", "pipeline_key": "shape_slat_flow_model_512", "lora": { "rank": 256, "alpha": 256, "target_modules": [ "self_attn.to_qkv", "self_attn.to_out", "cross_attn.cross_attn_block.to_q", "cross_attn.cross_attn_block.to_kv", "cross_attn.cross_attn_block.to_out", "cross_attn.proj_linear", "mlp.mlp.0", "mlp.mlp.2" ], "num_blocks": 30, "num_adapters": 240, "num_tensors": 480, "num_elements": 326369280 }, "steps": { "num_steps": 1, "t": [ 1.0, 0.0 ], "update": "x0_prediction", "guidance_strength": 1.0, "x0_formula": "x0 = (1 - s) * x_t - (s + (1 - s) * t) * v with s = 1e-5, in float64" }, "fold": "none", "dtype": "float32", "source_checkpoint_sha256": "46bc526388cc55f226d5747e64d7cd8a32fbe9153fdd0ff67eac7695ed148e1f", "training_updates": 3000 }, "fine_shape": { "file": "fine_shape_student.safetensors", "sha256": "6beb37c82f5f618f84d9bc988564d41e3971ff85c42ef06217e580186e7dd583", "size_bytes": 1305542328, "base_submodel": "ckpts/slat_flow_img2shape_dit_1_3B_1024_bf16", "pipeline_key": "shape_slat_flow_model_1024", "lora": { "rank": 256, "alpha": 256, "target_modules": [ "self_attn.to_qkv", "self_attn.to_out", "cross_attn.cross_attn_block.to_q", "cross_attn.cross_attn_block.to_kv", "cross_attn.cross_attn_block.to_out", "cross_attn.proj_linear", "mlp.mlp.0", "mlp.mlp.2" ], "num_blocks": 30, "num_adapters": 240, "num_tensors": 480, "num_elements": 326369280 }, "steps": { "num_steps": 1, "t": [ 1.0, 0.0 ], "update": "x0_prediction", "guidance_strength": 1.0, "x0_formula": "x0 = (1 - s) * x_t - (s + (1 - s) * t) * v with s = 1e-5, in float64" }, "fold": "bf16", "dtype": "float32", "source_checkpoint_sha256": "9fa67dd330e2dcfaf751e281d19ed8cc3e9c949c97a1a0d0d1a5940bafda070c", "training_updates": 2000 }, "texture": { "file": "texture_student.safetensors", "sha256": "ecc4ae096358120cde9ef2a6bbdff8bfee5c04e5f3bc49db84183d0f7d37887c", "size_bytes": 1305542328, "base_submodel": "ckpts/slat_flow_imgshape2tex_dit_1_3B_1024_bf16", "pipeline_key": "tex_slat_flow_model_1024", "lora": { "rank": 256, "alpha": 256, "target_modules": [ "self_attn.to_qkv", "self_attn.to_out", "cross_attn.cross_attn_block.to_q", "cross_attn.cross_attn_block.to_kv", "cross_attn.cross_attn_block.to_out", "cross_attn.proj_linear", "mlp.mlp.0", "mlp.mlp.2" ], "num_blocks": 30, "num_adapters": 240, "num_tensors": 480, "num_elements": 326369280 }, "steps": { "num_steps": 2, "k": 2, "m": 6, "t": [ 1.0, 0.75, 0.0 ], "grid_indices": [ 0, 6, 12 ], "teacher_grid": "t = linspace(1, 0, 13) warped by t' = 3t / (1 + 2t); grid_indices index this grid", "update": "euler", "guidance_strength": 1.0 }, "fold": "bf16", "dtype": "float32", "source_checkpoint_sha256": "4d8c96e111239c08670fe7cf88391ac024e2aa70b952e9f3714149c36ccb970f", "training_updates": 3000 } } }