diff --git a/.gitattributes b/.gitattributes index d12abee533a836023b0d099484f0d5b8e47fce48..5a39d01c0f814dbaeaa5d632d2796b8f850e19d6 100644 --- a/.gitattributes +++ b/.gitattributes @@ -40,3 +40,4 @@ qwen35-08b-fp32-int8-g32-home-token-major-v2/tokenizer/tokenizer.json filter=lfs qwen35-2b-fp32-int8-g32-home-token-major-v2/graph.json filter=lfs diff=lfs merge=lfs -text qwen35-2b-fp32-int8-g32-home-token-major-v2/tokenizer/tokenizer.json filter=lfs diff=lfs merge=lfs -text qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/graph.json filter=lfs diff=lfs merge=lfs -text +qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/tokenizer/tokenizer.json filter=lfs diff=lfs merge=lfs -text diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/228e9c354122040cd7c70f0bcd9445c92011bf85343add619aeb51846c885636.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/228e9c354122040cd7c70f0bcd9445c92011bf85343add619aeb51846c885636.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..a3a4188ed79887e3627e2dbac0c7d8ad33e4f4f6 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/228e9c354122040cd7c70f0bcd9445c92011bf85343add619aeb51846c885636.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 64u; +if (i >= 48u) { return; } +out[i] = i32(b0[i]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/234987ec68497956ea7aef8e3f44c8a73dbe4c1519165d123946bedbb4d18e26.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/234987ec68497956ea7aef8e3f44c8a73dbe4c1519165d123946bedbb4d18e26.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..f6c451610050d5332f2e96fe27fb0fc3d8359841 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/234987ec68497956ea7aef8e3f44c8a73dbe4c1519165d123946bedbb4d18e26.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 2048u; +if (i >= 2048u) { return; } +out[i] = f32(b0[((i / 2048u) % 1u) * 2048u + ((i / 128u) % 16u) * 128u + 0u * 128u + ((i / 1u) % 128u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/237458dff084b2aa9ccba5578da3b2a0b062951575364d1464250baca3fdac5a.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/237458dff084b2aa9ccba5578da3b2a0b062951575364d1464250baca3fdac5a.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..3518ecf411c702ffbcb35673540ae16994c0490c --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/237458dff084b2aa9ccba5578da3b2a0b062951575364d1464250baca3fdac5a.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 32768u; +if (i >= 32768u) { return; } +out[i] = f32(f32(b0[i]) * f32(b0[i])); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/242b7d51c19c9857a096c2ae1f7b72ebd410100a1542c51390950adbb8aed35c.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/242b7d51c19c9857a096c2ae1f7b72ebd410100a1542c51390950adbb8aed35c.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..857bfbcb3d394a715e3ca420ff22fbda606d0fb2 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/242b7d51c19c9857a096c2ae1f7b72ebd410100a1542c51390950adbb8aed35c.wgsl @@ -0,0 +1,17 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 2048u; +if (i >= 2048u) { return; } +let token = i32(b0[i / 2048u]); +if (token < 32768 || token >= 65536) { out[i] = f32(0.0); return; } +out[i] = f32(unpack_bf16_1(u32(token - 32768) * 2048u + i % 2048u)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/246ea07912fcd8a9073926e863141111eb4091b52cc980a6eef148beed122fc4.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/246ea07912fcd8a9073926e863141111eb4091b52cc980a6eef148beed122fc4.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..8956f47ecd984bb7348dc4845cd50216c449dbec --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/246ea07912fcd8a9073926e863141111eb4091b52cc980a6eef148beed122fc4.wgsl @@ -0,0 +1,24 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +var factor: f32; +@compute @workgroup_size(64) +fn main(@builtin(workgroup_id) group: vec3, @builtin(local_invocation_id) local: vec3) { + let row = group.x + group.y * 32u; + if (row >= 32u) { return; } + let lane = local.x; + if (lane == 0u) { + var total = 0.0; + for (var j = 0u; j < 256u; j++) { + let v = f32(b0[row * 256u + j]); + total += v * v; + } + factor = inverseSqrt(total / 256.0 + 1e-06); + } + workgroupBarrier(); + for (var p = lane; p < 256u; p += 64u) { + let i = row * 256u + p; + out[i] = f32(f32(b0[row * 256u + p]) * factor * (f32(b1[p]) + 1.0)); + } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/2505a613f10a5ed1c70a3f80a16dd566da65caa2d7d85083e23f85a30844d63e.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/2505a613f10a5ed1c70a3f80a16dd566da65caa2d7d85083e23f85a30844d63e.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..d9228ba10d283d2d3e7aa450cc7a1a2ae7a1fca7 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/2505a613f10a5ed1c70a3f80a16dd566da65caa2d7d85083e23f85a30844d63e.wgsl @@ -0,0 +1,11 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 98304u; +if (i >= 98304u) { return; } +let x = f32(b0[i]); let s = f32(f32(x / (1.0 + exp(-x)))); +out[i] = f32(s * f32(b1[i])); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/2622c3df557e0d2b8c61c86cb748cfcf7970ebce8750a37ef611b8cabdd152d6.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/2622c3df557e0d2b8c61c86cb748cfcf7970ebce8750a37ef611b8cabdd152d6.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..7d69c2c845270dc56099b63eaff36d5dffe3e312 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/2622c3df557e0d2b8c61c86cb748cfcf7970ebce8750a37ef611b8cabdd152d6.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 131072u; +if (i >= 131072u) { return; } +out[i] = f32(f32(b0[i]) + (f32(b1[((i / 4096u) % 4u) * 4096u + ((i / 1u) % 4096u) * 1u]) * 1.0)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/262399e4b2661342c29fddf17556e93608f7aead68939859c29fcc594f455f69.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/262399e4b2661342c29fddf17556e93608f7aead68939859c29fcc594f455f69.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..d45f0055637c2d0366a829b6f956a566a4abb058 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/262399e4b2661342c29fddf17556e93608f7aead68939859c29fcc594f455f69.wgsl @@ -0,0 +1,28 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +var tile_a: array; +var tile_b: array; +@compute @workgroup_size(8, 8) +fn main(@builtin(workgroup_id) group: vec3, @builtin(local_invocation_id) local: vec3) { + let row = group.y * 8u + local.y; + let col = group.x * 8u + local.x; + let i = (group.z * 4u + row) * 512u + col; + var acc = 0.0; + for (var tile = 0u; tile < 2048u; tile += 8u) { + tile_a[local.y * 8u + local.x] = 0.0; + tile_b[local.x * 8u + local.y] = 0.0; + if (row < 4u && tile + local.x < 2048u) { tile_a[local.y * 8u + local.x] = f32(b0[(group.z * 4u + row) * 2048u + tile + local.x]); } + if (group.x * 8u + local.y < 512u && tile + local.x < 2048u) { tile_b[local.x * 8u + local.y] = unpack_bf16_1((group.x * 8u + local.y) * 2048u + tile + local.x); } + workgroupBarrier(); + for (var p = 0u; p < 8u; p++) { acc += tile_a[local.y * 8u + p] * tile_b[p * 8u + local.x]; } + workgroupBarrier(); + } + if (row < 4u && col < 512u) { out[i] = f32(acc + 0.0); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/26cf6eb3b486d1652247ff130b05ed0e8c8560028eeba59acfc075b976bfdfce.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/26cf6eb3b486d1652247ff130b05ed0e8c8560028eeba59acfc075b976bfdfce.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..7018b9532a9e500c3ab541a52cb08ceeedd4810f --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/26cf6eb3b486d1652247ff130b05ed0e8c8560028eeba59acfc075b976bfdfce.wgsl @@ -0,0 +1,12 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 30720u; +if (i >= 30720u) { return; } +let coord = (i / 1u) % 5u; +if (coord >= 0u && coord < 4u) { out[i] = f32(b0[(i / 5u) * 4u + (coord - 0u) * 1u + i % 1u]); } +if (coord >= 4u && coord < 5u) { out[i] = f32(b1[(i / 5u) * 1u + (coord - 4u) * 1u + i % 1u]); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/2711a4a396071f4e99303d01d4854ccaa37a445f4b718ebd7b61cf1c37e56b48.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/2711a4a396071f4e99303d01d4854ccaa37a445f4b718ebd7b61cf1c37e56b48.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..8a950952abaa36f3937eab9390ad3807c223cb72 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/2711a4a396071f4e99303d01d4854ccaa37a445f4b718ebd7b61cf1c37e56b48.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 64u; +if (i >= 16u) { return; } +out[i] = f32(b0[((i / 16u) % 1u) * 16u + ((i / 1u) % 16u) * 1u + ((i / 1u) % 1u) * 16u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/2792ae5841828bd5af938c10096abe385e63bb3ec2a22e850f146739433c12bf.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/2792ae5841828bd5af938c10096abe385e63bb3ec2a22e850f146739433c12bf.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..0f3bd77e9848ac9445e29bd95a2fdf093837ce6d --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/2792ae5841828bd5af938c10096abe385e63bb3ec2a22e850f146739433c12bf.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 8192u; +if (i >= 8192u) { return; } +out[i] = f32(b0[((i / 8192u) % 1u) * 8192u + ((i / 2048u) % 4u) * 256u + ((i / 256u) % 8u) * 1024u + ((i / 1u) % 256u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/28119aa01122c42bd26ceb37129fe0c95b2a9192163f6dabd90fe058b1e14c54.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/28119aa01122c42bd26ceb37129fe0c95b2a9192163f6dabd90fe058b1e14c54.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..990d32638060f680c62cfdca8e54470607c9e8b0 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/28119aa01122c42bd26ceb37129fe0c95b2a9192163f6dabd90fe058b1e14c54.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 4096u; +if (i >= 4096u) { return; } +let x = f32(b0[i]); +out[i] = f32(sin(x)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/2927b33e105f6ccb9c4352ebdf028ea856d0f47c23a7f6cb140d5acb45356c35.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/2927b33e105f6ccb9c4352ebdf028ea856d0f47c23a7f6cb140d5acb45356c35.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..fc2953e69f0e3bd139ea4af74e525ca1dcd69cd4 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/2927b33e105f6ccb9c4352ebdf028ea856d0f47c23a7f6cb140d5acb45356c35.wgsl @@ -0,0 +1,17 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 131072u; +if (i >= 131072u) { return; } +let token = i32(b0[i / 2048u]); +if (token < 229376 || token >= 248320) { out[i] = f32(0.0); return; } +out[i] = f32(unpack_bf16_1(u32(token - 229376) * 2048u + i % 2048u)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/2af7517eb26022ada8f8870fd9e1e1ef3da66b9c466336ee18d5295957820b27.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/2af7517eb26022ada8f8870fd9e1e1ef3da66b9c466336ee18d5295957820b27.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..0f6afccf1386d278d6b3e3a77cb049f5ae6debc3 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/2af7517eb26022ada8f8870fd9e1e1ef3da66b9c466336ee18d5295957820b27.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 417792u; +if (i >= 417792u) { return; } +out[i] = f32(b0[((i / 417792u) % 1u) * 436224u + ((i / 68u) % 6144u) * 71u + (((i / 1u) % 68u) * 1u + 0u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/2b02ece9784fc350cef18e08c962031f74dbc27c7d1cad3a13dda1cebb84b403.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/2b02ece9784fc350cef18e08c962031f74dbc27c7d1cad3a13dda1cebb84b403.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..53aab94b2ddcee6268333515fb036e8e56bfb105 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/2b02ece9784fc350cef18e08c962031f74dbc27c7d1cad3a13dda1cebb84b403.wgsl @@ -0,0 +1,11 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 393216u; +if (i >= 393216u) { return; } +let x = f32(b0[i]); let s = f32(f32(x / (1.0 + exp(-x)))); +out[i] = f32(s * f32(b1[i])); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/2b9e4b05ef5623d721dbe56b5812e551efcc6fd833d81064320e86fe94d8c670.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/2b9e4b05ef5623d721dbe56b5812e551efcc6fd833d81064320e86fe94d8c670.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..81712cc83c7e16718c1943957bc24f4abd662317 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/2b9e4b05ef5623d721dbe56b5812e551efcc6fd833d81064320e86fe94d8c670.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 4096u; +if (i >= 4096u) { return; } +out[i] = f32(f32(b0[i]) * 1.0); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/2bdeb3590b1ba05cf6e9c7e8245f8aa552a12dae84f9578c603c9cee081a82d4.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/2bdeb3590b1ba05cf6e9c7e8245f8aa552a12dae84f9578c603c9cee081a82d4.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..2b4e4e01f4485a846699c215551f49c2f1452a40 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/2bdeb3590b1ba05cf6e9c7e8245f8aa552a12dae84f9578c603c9cee081a82d4.wgsl @@ -0,0 +1,24 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +var factor: f32; +@compute @workgroup_size(64) +fn main(@builtin(workgroup_id) group: vec3, @builtin(local_invocation_id) local: vec3) { + let row = group.x + group.y * 16u; + if (row >= 16u) { return; } + let lane = local.x; + if (lane == 0u) { + var total = 0.0; + for (var j = 0u; j < 128u; j++) { + let v = f32(b0[row * 128u + j]); + total += v * v; + } + factor = inverseSqrt(total / 128.0 + 1e-06); + } + workgroupBarrier(); + for (var p = lane; p < 128u; p += 64u) { + let i = row * 128u + p; + out[i] = f32(f32(b0[row * 128u + p]) * factor * (f32(b1[p]) + 0.0)); + } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/2c0cca2a7b0198c317e68992e64f3fe9bba80b67204c2695c20c372471c150d3.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/2c0cca2a7b0198c317e68992e64f3fe9bba80b67204c2695c20c372471c150d3.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..05c73e3e7e256b462ade35867855db48ad811b19 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/2c0cca2a7b0198c317e68992e64f3fe9bba80b67204c2695c20c372471c150d3.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 262144u; +if (i >= 262144u) { return; } +out[i] = f32(f32(b0[((i / 16384u) % 16u) * 128u + ((i / 128u) % 128u) * 1u]) * f32(b1[((i / 16384u) % 16u) * 128u + ((i / 1u) % 128u) * 1u])); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/2c66dcac8fdd3caa9ff1e2441524070c21c24df9526bee44c49e765a8d4c8222.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/2c66dcac8fdd3caa9ff1e2441524070c21c24df9526bee44c49e765a8d4c8222.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..69e4d0a119bf0b802b68acfe45a1cce248ebc3be --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/2c66dcac8fdd3caa9ff1e2441524070c21c24df9526bee44c49e765a8d4c8222.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 16384u; +if (i >= 16384u) { return; } +out[i] = f32(b0[((i / 16384u) % 1u) * 32768u + ((i / 2048u) % 8u) * 4096u + ((i / 32u) % 64u) * 64u + (((i / 1u) % 32u) * 1u + 0u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/2c81f71954e9a2503ae8f3d84f319ffe366cdbb428ab45c22bddee91751c035c.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/2c81f71954e9a2503ae8f3d84f319ffe366cdbb428ab45c22bddee91751c035c.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..258eb4573fcc53236107af9cec1f070eec95f958 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/2c81f71954e9a2503ae8f3d84f319ffe366cdbb428ab45c22bddee91751c035c.wgsl @@ -0,0 +1,12 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 3973120u; +if (i >= 3973120u) { return; } +let coord = (i / 1u) % 248320u; +if (coord >= 0u && coord < 229376u) { out[i] = f32(b0[(i / 248320u) * 229376u + (coord - 0u) * 1u + i % 1u]); } +if (coord >= 229376u && coord < 248320u) { out[i] = f32(b1[(i / 248320u) * 18944u + (coord - 229376u) * 1u + i % 1u]); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/2cd4a533d32097a17641196f0cd315d170c587bc2b1c62b42b79d566d6fbf140.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/2cd4a533d32097a17641196f0cd315d170c587bc2b1c62b42b79d566d6fbf140.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..38310e6def55923b47e15db35ea758fb1a108a62 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/2cd4a533d32097a17641196f0cd315d170c587bc2b1c62b42b79d566d6fbf140.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 384u; +if (i >= 384u) { return; } +out[i] = f32(b0[((i / 128u) % 3u) * 128u + ((i / 128u) % 1u) * 128u + ((i / 4u) % 32u) * 1u + ((i / 1u) % 4u) * 32u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/2dd29b61b039fcdd7fbc3c94f629b24b6f81aa5b9923098837597359b295e40d.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/2dd29b61b039fcdd7fbc3c94f629b24b6f81aa5b9923098837597359b295e40d.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..9548ed074fc5f4321188aa402aa399a4525a86b3 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/2dd29b61b039fcdd7fbc3c94f629b24b6f81aa5b9923098837597359b295e40d.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 2048u; +if (i >= 2048u) { return; } +out[i] = f32(b0[((i / 2048u) % 1u) * 2048u + ((i / 2048u) % 1u) * 128u + ((i / 128u) % 16u) * 128u + ((i / 1u) % 128u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/2e1ce6ef01198780289fd4a35d8f86b5172595ed189cf931e8444091d49e8d3a.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/2e1ce6ef01198780289fd4a35d8f86b5172595ed189cf931e8444091d49e8d3a.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..2269a620c58e84a4903bb1135733ef2385d6af46 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/2e1ce6ef01198780289fd4a35d8f86b5172595ed189cf931e8444091d49e8d3a.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 64u; +if (i >= 64u) { return; } +out[i] = f32(f32(b0[i]) * 1.0); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/2e6f807cdf7ba91d7f531d9fb37768171ca71dc6278a9863bdba4a3dbac34fb3.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/2e6f807cdf7ba91d7f531d9fb37768171ca71dc6278a9863bdba4a3dbac34fb3.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..bbd2eff1c4b92a02f4f97ab331aef1de64914f4d --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/2e6f807cdf7ba91d7f531d9fb37768171ca71dc6278a9863bdba4a3dbac34fb3.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 524288u; +if (i >= 524288u) { return; } +out[i] = f32(f32(b0[i]) + (f32(b1[((i / 4096u) % 16u) * 4096u + ((i / 1u) % 4096u) * 1u]) * 1.0)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/2eeb54034621ff097879064a60fd4e0dd5d68201e48296ad234413a39579acc8.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/2eeb54034621ff097879064a60fd4e0dd5d68201e48296ad234413a39579acc8.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..1e46eeebccaa9450e6f35a050b1561b7fc75c63e --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/2eeb54034621ff097879064a60fd4e0dd5d68201e48296ad234413a39579acc8.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 8192u; +if (i >= 8192u) { return; } +out[i] = f32(b0[((i / 8192u) % 1u) * 16384u + ((i / 2048u) % 4u) * 4096u + ((i / 256u) % 8u) * 512u + (((i / 1u) % 256u) * 1u + 0u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/3087f59456d6581e7cdad1a14086af53281e39d2041a6a93387ba6e1daf5f9cb.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/3087f59456d6581e7cdad1a14086af53281e39d2041a6a93387ba6e1daf5f9cb.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..d26f55dc801072951721a041127533286d4ae6fe --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/3087f59456d6581e7cdad1a14086af53281e39d2041a6a93387ba6e1daf5f9cb.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 262144u; +if (i >= 262144u) { return; } +out[i] = f32(b0[((i / 262144u) % 1u) * 270336u + ((i / 16384u) % 16u) * 16896u + (((i / 128u) % 128u) * 1u + 0u) * 128u + ((i / 1u) % 128u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/309f1b67894a30dd3e88cd18af63ffc51e384b6891b5f34dd1a0588344188f6e.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/309f1b67894a30dd3e88cd18af63ffc51e384b6891b5f34dd1a0588344188f6e.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..c4df10b818bd3d5917a86f2e8da553827b31704b --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/309f1b67894a30dd3e88cd18af63ffc51e384b6891b5f34dd1a0588344188f6e.wgsl @@ -0,0 +1,17 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 32768u; +if (i >= 32768u) { return; } +let token = i32(b0[i / 2048u]); +if (token < 65536 || token >= 98304) { out[i] = f32(0.0); return; } +out[i] = f32(unpack_bf16_1(u32(token - 65536) * 2048u + i % 2048u)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/32a5027cac5dd969d63fe5d5c88d7c87abb600c43ad1d70e1c56615ea781eff3.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/32a5027cac5dd969d63fe5d5c88d7c87abb600c43ad1d70e1c56615ea781eff3.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..acbc0b91943f7202976d3a0119d1ad2f45215e18 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/32a5027cac5dd969d63fe5d5c88d7c87abb600c43ad1d70e1c56615ea781eff3.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 262144u; +if (i >= 262144u) { return; } +out[i] = f32(f32(b0[i]) * f32(b1[((i / 16384u) % 16u) * 128u + ((i / 128u) % 128u) * 1u])); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/32cb7d055e8ecf035e10d05724e64544393bd3916079992a3d8dce427bb14181.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/32cb7d055e8ecf035e10d05724e64544393bd3916079992a3d8dce427bb14181.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..4858cc129b2de7c67aab0a5337e8050b0a3b193d --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/32cb7d055e8ecf035e10d05724e64544393bd3916079992a3d8dce427bb14181.wgsl @@ -0,0 +1,11 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 1024u; +if (i >= 1024u) { return; } +var acc = 0.0; +for (var j = 0u; j < 128u; j++) { acc += f32(b0[(((i / 1024u) % 1u) * 131072u + ((i / 16u) % 64u) * 2048u + ((i / 1u) % 16u) * 128u) + (((j / 1u) % 128u) * 1u)]); } +out[i] = f32(acc); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/33e8ec04c66adb4988f562f0f9d3e92d29dfda91a56d0ed62be598c7c737f5ba.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/33e8ec04c66adb4988f562f0f9d3e92d29dfda91a56d0ed62be598c7c737f5ba.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..ea57d7db6cc64c5b0d1bd0d43ac21f19e17492ca --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/33e8ec04c66adb4988f562f0f9d3e92d29dfda91a56d0ed62be598c7c737f5ba.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 16384u; +if (i >= 16384u) { return; } +out[i] = f32(b0[((i / 16384u) % 1u) * 32768u + ((i / 2048u) % 8u) * 4096u + ((i / 32u) % 64u) * 64u + (((i / 1u) % 32u) * 1u + 32u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/3560fe2bb07bf6fb92598b9f9c006029892f16dcb55b418973ed89b2b5086b1b.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/3560fe2bb07bf6fb92598b9f9c006029892f16dcb55b418973ed89b2b5086b1b.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..50da14799819aa45e6e395deacf4115e0fef2ab4 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/3560fe2bb07bf6fb92598b9f9c006029892f16dcb55b418973ed89b2b5086b1b.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 131072u; +if (i >= 131072u) { return; } +out[i] = f32(b0[((i / 131072u) % 1u) * 393216u + ((i / 2048u) % 64u) * 6144u + (((i / 1u) % 2048u) * 1u + 4096u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/359d61f2ba174e54e2a0920fcf61e84e436fd3eaf7e2832e21fdb24094493667.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/359d61f2ba174e54e2a0920fcf61e84e436fd3eaf7e2832e21fdb24094493667.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..385adfb5f3ff92084baf0649aca3a9afbec19314 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/359d61f2ba174e54e2a0920fcf61e84e436fd3eaf7e2832e21fdb24094493667.wgsl @@ -0,0 +1,11 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 512u; +if (i >= 512u) { return; } +let coord = (i / 1u) % 32u; +if (coord >= 2u && coord < 32u && (coord - 2u) % 3u == 0u) { out[i] = f32(b0[((i / 512u) % 1u) * 160u + ((i / 32u) % 16u) * 10u + ((((i / 1u) % 32u) - 2u) / 3u) * 1u]); } else { out[i] = f32(b1[i]); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/35b866864f2f36fad2f64440227cd6088083c96b0ef50192ce71ef159e1d1b11.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/35b866864f2f36fad2f64440227cd6088083c96b0ef50192ce71ef159e1d1b11.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..c5f0b083b9365ca2b0ce0f47152ac164031fa589 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/35b866864f2f36fad2f64440227cd6088083c96b0ef50192ce71ef159e1d1b11.wgsl @@ -0,0 +1,24 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +var factor: f32; +@compute @workgroup_size(64) +fn main(@builtin(workgroup_id) group: vec3, @builtin(local_invocation_id) local: vec3) { + let row = group.x + group.y * 64u; + if (row >= 64u) { return; } + let lane = local.x; + if (lane == 0u) { + var total = 0.0; + for (var j = 0u; j < 2048u; j++) { + let v = f32(b0[row * 2048u + j]); + total += v * v; + } + factor = inverseSqrt(total / 2048.0 + 1e-06); + } + workgroupBarrier(); + for (var p = lane; p < 2048u; p += 64u) { + let i = row * 2048u + p; + out[i] = f32(f32(b0[row * 2048u + p]) * factor * (f32(b1[p]) + 1.0)); + } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/360a02a53c176d885331b307a6972d974ce5c8dad0d961b8521c6fd8b37d7ebe.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/360a02a53c176d885331b307a6972d974ce5c8dad0d961b8521c6fd8b37d7ebe.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..1a32d6404eabb95d2ee817e2f221e7e7f5895cce --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/360a02a53c176d885331b307a6972d974ce5c8dad0d961b8521c6fd8b37d7ebe.wgsl @@ -0,0 +1,17 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 2048u; +if (i >= 2048u) { return; } +let token = i32(b0[i / 2048u]); +if (token < 65536 || token >= 98304) { out[i] = f32(0.0); return; } +out[i] = f32(unpack_bf16_1(u32(token - 65536) * 2048u + i % 2048u)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/3622ffa2072335a35d6c9db5d284ed92b3fb5ed304acc2c606408063e7e21dcd.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/3622ffa2072335a35d6c9db5d284ed92b3fb5ed304acc2c606408063e7e21dcd.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..024f825c272aa685f0711585490d1ea0e262f385 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/3622ffa2072335a35d6c9db5d284ed92b3fb5ed304acc2c606408063e7e21dcd.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 32768u; +if (i >= 32768u) { return; } +out[i] = f32(b0[((i / 32768u) % 1u) * 65536u + ((i / 2048u) % 16u) * 4096u + ((i / 256u) % 8u) * 512u + (((i / 1u) % 256u) * 1u + 256u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/36c55d910d6fdaf8d3a2bba5a559bf7dcf54364986a7f2c0610b523600667d91.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/36c55d910d6fdaf8d3a2bba5a559bf7dcf54364986a7f2c0610b523600667d91.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..7e8bfe776cd28ddfc7651fd2d9406f589f914982 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/36c55d910d6fdaf8d3a2bba5a559bf7dcf54364986a7f2c0610b523600667d91.wgsl @@ -0,0 +1,22 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var b2: array; +@group(0) @binding(3) var b3: array; +@group(0) @binding(4) var b4: array; +@group(0) @binding(5) var b5: array; +@group(0) @binding(6) var b6: array; +@group(0) @binding(7) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 3670016u; +if (i >= 3670016u) { return; } +let coord = (i / 1u) % 229376u; +if (coord >= 0u && coord < 32768u) { out[i] = f32(b0[(i / 229376u) * 32768u + (coord - 0u) * 1u + i % 1u]); } +if (coord >= 32768u && coord < 65536u) { out[i] = f32(b1[(i / 229376u) * 32768u + (coord - 32768u) * 1u + i % 1u]); } +if (coord >= 65536u && coord < 98304u) { out[i] = f32(b2[(i / 229376u) * 32768u + (coord - 65536u) * 1u + i % 1u]); } +if (coord >= 98304u && coord < 131072u) { out[i] = f32(b3[(i / 229376u) * 32768u + (coord - 98304u) * 1u + i % 1u]); } +if (coord >= 131072u && coord < 163840u) { out[i] = f32(b4[(i / 229376u) * 32768u + (coord - 131072u) * 1u + i % 1u]); } +if (coord >= 163840u && coord < 196608u) { out[i] = f32(b5[(i / 229376u) * 32768u + (coord - 163840u) * 1u + i % 1u]); } +if (coord >= 196608u && coord < 229376u) { out[i] = f32(b6[(i / 229376u) * 32768u + (coord - 196608u) * 1u + i % 1u]); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/3830061b0fc54c85d3d8a783b927c44484b1a3b68b52b8d8a1b980f7553deebf.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/3830061b0fc54c85d3d8a783b927c44484b1a3b68b52b8d8a1b980f7553deebf.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..95c986ed8372eaa483413ddfe7e3a70d877c81b6 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/3830061b0fc54c85d3d8a783b927c44484b1a3b68b52b8d8a1b980f7553deebf.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 1024u; +if (i >= 1024u) { return; } +out[i] = f32(b0[((i / 1024u) % 1u) * 2048u + ((i / 512u) % 2u) * 1024u + ((i / 32u) % 16u) * 64u + (((i / 1u) % 32u) * 1u + 32u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/38bd527686bcade9ed19a52788ccd711ca668e76854cc6274c480860fce88ff2.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/38bd527686bcade9ed19a52788ccd711ca668e76854cc6274c480860fce88ff2.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..934e1895005499ddd0c97450335aaf4cb8e9454e --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/38bd527686bcade9ed19a52788ccd711ca668e76854cc6274c480860fce88ff2.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 2048u; +if (i >= 2048u) { return; } +out[i] = f32(b0[((i / 2048u) % 1u) * 6144u + ((i / 2048u) % 1u) * 6144u + (((i / 1u) % 2048u) * 1u + 0u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/39646bdfafd1ab0cb874474e3f1e9d79b57f10582a1804bc1d3762a492fec851.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/39646bdfafd1ab0cb874474e3f1e9d79b57f10582a1804bc1d3762a492fec851.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..94055a18d56459161a2b133b2c2bc3d726cebd53 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/39646bdfafd1ab0cb874474e3f1e9d79b57f10582a1804bc1d3762a492fec851.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 32768u; +if (i >= 32768u) { return; } +out[i] = f32(f32(b0[i]) * f32(b1[((i / 64u) % 64u) * 64u + ((i / 1u) % 64u) * 1u])); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/39e41393f5850cc4f0b2e8172a3c53c8c7fb874ceb4df2c6f13f9af6128ad7fc.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/39e41393f5850cc4f0b2e8172a3c53c8c7fb874ceb4df2c6f13f9af6128ad7fc.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..de4fe56b7e7f6725c8af959caf3cf986b1985db0 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/39e41393f5850cc4f0b2e8172a3c53c8c7fb874ceb4df2c6f13f9af6128ad7fc.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 8192u; +if (i >= 8192u) { return; } +out[i] = f32(f32(b0[i]) * f32(b1[((i / 64u) % 64u) * 64u + ((i / 1u) % 64u) * 1u])); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/3a76085983a5330bf07a4166ea4975700403f9d8035a8ef450f7f18b9cf47c66.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/3a76085983a5330bf07a4166ea4975700403f9d8035a8ef450f7f18b9cf47c66.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..5cad6f7d757713f64a9fa63553214201fcfad2bf --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/3a76085983a5330bf07a4166ea4975700403f9d8035a8ef450f7f18b9cf47c66.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 131072u; +if (i >= 131072u) { return; } +out[i] = f32(b0[((i / 131072u) % 1u) * 262144u + ((i / 2048u) % 64u) * 4096u + ((i / 256u) % 8u) * 512u + (((i / 1u) % 256u) * 1u + 0u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/3b2066052a48ffaf36270fc0f07d7725e7146f7d0cabef87ecc8507eda259a1d.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/3b2066052a48ffaf36270fc0f07d7725e7146f7d0cabef87ecc8507eda259a1d.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..159d0178ab2ffda403cb2107774014c302514345 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/3b2066052a48ffaf36270fc0f07d7725e7146f7d0cabef87ecc8507eda259a1d.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 393216u; +if (i >= 393216u) { return; } +out[i] = f32(b0[((i / 393216u) % 1u) * 393216u + ((i / 6144u) % 64u) * 1u + ((i / 1u) % 6144u) * 64u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/3b2b13d75a6ce00e35c674883bbf1969555c8fc9e088e7d2003a5ea57b4552ff.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/3b2b13d75a6ce00e35c674883bbf1969555c8fc9e088e7d2003a5ea57b4552ff.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..fea6f8c1f04d0d77d4b290bbe58231fae7d649f0 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/3b2b13d75a6ce00e35c674883bbf1969555c8fc9e088e7d2003a5ea57b4552ff.wgsl @@ -0,0 +1,22 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var b2: array; +@group(0) @binding(3) var b3: array; +@group(0) @binding(4) var b4: array; +@group(0) @binding(5) var b5: array; +@group(0) @binding(6) var b6: array; +@group(0) @binding(7) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 4194240u; +if (i >= 14680064u) { return; } +let coord = (i / 1u) % 229376u; +if (coord >= 0u && coord < 32768u) { out[i] = f32(b0[(i / 229376u) * 32768u + (coord - 0u) * 1u + i % 1u]); } +if (coord >= 32768u && coord < 65536u) { out[i] = f32(b1[(i / 229376u) * 32768u + (coord - 32768u) * 1u + i % 1u]); } +if (coord >= 65536u && coord < 98304u) { out[i] = f32(b2[(i / 229376u) * 32768u + (coord - 65536u) * 1u + i % 1u]); } +if (coord >= 98304u && coord < 131072u) { out[i] = f32(b3[(i / 229376u) * 32768u + (coord - 98304u) * 1u + i % 1u]); } +if (coord >= 131072u && coord < 163840u) { out[i] = f32(b4[(i / 229376u) * 32768u + (coord - 131072u) * 1u + i % 1u]); } +if (coord >= 163840u && coord < 196608u) { out[i] = f32(b5[(i / 229376u) * 32768u + (coord - 163840u) * 1u + i % 1u]); } +if (coord >= 196608u && coord < 229376u) { out[i] = f32(b6[(i / 229376u) * 32768u + (coord - 196608u) * 1u + i % 1u]); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/3b8210d9acf57a3c1cca9e926547520d5994967f27ce92897a15b14137f7da66.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/3b8210d9acf57a3c1cca9e926547520d5994967f27ce92897a15b14137f7da66.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..3cc6b6a79e115907ddba628a69ca56d1e2fd91f8 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/3b8210d9acf57a3c1cca9e926547520d5994967f27ce92897a15b14137f7da66.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 192u; +if (i >= 176u) { return; } +out[i] = f32(b0[((i / 176u) % 1u) * 512u + ((i / 11u) % 16u) * 32u + (((i / 1u) % 11u) * 3u + 1u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/3bb850bda95bf77706a2839616a401b773f9de0428d1b427e61fb04e2c35fe74.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/3bb850bda95bf77706a2839616a401b773f9de0428d1b427e61fb04e2c35fe74.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..a3e680fcc3fb413659faf5613327f7d216420af9 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/3bb850bda95bf77706a2839616a401b773f9de0428d1b427e61fb04e2c35fe74.wgsl @@ -0,0 +1,11 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 128u; +if (i >= 96u) { return; } +let coord = (i / 32u) % 3u; +if (coord == 0u) { out[i] = f32(b0[((i / 32u) % 1u) * 32u + ((i / 32u) % 1u) * 32u + ((i / 1u) % 32u) * 1u]); } else { out[i] = f32(b1[i]); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/3d4359c4f1d0d65e6b6049b73a4e3f5fb67573fb80e29c9321f3671f40786f65.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/3d4359c4f1d0d65e6b6049b73a4e3f5fb67573fb80e29c9321f3671f40786f65.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..c841002d696a1a59554ee6ea2bc91924a032b01a --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/3d4359c4f1d0d65e6b6049b73a4e3f5fb67573fb80e29c9321f3671f40786f65.wgsl @@ -0,0 +1,28 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +var tile_a: array; +var tile_b: array; +@compute @workgroup_size(8, 8) +fn main(@builtin(workgroup_id) group: vec3, @builtin(local_invocation_id) local: vec3) { + let row = group.y * 8u + local.y; + let col = group.x * 8u + local.x; + let i = (group.z * 16u + row) * 2048u + col; + var acc = 0.0; + for (var tile = 0u; tile < 6144u; tile += 8u) { + tile_a[local.y * 8u + local.x] = 0.0; + tile_b[local.x * 8u + local.y] = 0.0; + if (row < 16u && tile + local.x < 6144u) { tile_a[local.y * 8u + local.x] = f32(b0[(group.z * 16u + row) * 6144u + tile + local.x]); } + if (group.x * 8u + local.y < 2048u && tile + local.x < 6144u) { tile_b[local.x * 8u + local.y] = unpack_bf16_1((group.x * 8u + local.y) * 6144u + tile + local.x); } + workgroupBarrier(); + for (var p = 0u; p < 8u; p++) { acc += tile_a[local.y * 8u + p] * tile_b[p * 8u + local.x]; } + workgroupBarrier(); + } + if (row < 16u && col < 2048u) { out[i] = f32(acc + 0.0); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/3d5b97cfaf8dd0e680b6a9c84e7eca497f9f6e49817d20f1a72dddd7a3303f73.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/3d5b97cfaf8dd0e680b6a9c84e7eca497f9f6e49817d20f1a72dddd7a3303f73.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..ade0f2b617f3d56489ba74742e9111451ad63381 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/3d5b97cfaf8dd0e680b6a9c84e7eca497f9f6e49817d20f1a72dddd7a3303f73.wgsl @@ -0,0 +1,11 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 24576u; +if (i >= 24576u) { return; } +let x = f32(b0[i]); let s = f32(f32(x / (1.0 + exp(-x)))); +out[i] = f32(s * f32(b1[i])); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/3daeb9cba5c07ed47ac55e1c2565aa82f7d8e8409037707e7339d1d96d122144.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/3daeb9cba5c07ed47ac55e1c2565aa82f7d8e8409037707e7339d1d96d122144.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..5f8915fc662d64438f02eef6c1ea2167f64fff2e --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/3daeb9cba5c07ed47ac55e1c2565aa82f7d8e8409037707e7339d1d96d122144.wgsl @@ -0,0 +1,11 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 512u; +if (i >= 512u) { return; } +let coord = (i / 1u) % 32u; +if (coord >= 1u && coord < 34u && (coord - 1u) % 3u == 0u) { out[i] = f32(b0[((i / 512u) % 1u) * 176u + ((i / 32u) % 16u) * 11u + ((((i / 1u) % 32u) - 1u) / 3u) * 1u]); } else { out[i] = f32(b1[i]); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/3e34409407100d4858c4c109cf62f3eaf2f4c6081166b0ec8679105e6dfbe7fe.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/3e34409407100d4858c4c109cf62f3eaf2f4c6081166b0ec8679105e6dfbe7fe.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..8d848be2527138a28929c1abca7db36988b86119 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/3e34409407100d4858c4c109cf62f3eaf2f4c6081166b0ec8679105e6dfbe7fe.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 16384u; +if (i >= 16384u) { return; } +let x = f32(b0[i]); +out[i] = f32(-x); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/3f89d19bd6791657fa702ad00a0517b5f292dbf7d0c196bd5b21c949476d23fd.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/3f89d19bd6791657fa702ad00a0517b5f292dbf7d0c196bd5b21c949476d23fd.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..76fef58bda8c3635f8de713e9d2e8807bca9fe33 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/3f89d19bd6791657fa702ad00a0517b5f292dbf7d0c196bd5b21c949476d23fd.wgsl @@ -0,0 +1,11 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 384u; +if (i >= 384u) { return; } +let coord = (i / 128u) % 3u; +if (coord == 0u) { out[i] = f32(b0[((i / 128u) % 1u) * 128u + ((i / 32u) % 4u) * 32u + ((i / 1u) % 32u) * 1u]); } else { out[i] = f32(b1[i]); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/3fa1efae6d90015ba69cb40cef009f49ad7f7a960018fb92a962707deff4f09e.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/3fa1efae6d90015ba69cb40cef009f49ad7f7a960018fb92a962707deff4f09e.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..dd0f6856d5316f3d610290ed98cf1a9c465f554d --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/3fa1efae6d90015ba69cb40cef009f49ad7f7a960018fb92a962707deff4f09e.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 64u; +if (i >= 10u) { return; } +out[i] = f32(b0[i]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/3fea2ac7546eb13332dd11cb7001141e5e06137f7b0b40b5bcf3eaae43278b6e.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/3fea2ac7546eb13332dd11cb7001141e5e06137f7b0b40b5bcf3eaae43278b6e.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..85dac3a647a704463118df6246c6eab5f1eb1dd1 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/3fea2ac7546eb13332dd11cb7001141e5e06137f7b0b40b5bcf3eaae43278b6e.wgsl @@ -0,0 +1,25 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +var partial: array; +@compute @workgroup_size(64) +fn main(@builtin(workgroup_id) group: vec3, @builtin(local_invocation_id) local: vec3) { + let i = group.x + group.y * 32768u; + if (i >= 32768u) { return; } + let lane = local.x; + var acc = 0.0; + for (var p = lane; p < 2048u; p += 64u) { acc += f32(b0[(i / 32768u) * 2048u + p]) * unpack_bf16_1((i % 32768u) * 2048u + p); } + partial[lane] = acc; + workgroupBarrier(); + for (var stride = 32u; stride > 0u; stride /= 2u) { + if (lane < stride) { partial[lane] += partial[lane + stride]; } + workgroupBarrier(); + } + if (lane == 0u) { out[i] = f32(partial[0] + 0.0); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/40f115c8647a238bfb3ccb0bb8446bccdc94a0dfadc89111c4920efb2259f41d.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/40f115c8647a238bfb3ccb0bb8446bccdc94a0dfadc89111c4920efb2259f41d.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..a3810cf85ad885e651db3ad41a77356904ea9c05 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/40f115c8647a238bfb3ccb0bb8446bccdc94a0dfadc89111c4920efb2259f41d.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 2048u; +if (i >= 2048u) { return; } +out[i] = f32(f32(b0[i]) * f32(b1[((i / 64u) % 4u) * 64u + ((i / 1u) % 64u) * 1u])); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/416348e2f9aab462c4ea190374014f09c7fd3114626ee3f48fb39a096fceab7a.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/416348e2f9aab462c4ea190374014f09c7fd3114626ee3f48fb39a096fceab7a.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..13cd532c483edcedd277e3ca811988d7012a34b9 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/416348e2f9aab462c4ea190374014f09c7fd3114626ee3f48fb39a096fceab7a.wgsl @@ -0,0 +1,17 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 2048u; +if (i >= 2048u) { return; } +let token = i32(b0[i / 2048u]); +if (token < 0 || token >= 32768) { out[i] = f32(0.0); return; } +out[i] = f32(unpack_bf16_1(u32(token - 0) * 2048u + i % 2048u)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/429a69a1118b6732c4f0cd10f20d101828b2d0da3ac4b58cb6379ae985432221.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/429a69a1118b6732c4f0cd10f20d101828b2d0da3ac4b58cb6379ae985432221.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..ce3e9cd63596443584662f725b0ba1aeab8f19f9 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/429a69a1118b6732c4f0cd10f20d101828b2d0da3ac4b58cb6379ae985432221.wgsl @@ -0,0 +1,17 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 131072u; +if (i >= 131072u) { return; } +let batch = i / 16384u; +let row = (i / 256u) % 64u; +let col = i % 256u; +var acc = 0.0; +for (var p = 0u; p < 4096u; p++) { + acc += f32(b0[(((batch / 1u) % 8u) * 262144u) + row * 4096u + p]) * f32(b1[(((batch / 1u) % 8u) * 1048576u) + p * 256u + col]); +} +out[i] = f32(acc); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/42c5af4838daf75fff9d4bb9a5df409511c1d6daed617d05eaf033a977503eac.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/42c5af4838daf75fff9d4bb9a5df409511c1d6daed617d05eaf033a977503eac.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..ab4b18691ec8371839272e82e1191ffc00772c73 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/42c5af4838daf75fff9d4bb9a5df409511c1d6daed617d05eaf033a977503eac.wgsl @@ -0,0 +1,11 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 64u; +if (i >= 32u) { return; } +let coord = (i / 1u) % 32u; +if (coord >= 1u && coord < 34u && (coord - 1u) % 3u == 0u) { out[i] = f32(b0[((i / 32u) % 1u) * 11u + ((i / 32u) % 1u) * 11u + ((((i / 1u) % 32u) - 1u) / 3u) * 1u]); } else { out[i] = f32(b1[i]); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/431cc9474b62045f7fbd61f4bac639636753584f37b063a6213820c11612fa3d.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/431cc9474b62045f7fbd61f4bac639636753584f37b063a6213820c11612fa3d.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..b2e55577dddeea71a9c5104397a914ed3f926399 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/431cc9474b62045f7fbd61f4bac639636753584f37b063a6213820c11612fa3d.wgsl @@ -0,0 +1,28 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +var tile_a: array; +var tile_b: array; +@compute @workgroup_size(8, 8) +fn main(@builtin(workgroup_id) group: vec3, @builtin(local_invocation_id) local: vec3) { + let row = group.y * 8u + local.y; + let col = group.x * 8u + local.x; + let i = (group.z * 16u + row) * 6144u + col; + var acc = 0.0; + for (var tile = 0u; tile < 2048u; tile += 8u) { + tile_a[local.y * 8u + local.x] = 0.0; + tile_b[local.x * 8u + local.y] = 0.0; + if (row < 16u && tile + local.x < 2048u) { tile_a[local.y * 8u + local.x] = f32(b0[(group.z * 16u + row) * 2048u + tile + local.x]); } + if (group.x * 8u + local.y < 6144u && tile + local.x < 2048u) { tile_b[local.x * 8u + local.y] = unpack_bf16_1((group.x * 8u + local.y) * 2048u + tile + local.x); } + workgroupBarrier(); + for (var p = 0u; p < 8u; p++) { acc += tile_a[local.y * 8u + p] * tile_b[p * 8u + local.x]; } + workgroupBarrier(); + } + if (row < 16u && col < 6144u) { out[i] = f32(acc + 0.0); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/43202a5f42d7ade5add5ebd7fa104b08e012c42739fe21cdb9480813afbb12f0.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/43202a5f42d7ade5add5ebd7fa104b08e012c42739fe21cdb9480813afbb12f0.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..affde9dadad301fc915e8f7ee992bd3d24d3753c --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/43202a5f42d7ade5add5ebd7fa104b08e012c42739fe21cdb9480813afbb12f0.wgsl @@ -0,0 +1,28 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +var tile_a: array; +var tile_b: array; +@compute @workgroup_size(8, 8) +fn main(@builtin(workgroup_id) group: vec3, @builtin(local_invocation_id) local: vec3) { + let row = group.y * 8u + local.y; + let col = group.x * 8u + local.x; + let i = (group.z * 4u + row) * 6144u + col; + var acc = 0.0; + for (var tile = 0u; tile < 2048u; tile += 8u) { + tile_a[local.y * 8u + local.x] = 0.0; + tile_b[local.x * 8u + local.y] = 0.0; + if (row < 4u && tile + local.x < 2048u) { tile_a[local.y * 8u + local.x] = f32(b0[(group.z * 4u + row) * 2048u + tile + local.x]); } + if (group.x * 8u + local.y < 6144u && tile + local.x < 2048u) { tile_b[local.x * 8u + local.y] = unpack_bf16_1((group.x * 8u + local.y) * 2048u + tile + local.x); } + workgroupBarrier(); + for (var p = 0u; p < 8u; p++) { acc += tile_a[local.y * 8u + p] * tile_b[p * 8u + local.x]; } + workgroupBarrier(); + } + if (row < 4u && col < 6144u) { out[i] = f32(acc + 0.0); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/4365c6a2818dc6f2b29aa9a1994d3ff2a44af72e3e9276e92e927705e2bbea3e.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/4365c6a2818dc6f2b29aa9a1994d3ff2a44af72e3e9276e92e927705e2bbea3e.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..97f2f912c0660d356a6008357e7a36ae5d510b35 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/4365c6a2818dc6f2b29aa9a1994d3ff2a44af72e3e9276e92e927705e2bbea3e.wgsl @@ -0,0 +1,17 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 8192u; +if (i >= 8192u) { return; } +let token = i32(b0[i / 2048u]); +if (token < 196608 || token >= 229376) { out[i] = f32(0.0); return; } +out[i] = f32(unpack_bf16_1(u32(token - 196608) * 2048u + i % 2048u)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/437da2f2f6d8aa65301222936ae6a18a2357c28cd479592e8141f88a97972da0.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/437da2f2f6d8aa65301222936ae6a18a2357c28cd479592e8141f88a97972da0.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..0f2fe257f4da267eedf2226e993a50cb39c3c733 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/437da2f2f6d8aa65301222936ae6a18a2357c28cd479592e8141f88a97972da0.wgsl @@ -0,0 +1,28 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +var tile_a: array; +var tile_b: array; +@compute @workgroup_size(8, 8) +fn main(@builtin(workgroup_id) group: vec3, @builtin(local_invocation_id) local: vec3) { + let row = group.y * 8u + local.y; + let col = group.x * 8u + local.x; + let i = (group.z * 64u + row) * 2048u + col; + var acc = 0.0; + for (var tile = 0u; tile < 6144u; tile += 8u) { + tile_a[local.y * 8u + local.x] = 0.0; + tile_b[local.x * 8u + local.y] = 0.0; + if (row < 64u && tile + local.x < 6144u) { tile_a[local.y * 8u + local.x] = f32(b0[(group.z * 64u + row) * 6144u + tile + local.x]); } + if (group.x * 8u + local.y < 2048u && tile + local.x < 6144u) { tile_b[local.x * 8u + local.y] = unpack_bf16_1((group.x * 8u + local.y) * 6144u + tile + local.x); } + workgroupBarrier(); + for (var p = 0u; p < 8u; p++) { acc += tile_a[local.y * 8u + p] * tile_b[p * 8u + local.x]; } + workgroupBarrier(); + } + if (row < 64u && col < 2048u) { out[i] = f32(acc + 0.0); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/4406ab1e6e4b9eeb91ace297320aa05a55cc481e02894a4a74b655b4070ade36.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/4406ab1e6e4b9eeb91ace297320aa05a55cc481e02894a4a74b655b4070ade36.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..3f6f007f45374a356a5ce1118272058bb1a41c01 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/4406ab1e6e4b9eeb91ace297320aa05a55cc481e02894a4a74b655b4070ade36.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 98304u; +if (i >= 98304u) { return; } +out[i] = f32(b0[((i / 98304u) % 1u) * 131072u + ((i / 12288u) % 8u) * 16384u + ((i / 192u) % 64u) * 256u + (((i / 1u) % 192u) * 1u + 64u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/4540d87eaec90c9eb42badfe0abfa70252f26b6e7de4dd31ee6903fe50e96bd1.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/4540d87eaec90c9eb42badfe0abfa70252f26b6e7de4dd31ee6903fe50e96bd1.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..a0caa5c08df286ab5dbba084e1b6b90da802badc --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/4540d87eaec90c9eb42badfe0abfa70252f26b6e7de4dd31ee6903fe50e96bd1.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 262144u; +if (i >= 262144u) { return; } +out[i] = f32(f32(b0[i]) + (f32(b1[i]) * 1.0)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/45a1fd3ed514f208718651026bf2ee30dda66b02cdd950dc71e88eb6bdac0b10.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/45a1fd3ed514f208718651026bf2ee30dda66b02cdd950dc71e88eb6bdac0b10.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..695035d8c2fafdd1787dc5d92fff564741c00055 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/45a1fd3ed514f208718651026bf2ee30dda66b02cdd950dc71e88eb6bdac0b10.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 8192u; +if (i >= 8192u) { return; } +out[i] = f32(f32(b0[i]) * f32(b1[i])); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/466959b3cf0d274924151bdd80808e8451f9d8c2aac1455a44f26fa6d8b44fd0.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/466959b3cf0d274924151bdd80808e8451f9d8c2aac1455a44f26fa6d8b44fd0.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..624963c4b33f008194e17926223b6e3c22aff730 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/466959b3cf0d274924151bdd80808e8451f9d8c2aac1455a44f26fa6d8b44fd0.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 262144u; +if (i >= 262144u) { return; } +out[i] = f32(b0[((i / 262144u) % 1u) * 294912u + ((i / 16384u) % 16u) * 18432u + (((i / 128u) % 128u) * 1u + 0u) * 128u + ((i / 1u) % 128u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/48608b2b7bfbe0b65d9e2d82a94a76683315421acb1bf168b4baf14a3c139f76.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/48608b2b7bfbe0b65d9e2d82a94a76683315421acb1bf168b4baf14a3c139f76.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..e47ed666d2bf202931d9ac16d8cb0dd22e57b6d3 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/48608b2b7bfbe0b65d9e2d82a94a76683315421acb1bf168b4baf14a3c139f76.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 704u; +if (i >= 704u) { return; } +out[i] = f32(b0[i]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/48ec6f5173dcab06386f158b26dfbecfb5022f620fa9588a9cb947664b01037e.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/48ec6f5173dcab06386f158b26dfbecfb5022f620fa9588a9cb947664b01037e.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..cfbc4bfde83f2f88962a6787a00efb3fd7382a50 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/48ec6f5173dcab06386f158b26dfbecfb5022f620fa9588a9cb947664b01037e.wgsl @@ -0,0 +1,12 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 4194240u; +if (i >= 15892480u) { return; } +let coord = (i / 1u) % 248320u; +if (coord >= 0u && coord < 229376u) { out[i] = f32(b0[(i / 248320u) * 229376u + (coord - 0u) * 1u + i % 1u]); } +if (coord >= 229376u && coord < 248320u) { out[i] = f32(b1[(i / 248320u) * 18944u + (coord - 229376u) * 1u + i % 1u]); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/4994822b8f6f72d6a49dbf791f601000cb548364e6fd285cfbbda90b6d5b08a1.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/4994822b8f6f72d6a49dbf791f601000cb548364e6fd285cfbbda90b6d5b08a1.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..4ccf544d72a01248d63a053bfd0895e3ef3b4d83 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/4994822b8f6f72d6a49dbf791f601000cb548364e6fd285cfbbda90b6d5b08a1.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 262144u; +if (i >= 262144u) { return; } +out[i] = f32(b0[i]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/4a4eb52af727f11dfbd69b294a8ab3eb5053bd5a2feea3cfdb35ab10bc1a4426.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/4a4eb52af727f11dfbd69b294a8ab3eb5053bd5a2feea3cfdb35ab10bc1a4426.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..dc3d6070aa02c4dad5f2bf7125c9300ad9860ca8 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/4a4eb52af727f11dfbd69b294a8ab3eb5053bd5a2feea3cfdb35ab10bc1a4426.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 64u; +if (i >= 64u) { return; } +out[i] = f32(f32(b0[i]) + (1e-06 * 1.0)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/4ac112c035a1a4a2f5deae66fac0969000c4666730c2d7b15cb15a157ea0e9b8.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/4ac112c035a1a4a2f5deae66fac0969000c4666730c2d7b15cb15a157ea0e9b8.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..bc06995ea01af93b264998715f5789c5f01e0b80 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/4ac112c035a1a4a2f5deae66fac0969000c4666730c2d7b15cb15a157ea0e9b8.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 2048u; +if (i >= 2048u) { return; } +out[i] = f32(b0[((i / 2048u) % 1u) * 2048u + ((i / 256u) % 8u) * 256u + ((i / 256u) % 1u) * 2048u + ((i / 1u) % 256u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/4b098a370a6c993f2c974bd5afcc00f7e3686a600c458a060c7e7db3193789ba.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/4b098a370a6c993f2c974bd5afcc00f7e3686a600c458a060c7e7db3193789ba.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..9f6db55c3cd410fd8c73944788ff79bbc5d20ba5 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/4b098a370a6c993f2c974bd5afcc00f7e3686a600c458a060c7e7db3193789ba.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 131072u; +if (i >= 131072u) { return; } +out[i] = f32(b0[((i / 131072u) % 1u) * 393216u + ((i / 2048u) % 64u) * 6144u + (((i / 1u) % 2048u) * 1u + 2048u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/4b1a7529fd5c57d5d4593d4af58a9a3b545c7d106d18251f6452f8a562b97952.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/4b1a7529fd5c57d5d4593d4af58a9a3b545c7d106d18251f6452f8a562b97952.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..a2c7dcea92e4a5fa9a904796505efde56c5a3ae5 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/4b1a7529fd5c57d5d4593d4af58a9a3b545c7d106d18251f6452f8a562b97952.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 64u; +if (i >= 16u) { return; } +out[i] = f32(f32(b0[i]) + (f32(b1[((i / 1u) % 16u) * 1u]) * 1.0)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/4be963f9a4bb928764fd0efe02769e220b0e69defb2f8b22ab28e41a90d3fc14.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/4be963f9a4bb928764fd0efe02769e220b0e69defb2f8b22ab28e41a90d3fc14.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..24b926b3b907f9052d46718955950614e3f4d5b2 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/4be963f9a4bb928764fd0efe02769e220b0e69defb2f8b22ab28e41a90d3fc14.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 64u; +if (i >= 11u) { return; } +out[i] = f32(b0[i]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/4d05b472f8cb3485606d782585e1061973f1391d129fb765f9cb0f38c5fbb433.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/4d05b472f8cb3485606d782585e1061973f1391d129fb765f9cb0f38c5fbb433.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..c56dc651ca20bad5f92c614560567912f07eaab6 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/4d05b472f8cb3485606d782585e1061973f1391d129fb765f9cb0f38c5fbb433.wgsl @@ -0,0 +1,44 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var b2: array; +@group(0) @binding(3) var b3: array; +@group(0) @binding(4) var b4: array; +@group(0) @binding(5) var b5: array; +@group(0) @binding(6) var out: array; + +var partial: array; +var delta: f32; +@compute @workgroup_size(128) +fn main(@builtin(workgroup_id) group: vec3, @builtin(local_invocation_id) local: vec3) { + let column = group.x; + let head = group.y; + let batch_index = group.z; + let lane = local.x; + var recurrent = 0.0; + if (lane < 128u) { recurrent = f32(b5[((batch_index * 16u + head) * 128u + lane) * 128u + column]); } + for (var token = 0u; token < 16u; token++) { + recurrent *= exp(f32(b3[(batch_index * 16u + token) * 16u + head])); + partial[lane] = 0.0; + if (lane < 128u) { partial[lane] = recurrent * f32(b1[((batch_index * 16u + token) * 16u + head) * 128u + lane]); } + workgroupBarrier(); + for (var stride = 64u; stride > 0u; stride /= 2u) { + if (lane < stride) { partial[lane] += partial[lane + stride]; } + workgroupBarrier(); + } + if (lane == 0u) { delta = (f32(b2[((batch_index * 16u + token) * 16u + head) * 128u + column]) - partial[0]) * f32(b4[(batch_index * 16u + token) * 16u + head]); } + workgroupBarrier(); + if (lane < 128u) { recurrent += f32(b1[((batch_index * 16u + token) * 16u + head) * 128u + lane]) * delta; } + partial[lane] = 0.0; + if (lane < 128u) { + partial[lane] = recurrent * f32(b0[((batch_index * 16u + token) * 16u + head) * 128u + lane]) * 0.08838834764831845; + } + workgroupBarrier(); + for (var stride = 64u; stride > 0u; stride /= 2u) { + if (lane < stride) { partial[lane] += partial[lane + stride]; } + workgroupBarrier(); + } + if (lane == 0u) { out[((batch_index * 16u + head) * 144u + 128u + token) * 128u + column] = f32(partial[0]); } + workgroupBarrier(); + } + if (lane < 128u) { out[((batch_index * 16u + head) * 144u + lane) * 128u + column] = f32(recurrent); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/4d3e5f3a99a6c8c9dba5de30be4302f1e442f91d097437e825df97017e389a42.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/4d3e5f3a99a6c8c9dba5de30be4302f1e442f91d097437e825df97017e389a42.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..ad9eb2deb4d8a151884a987a9bff08c50ffd660f --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/4d3e5f3a99a6c8c9dba5de30be4302f1e442f91d097437e825df97017e389a42.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 6144u; +if (i >= 6144u) { return; } +out[i] = f32(b0[((i / 6144u) % 1u) * 6144u + ((i / 6144u) % 1u) * 1u + ((i / 1u) % 6144u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/4d46494a55ac0b66fdddd47b9422106ac39e0c7d206f01004e13f93a010e1bf5.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/4d46494a55ac0b66fdddd47b9422106ac39e0c7d206f01004e13f93a010e1bf5.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..8a51207a37a0e52b47144cddccc479dbb2363614 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/4d46494a55ac0b66fdddd47b9422106ac39e0c7d206f01004e13f93a010e1bf5.wgsl @@ -0,0 +1,12 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 49152u; +if (i >= 49152u) { return; } +let coord = (i / 1u) % 8u; +if (coord >= 0u && coord < 4u) { out[i] = f32(b0[(i / 8u) * 4u + (coord - 0u) * 1u + i % 1u]); } +if (coord >= 4u && coord < 8u) { out[i] = f32(b1[(i / 8u) * 4u + (coord - 4u) * 1u + i % 1u]); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/4d8ebffbbf193b18c13a5cc17d286bf5c92c5ba53ca022af78a9151ec1e5b9c0.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/4d8ebffbbf193b18c13a5cc17d286bf5c92c5ba53ca022af78a9151ec1e5b9c0.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..03d07fa428a8b82cd684f25b34ee4bb8835c33e0 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/4d8ebffbbf193b18c13a5cc17d286bf5c92c5ba53ca022af78a9151ec1e5b9c0.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 32768u; +if (i >= 32768u) { return; } +out[i] = f32(b0[((i / 32768u) % 1u) * 131072u + ((i / 4096u) % 8u) * 16384u + ((i / 64u) % 64u) * 256u + (((i / 1u) % 64u) * 1u + 0u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/4e0fada2b6f07e141f088694ab936356f2c70b66fb98e95e537c2c9d7ffb518a.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/4e0fada2b6f07e141f088694ab936356f2c70b66fb98e95e537c2c9d7ffb518a.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..3e64ba954e1fe0e2306cbb4cefd392dfa409ef84 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/4e0fada2b6f07e141f088694ab936356f2c70b66fb98e95e537c2c9d7ffb518a.wgsl @@ -0,0 +1,28 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +var tile_a: array; +var tile_b: array; +@compute @workgroup_size(8, 8) +fn main(@builtin(workgroup_id) group: vec3, @builtin(local_invocation_id) local: vec3) { + let row = group.y * 8u + local.y; + let col = group.x * 8u + local.x; + let i = (group.z * 16u + row) * 4096u + col; + var acc = 0.0; + for (var tile = 0u; tile < 2048u; tile += 8u) { + tile_a[local.y * 8u + local.x] = 0.0; + tile_b[local.x * 8u + local.y] = 0.0; + if (row < 16u && tile + local.x < 2048u) { tile_a[local.y * 8u + local.x] = f32(b0[(group.z * 16u + row) * 2048u + tile + local.x]); } + if (group.x * 8u + local.y < 4096u && tile + local.x < 2048u) { tile_b[local.x * 8u + local.y] = unpack_bf16_1((group.x * 8u + local.y) * 2048u + tile + local.x); } + workgroupBarrier(); + for (var p = 0u; p < 8u; p++) { acc += tile_a[local.y * 8u + p] * tile_b[p * 8u + local.x]; } + workgroupBarrier(); + } + if (row < 16u && col < 4096u) { out[i] = f32(acc + 0.0); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/4f27100b1e707c866f7cdd701f722bed2969be6e71245d4e4a14e1ef7ebe3fcf.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/4f27100b1e707c866f7cdd701f722bed2969be6e71245d4e4a14e1ef7ebe3fcf.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..d5a19434a45eee25f6d04502544c62118c4e993c --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/4f27100b1e707c866f7cdd701f722bed2969be6e71245d4e4a14e1ef7ebe3fcf.wgsl @@ -0,0 +1,17 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 131072u; +if (i >= 131072u) { return; } +let token = i32(b0[i / 2048u]); +if (token < 131072 || token >= 163840) { out[i] = f32(0.0); return; } +out[i] = f32(unpack_bf16_1(u32(token - 131072) * 2048u + i % 2048u)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/4f2c0d08150d4b97d90c244db2d41baca81484c2630dbbd6d586f2d8a4b07b8b.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/4f2c0d08150d4b97d90c244db2d41baca81484c2630dbbd6d586f2d8a4b07b8b.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..c81e589abef0fba31bf1517192cc0be68ca566c6 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/4f2c0d08150d4b97d90c244db2d41baca81484c2630dbbd6d586f2d8a4b07b8b.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 131072u; +if (i >= 131072u) { return; } +out[i] = f32(b0[((i / 131072u) % 1u) * 131072u + ((i / 2048u) % 64u) * 256u + ((i / 256u) % 8u) * 16384u + ((i / 1u) % 256u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/4fa24e8f09b07271534341707a7a688af67c7deca1f114bfaeba20a2e066c9f1.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/4fa24e8f09b07271534341707a7a688af67c7deca1f114bfaeba20a2e066c9f1.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..83c89e6b3a228b3203eb756839b56f1ff744d6b2 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/4fa24e8f09b07271534341707a7a688af67c7deca1f114bfaeba20a2e066c9f1.wgsl @@ -0,0 +1,11 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 1536u; +if (i >= 1536u) { return; } +let coord = (i / 512u) % 3u; +if (coord == 0u) { out[i] = f32(b0[((i / 512u) % 1u) * 512u + ((i / 32u) % 16u) * 32u + ((i / 1u) % 32u) * 1u]); } else { out[i] = f32(b1[i]); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/4fad29e3e337840e25132f10b3e3d55225f727ae13525ff0b0bdf31e03f09d74.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/4fad29e3e337840e25132f10b3e3d55225f727ae13525ff0b0bdf31e03f09d74.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..77c9771680a7b21ef657c6b7303a2db2a2eeb5c4 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/4fad29e3e337840e25132f10b3e3d55225f727ae13525ff0b0bdf31e03f09d74.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 256u; +if (i >= 256u) { return; } +let x = f32(b0[i]); +out[i] = f32(-x); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/50535e4c99d9fb4a272d8260a1415f6b38a7ad1025da64e145f230df697d9b73.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/50535e4c99d9fb4a272d8260a1415f6b38a7ad1025da64e145f230df697d9b73.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..9735e1efba0b2297940b84a0830ec5b3b741dbd5 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/50535e4c99d9fb4a272d8260a1415f6b38a7ad1025da64e145f230df697d9b73.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 131072u; +if (i >= 131072u) { return; } +let x = f32(b0[i]); +out[i] = f32(1.0 / (1.0 + exp(-x))); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/51fd4d798491c6a80daff4c18b0495926b7f62269dfc3a78a327faa52ba2a759.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/51fd4d798491c6a80daff4c18b0495926b7f62269dfc3a78a327faa52ba2a759.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..fc751a3c5de6830de0104027f986f119ec7276f2 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/51fd4d798491c6a80daff4c18b0495926b7f62269dfc3a78a327faa52ba2a759.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 64u; +if (i >= 16u) { return; } +let x = f32(b0[i]); +out[i] = f32(exp(x)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/52210a661e4d5241f53b3b1caf65456e1988ddd663ded8ead63ee7f7c7e3ff57.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/52210a661e4d5241f53b3b1caf65456e1988ddd663ded8ead63ee7f7c7e3ff57.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..70f8e98145f911a3fcd4871c31d5a135f54d9382 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/52210a661e4d5241f53b3b1caf65456e1988ddd663ded8ead63ee7f7c7e3ff57.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 32768u; +if (i >= 32768u) { return; } +out[i] = f32(b0[((i / 32768u) % 1u) * 32768u + ((i / 2048u) % 16u) * 128u + ((i / 128u) % 16u) * 2048u + ((i / 1u) % 128u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/5244c41c17f08956963dde4c3784e8e122ba0e3c0d76794c8b3673252f672f27.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/5244c41c17f08956963dde4c3784e8e122ba0e3c0d76794c8b3673252f672f27.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..a55ae4a2ab8874671b44a0ffb86ab7aa57ad3d28 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/5244c41c17f08956963dde4c3784e8e122ba0e3c0d76794c8b3673252f672f27.wgsl @@ -0,0 +1,28 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +var tile_a: array; +var tile_b: array; +@compute @workgroup_size(8, 8) +fn main(@builtin(workgroup_id) group: vec3, @builtin(local_invocation_id) local: vec3) { + let row = group.y * 8u + local.y; + let col = group.x * 8u + local.x; + let i = (group.z * 64u + row) * 18944u + col; + var acc = 0.0; + for (var tile = 0u; tile < 2048u; tile += 8u) { + tile_a[local.y * 8u + local.x] = 0.0; + tile_b[local.x * 8u + local.y] = 0.0; + if (row < 64u && tile + local.x < 2048u) { tile_a[local.y * 8u + local.x] = f32(b0[(group.z * 64u + row) * 2048u + tile + local.x]); } + if (group.x * 8u + local.y < 18944u && tile + local.x < 2048u) { tile_b[local.x * 8u + local.y] = unpack_bf16_1((group.x * 8u + local.y) * 2048u + tile + local.x); } + workgroupBarrier(); + for (var p = 0u; p < 8u; p++) { acc += tile_a[local.y * 8u + p] * tile_b[p * 8u + local.x]; } + workgroupBarrier(); + } + if (row < 64u && col < 18944u) { out[i] = f32(acc + 0.0); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/52d5f0189ff49849070362fea5585100e0c7a9eb6ff6722e3b545c113b965292.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/52d5f0189ff49849070362fea5585100e0c7a9eb6ff6722e3b545c113b965292.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..8bd84e39c2eb7578ff561ba4ef3e07b13ac03aab --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/52d5f0189ff49849070362fea5585100e0c7a9eb6ff6722e3b545c113b965292.wgsl @@ -0,0 +1,28 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +var tile_a: array; +var tile_b: array; +@compute @workgroup_size(8, 8) +fn main(@builtin(workgroup_id) group: vec3, @builtin(local_invocation_id) local: vec3) { + let row = group.y * 8u + local.y; + let col = group.x * 8u + local.x; + let i = (group.z * 4u + row) * 32768u + col; + var acc = 0.0; + for (var tile = 0u; tile < 2048u; tile += 8u) { + tile_a[local.y * 8u + local.x] = 0.0; + tile_b[local.x * 8u + local.y] = 0.0; + if (row < 4u && tile + local.x < 2048u) { tile_a[local.y * 8u + local.x] = f32(b0[(group.z * 4u + row) * 2048u + tile + local.x]); } + if (group.x * 8u + local.y < 32768u && tile + local.x < 2048u) { tile_b[local.x * 8u + local.y] = unpack_bf16_1((group.x * 8u + local.y) * 2048u + tile + local.x); } + workgroupBarrier(); + for (var p = 0u; p < 8u; p++) { acc += tile_a[local.y * 8u + p] * tile_b[p * 8u + local.x]; } + workgroupBarrier(); + } + if (row < 4u && col < 32768u) { out[i] = f32(acc + 0.0); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/53d6eb0b5e6d49bfd3bb9fd1b781e13317adf528e047da2416e95f5a3a13b1b4.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/53d6eb0b5e6d49bfd3bb9fd1b781e13317adf528e047da2416e95f5a3a13b1b4.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..b42167010260a49ed2060dcc92a7440b82333b7e --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/53d6eb0b5e6d49bfd3bb9fd1b781e13317adf528e047da2416e95f5a3a13b1b4.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 128u; +if (i >= 96u) { return; } +out[i] = f32(b0[((i / 32u) % 3u) * 32u + ((i / 32u) % 1u) * 32u + ((i / 32u) % 1u) * 1u + ((i / 1u) % 32u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/53e3ac216f0ae3145d66c606c4000249a876dbab48b41877415d9592ee714d8f.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/53e3ac216f0ae3145d66c606c4000249a876dbab48b41877415d9592ee714d8f.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..ac71e84bdec59b9bfa964b3eeca0734f76d5bd36 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/53e3ac216f0ae3145d66c606c4000249a876dbab48b41877415d9592ee714d8f.wgsl @@ -0,0 +1,28 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +var tile_a: array; +var tile_b: array; +@compute @workgroup_size(8, 8) +fn main(@builtin(workgroup_id) group: vec3, @builtin(local_invocation_id) local: vec3) { + let row = group.y * 8u + local.y; + let col = group.x * 8u + local.x; + let i = (group.z * 16u + row) * 16u + col; + var acc = 0.0; + for (var tile = 0u; tile < 2048u; tile += 8u) { + tile_a[local.y * 8u + local.x] = 0.0; + tile_b[local.x * 8u + local.y] = 0.0; + if (row < 16u && tile + local.x < 2048u) { tile_a[local.y * 8u + local.x] = f32(b0[(group.z * 16u + row) * 2048u + tile + local.x]); } + if (group.x * 8u + local.y < 16u && tile + local.x < 2048u) { tile_b[local.x * 8u + local.y] = unpack_bf16_1((group.x * 8u + local.y) * 2048u + tile + local.x); } + workgroupBarrier(); + for (var p = 0u; p < 8u; p++) { acc += tile_a[local.y * 8u + p] * tile_b[p * 8u + local.x]; } + workgroupBarrier(); + } + if (row < 16u && col < 16u) { out[i] = f32(acc + 0.0); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/55b9c48ba429daf80bbae0b4737f895b475abdc9ddfdc88ab2f894f133ec2bf9.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/55b9c48ba429daf80bbae0b4737f895b475abdc9ddfdc88ab2f894f133ec2bf9.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..2af2397f376be638d8bdd9858e37047571ac05c7 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/55b9c48ba429daf80bbae0b4737f895b475abdc9ddfdc88ab2f894f133ec2bf9.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 30720u; +if (i >= 30720u) { return; } +let x = f32(b0[i]); +out[i] = f32(x / (1.0 + exp(-x))); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/56167a7e8fb1c67fa72948a8baa71866d54cc775be83f8cfa75a947ac0f58b12.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/56167a7e8fb1c67fa72948a8baa71866d54cc775be83f8cfa75a947ac0f58b12.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..131d933387a2c401768152b9d9a7aebba3045f1d --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/56167a7e8fb1c67fa72948a8baa71866d54cc775be83f8cfa75a947ac0f58b12.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 640u; +if (i >= 640u) { return; } +out[i] = f32(b0[i]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/564b62d37d6845f8049f903d4ba35762c607937d8a9644bfe511fbc7bf90dacd.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/564b62d37d6845f8049f903d4ba35762c607937d8a9644bfe511fbc7bf90dacd.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..207ccef3274729b4ec8b34bb1549e283d3949102 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/564b62d37d6845f8049f903d4ba35762c607937d8a9644bfe511fbc7bf90dacd.wgsl @@ -0,0 +1,24 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +var factor: f32; +@compute @workgroup_size(64) +fn main(@builtin(workgroup_id) group: vec3, @builtin(local_invocation_id) local: vec3) { + let row = group.x + group.y * 64u; + if (row >= 64u) { return; } + let lane = local.x; + if (lane == 0u) { + var total = 0.0; + for (var j = 0u; j < 128u; j++) { + let v = f32(b0[row * 128u + j]); + total += v * v; + } + factor = inverseSqrt(total / 128.0 + 1e-06); + } + workgroupBarrier(); + for (var p = lane; p < 128u; p += 64u) { + let i = row * 128u + p; + out[i] = f32(f32(b0[row * 128u + p]) * factor * (f32(b1[p]) + 0.0)); + } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/56ea85fd6d5f7cc9394d6aa0ee2fdeee921dc84957548088041c975ba925c6a0.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/56ea85fd6d5f7cc9394d6aa0ee2fdeee921dc84957548088041c975ba925c6a0.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..c48577601580a048a286b395db7d42610842728b --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/56ea85fd6d5f7cc9394d6aa0ee2fdeee921dc84957548088041c975ba925c6a0.wgsl @@ -0,0 +1,17 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 524288u; +if (i >= 524288u) { return; } +let batch = i / 65536u; +let row = (i / 4096u) % 16u; +let col = i % 4096u; +var acc = 0.0; +for (var p = 0u; p < 256u; p++) { + acc += f32(b0[(((batch / 1u) % 8u) * 4096u) + row * 256u + p]) * f32(b1[(((batch / 1u) % 8u) * 1048576u) + p * 4096u + col]); +} +out[i] = f32(acc); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/577120bb3cdd5d1fb64df75a3d9d9bfb7df9a47cbe10c3df4702cdedda8742f2.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/577120bb3cdd5d1fb64df75a3d9d9bfb7df9a47cbe10c3df4702cdedda8742f2.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..4d943a2df4febe70053c14959960a8e1e18794c2 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/577120bb3cdd5d1fb64df75a3d9d9bfb7df9a47cbe10c3df4702cdedda8742f2.wgsl @@ -0,0 +1,17 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 32768u; +if (i >= 32768u) { return; } +let token = i32(b0[i / 2048u]); +if (token < 131072 || token >= 163840) { out[i] = f32(0.0); return; } +out[i] = f32(unpack_bf16_1(u32(token - 131072) * 2048u + i % 2048u)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/57dc406322bf3badd8490493ef924bd7e7e0afd542d2d6e409b4d8a3b4b784f7.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/57dc406322bf3badd8490493ef924bd7e7e0afd542d2d6e409b4d8a3b4b784f7.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..5442fb5e440bbbbc406fb5988a08504f70fb6527 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/57dc406322bf3badd8490493ef924bd7e7e0afd542d2d6e409b4d8a3b4b784f7.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 64u; +if (i >= 16u) { return; } +out[i] = f32(b0[i]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/58077eb80a5fa253f535c97c82dc07edd48455a17cc52583aeee41c7d1bbd0b3.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/58077eb80a5fa253f535c97c82dc07edd48455a17cc52583aeee41c7d1bbd0b3.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..26c3fcd5a0947b3197d818ca3d28084a0e9883c0 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/58077eb80a5fa253f535c97c82dc07edd48455a17cc52583aeee41c7d1bbd0b3.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 1024u; +if (i >= 1024u) { return; } +out[i] = f32(b0[((i / 1024u) % 1u) * 2048u + ((i / 512u) % 2u) * 1024u + ((i / 32u) % 16u) * 64u + (((i / 1u) % 32u) * 1u + 0u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/58a04f81024c554fa7384cf7989536e51ab65a353203039f95c9787453ee627c.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/58a04f81024c554fa7384cf7989536e51ab65a353203039f95c9787453ee627c.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..2621a473b250ca3d53761f9989f29bfa79441071 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/58a04f81024c554fa7384cf7989536e51ab65a353203039f95c9787453ee627c.wgsl @@ -0,0 +1,28 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +var tile_a: array; +var tile_b: array; +@compute @workgroup_size(8, 8) +fn main(@builtin(workgroup_id) group: vec3, @builtin(local_invocation_id) local: vec3) { + let row = group.y * 8u + local.y; + let col = group.x * 8u + local.x; + let i = (group.z * 16u + row) * 18944u + col; + var acc = 0.0; + for (var tile = 0u; tile < 2048u; tile += 8u) { + tile_a[local.y * 8u + local.x] = 0.0; + tile_b[local.x * 8u + local.y] = 0.0; + if (row < 16u && tile + local.x < 2048u) { tile_a[local.y * 8u + local.x] = f32(b0[(group.z * 16u + row) * 2048u + tile + local.x]); } + if (group.x * 8u + local.y < 18944u && tile + local.x < 2048u) { tile_b[local.x * 8u + local.y] = unpack_bf16_1((group.x * 8u + local.y) * 2048u + tile + local.x); } + workgroupBarrier(); + for (var p = 0u; p < 8u; p++) { acc += tile_a[local.y * 8u + p] * tile_b[p * 8u + local.x]; } + workgroupBarrier(); + } + if (row < 16u && col < 18944u) { out[i] = f32(acc + 0.0); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/59ea88d691b919af03bbb26f0253decfbc35d74f9661cdd3a08570ae85c313d2.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/59ea88d691b919af03bbb26f0253decfbc35d74f9661cdd3a08570ae85c313d2.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..5330d07c480a06ace52bbbeb6bf873fea1416d6c --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/59ea88d691b919af03bbb26f0253decfbc35d74f9661cdd3a08570ae85c313d2.wgsl @@ -0,0 +1,11 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 64u; +if (i >= 16u) { return; } +let x = f32(b0[i]); +if (x * 1.0 > 20.0) { out[i] = f32(x); return; } +out[i] = f32(log(1.0 + exp(x * 1.0)) / 1.0); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/5a3a2ba3e1cb848fbbeeafe66425eae65d9fd196646d15eef291188a8179e044.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/5a3a2ba3e1cb848fbbeeafe66425eae65d9fd196646d15eef291188a8179e044.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..b4abda1ec110ebd592305d0f5da6c3c12a9cd3b2 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/5a3a2ba3e1cb848fbbeeafe66425eae65d9fd196646d15eef291188a8179e044.wgsl @@ -0,0 +1,24 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +var factor: f32; +@compute @workgroup_size(64) +fn main(@builtin(workgroup_id) group: vec3, @builtin(local_invocation_id) local: vec3) { + let row = group.x + group.y * 256u; + if (row >= 256u) { return; } + let lane = local.x; + if (lane == 0u) { + var total = 0.0; + for (var j = 0u; j < 128u; j++) { + let v = f32(b0[row * 128u + j]); + total += v * v; + } + factor = inverseSqrt(total / 128.0 + 1e-06); + } + workgroupBarrier(); + for (var p = lane; p < 128u; p += 64u) { + let i = row * 128u + p; + out[i] = f32(f32(b0[row * 128u + p]) * factor * (f32(b1[p]) + 0.0)); + } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/5b490e5074446b3ca05ffdd5f79c18e32aa5c23339dd93c75956125f4caba51f.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/5b490e5074446b3ca05ffdd5f79c18e32aa5c23339dd93c75956125f4caba51f.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..870c6cb0aebb0fde1717398c326d3db43912c502 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/5b490e5074446b3ca05ffdd5f79c18e32aa5c23339dd93c75956125f4caba51f.wgsl @@ -0,0 +1,24 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +var factor: f32; +@compute @workgroup_size(64) +fn main(@builtin(workgroup_id) group: vec3, @builtin(local_invocation_id) local: vec3) { + let row = group.x + group.y * 1u; + if (row >= 1u) { return; } + let lane = local.x; + if (lane == 0u) { + var total = 0.0; + for (var j = 0u; j < 2048u; j++) { + let v = f32(b0[row * 2048u + j]); + total += v * v; + } + factor = inverseSqrt(total / 2048.0 + 1e-06); + } + workgroupBarrier(); + for (var p = lane; p < 2048u; p += 64u) { + let i = row * 2048u + p; + out[i] = f32(f32(b0[row * 2048u + p]) * factor * (f32(b1[p]) + 1.0)); + } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/5b657fa4e308a89ca0d0edb8cb2a485d6f048dcdbcffb9e2c3a50073be7ad3ff.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/5b657fa4e308a89ca0d0edb8cb2a485d6f048dcdbcffb9e2c3a50073be7ad3ff.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..60716a57ed41c31fd5c206966674517aef787748 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/5b657fa4e308a89ca0d0edb8cb2a485d6f048dcdbcffb9e2c3a50073be7ad3ff.wgsl @@ -0,0 +1,22 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var b2: array; +@group(0) @binding(3) var b3: array; +@group(0) @binding(4) var b4: array; +@group(0) @binding(5) var b5: array; +@group(0) @binding(6) var b6: array; +@group(0) @binding(7) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 917504u; +if (i >= 917504u) { return; } +let coord = (i / 1u) % 229376u; +if (coord >= 0u && coord < 32768u) { out[i] = f32(b0[(i / 229376u) * 32768u + (coord - 0u) * 1u + i % 1u]); } +if (coord >= 32768u && coord < 65536u) { out[i] = f32(b1[(i / 229376u) * 32768u + (coord - 32768u) * 1u + i % 1u]); } +if (coord >= 65536u && coord < 98304u) { out[i] = f32(b2[(i / 229376u) * 32768u + (coord - 65536u) * 1u + i % 1u]); } +if (coord >= 98304u && coord < 131072u) { out[i] = f32(b3[(i / 229376u) * 32768u + (coord - 98304u) * 1u + i % 1u]); } +if (coord >= 131072u && coord < 163840u) { out[i] = f32(b4[(i / 229376u) * 32768u + (coord - 131072u) * 1u + i % 1u]); } +if (coord >= 163840u && coord < 196608u) { out[i] = f32(b5[(i / 229376u) * 32768u + (coord - 163840u) * 1u + i % 1u]); } +if (coord >= 196608u && coord < 229376u) { out[i] = f32(b6[(i / 229376u) * 32768u + (coord - 196608u) * 1u + i % 1u]); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/5c22e6f60217881c0351e38d19057626a6c2292771c1a83816995245777ac2fd.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/5c22e6f60217881c0351e38d19057626a6c2292771c1a83816995245777ac2fd.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..a0a200bcf1771e18ac73794fa78eac0151343d48 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/5c22e6f60217881c0351e38d19057626a6c2292771c1a83816995245777ac2fd.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 256u; +if (i >= 256u) { return; } +out[i] = f32(b0[((i / 256u) % 1u) * 512u + ((i / 32u) % 8u) * 64u + ((i / 32u) % 1u) * 64u + (((i / 1u) % 32u) * 1u + 0u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/5c9a5ae6121b3b10611e09e5f1bc563b70191f2506a2afc0f32de823a9d2dac4.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/5c9a5ae6121b3b10611e09e5f1bc563b70191f2506a2afc0f32de823a9d2dac4.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..fd1c96b16a3a569b268cd100091060be8f6f800c --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/5c9a5ae6121b3b10611e09e5f1bc563b70191f2506a2afc0f32de823a9d2dac4.wgsl @@ -0,0 +1,12 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 128u; +if (i >= 128u) { return; } +let coord = (i / 1u) % 64u; +if (coord >= 0u && coord < 32u) { out[i] = f32(b0[(i / 64u) * 32u + (coord - 0u) * 1u + i % 1u]); } +if (coord >= 32u && coord < 64u) { out[i] = f32(b1[(i / 64u) * 32u + (coord - 32u) * 1u + i % 1u]); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/5cf28cf1e0aa6d5f0ce563a179880681416b707a70113119e68f1d62dc368c51.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/5cf28cf1e0aa6d5f0ce563a179880681416b707a70113119e68f1d62dc368c51.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..25fb4a60e0d5dc5c38f4f96bec8ea29068f2e356 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/5cf28cf1e0aa6d5f0ce563a179880681416b707a70113119e68f1d62dc368c51.wgsl @@ -0,0 +1,12 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 122880u; +if (i >= 122880u) { return; } +let coord = (i / 1u) % 20u; +if (coord >= 0u && coord < 4u) { out[i] = f32(b0[(i / 20u) * 4u + (coord - 0u) * 1u + i % 1u]); } +if (coord >= 4u && coord < 20u) { out[i] = f32(b1[(i / 20u) * 16u + (coord - 4u) * 1u + i % 1u]); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/5eac5f92aa4d18895369b11adb99ac0d9639d8b615f7240cffe6f6be7046e54a.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/5eac5f92aa4d18895369b11adb99ac0d9639d8b615f7240cffe6f6be7046e54a.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..44b1efb36c66e24c004b699b692f008a68d352e6 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/5eac5f92aa4d18895369b11adb99ac0d9639d8b615f7240cffe6f6be7046e54a.wgsl @@ -0,0 +1,24 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +var factor: f32; +@compute @workgroup_size(64) +fn main(@builtin(workgroup_id) group: vec3, @builtin(local_invocation_id) local: vec3) { + let row = group.x + group.y * 2u; + if (row >= 2u) { return; } + let lane = local.x; + if (lane == 0u) { + var total = 0.0; + for (var j = 0u; j < 256u; j++) { + let v = f32(b0[row * 256u + j]); + total += v * v; + } + factor = inverseSqrt(total / 256.0 + 1e-06); + } + workgroupBarrier(); + for (var p = lane; p < 256u; p += 64u) { + let i = row * 256u + p; + out[i] = f32(f32(b0[row * 256u + p]) * factor * (f32(b1[p]) + 1.0)); + } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/5f4403d78557e88e66d71eb5e53746cc07449a7c421b57eda4f093a09a68a99a.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/5f4403d78557e88e66d71eb5e53746cc07449a7c421b57eda4f093a09a68a99a.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..551de5c0fa29e8a924b81b6fe11c9a2cc3673d1d --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/5f4403d78557e88e66d71eb5e53746cc07449a7c421b57eda4f093a09a68a99a.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 4096u; +if (i >= 4096u) { return; } +out[i] = f32(b0[i]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/5f57b46016eccc3b50e3685e142b7deadce8f074f124e643e6e7015e2cc27357.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/5f57b46016eccc3b50e3685e142b7deadce8f074f124e643e6e7015e2cc27357.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..172250df828f8da8336e4e12e54dce7b4361dcca --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/5f57b46016eccc3b50e3685e142b7deadce8f074f124e643e6e7015e2cc27357.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 512u; +if (i >= 512u) { return; } +out[i] = f32(b0[0u * 512u + ((i / 512u) % 1u) * 512u + ((i / 32u) % 16u) * 32u + ((i / 1u) % 32u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/5f657afde3ab80a1fc4b6739c0b702bc5bd60e52630762e66b210fbb8b42b52a.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/5f657afde3ab80a1fc4b6739c0b702bc5bd60e52630762e66b210fbb8b42b52a.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..c35d470700b5e1330d30c2ea3f7e0c5d0f77d4a6 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/5f657afde3ab80a1fc4b6739c0b702bc5bd60e52630762e66b210fbb8b42b52a.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 384u; +if (i >= 384u) { return; } +out[i] = f32(b0[((i / 384u) % 1u) * 512u + ((i / 192u) % 2u) * 256u + ((i / 192u) % 1u) * 256u + (((i / 1u) % 192u) * 1u + 64u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/5f9d7a23bba38f692aefbf2617133c7884ddbe4ea6d985a89a59c1683dcfd6bf.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/5f9d7a23bba38f692aefbf2617133c7884ddbe4ea6d985a89a59c1683dcfd6bf.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..ceee99ad7864aec44da1701c29c6722ce73360ea --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/5f9d7a23bba38f692aefbf2617133c7884ddbe4ea6d985a89a59c1683dcfd6bf.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 256u; +if (i >= 256u) { return; } +out[i] = f32(f32(b0[i]) + (f32(b1[((i / 1u) % 16u) * 1u]) * 1.0)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/5fbfe4534ce5bfff645563250dd536998f537f4d690c4c2fc422723d5af8e3ec.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/5fbfe4534ce5bfff645563250dd536998f537f4d690c4c2fc422723d5af8e3ec.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..193a2537b445b31c64b052c52eb4c9d921d70b8a --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/5fbfe4534ce5bfff645563250dd536998f537f4d690c4c2fc422723d5af8e3ec.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 192u; +if (i >= 160u) { return; } +out[i] = f32(b0[((i / 160u) % 1u) * 512u + ((i / 10u) % 16u) * 32u + (((i / 1u) % 10u) * 3u + 2u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/5fd6e068841f5c054392bef564909dbf086bae9e4030f3625d1143244a08cbbf.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/5fd6e068841f5c054392bef564909dbf086bae9e4030f3625d1143244a08cbbf.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..d60668fd46afd65337a293687e115ac26feb2dab --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/5fd6e068841f5c054392bef564909dbf086bae9e4030f3625d1143244a08cbbf.wgsl @@ -0,0 +1,11 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 64u; +if (i >= 64u) { return; } +let coord = (i / 1u) % 64u; +if (coord >= 0u && coord < 32u) { out[i] = f32(b0[(i / 64u) * 32u + (coord - 0u) * 1u + i % 1u]); } +if (coord >= 32u && coord < 64u) { out[i] = f32(b0[(i / 64u) * 32u + (coord - 32u) * 1u + i % 1u]); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/5ffab5e011b6e44aae54b4287fcbe68c4a20cee0779818a3178470f3b6d5ffd6.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/5ffab5e011b6e44aae54b4287fcbe68c4a20cee0779818a3178470f3b6d5ffd6.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..c0bf09599bef50a3975853a18604ea616d8def57 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/5ffab5e011b6e44aae54b4287fcbe68c4a20cee0779818a3178470f3b6d5ffd6.wgsl @@ -0,0 +1,17 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 8192u; +if (i >= 8192u) { return; } +let token = i32(b0[i / 2048u]); +if (token < 131072 || token >= 163840) { out[i] = f32(0.0); return; } +out[i] = f32(unpack_bf16_1(u32(token - 131072) * 2048u + i % 2048u)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/605f51996eef0769d3b456a83f7540262d1761589b55d1fd41fb2b4dd8fa249f.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/605f51996eef0769d3b456a83f7540262d1761589b55d1fd41fb2b4dd8fa249f.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..b7d98d8c1120f26495f041687f38c922b7d915a0 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/605f51996eef0769d3b456a83f7540262d1761589b55d1fd41fb2b4dd8fa249f.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 8192u; +if (i >= 8192u) { return; } +out[i] = f32(f32(b0[i]) + (f32(b1[i]) * 1.0)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/60a9a411c756055d21d8ec478436ba82e0fd522ccf1eb4488aef6b25769d96c5.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/60a9a411c756055d21d8ec478436ba82e0fd522ccf1eb4488aef6b25769d96c5.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..74d1a37530eabc7d2b6883db2e089ed6944b61c0 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/60a9a411c756055d21d8ec478436ba82e0fd522ccf1eb4488aef6b25769d96c5.wgsl @@ -0,0 +1,17 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 8192u; +if (i >= 8192u) { return; } +let batch = i / 1024u; +let row = (i / 256u) % 4u; +let col = i % 256u; +var acc = 0.0; +for (var p = 0u; p < 4096u; p++) { + acc += f32(b0[(((batch / 1u) % 8u) * 16384u) + row * 4096u + p]) * f32(b1[(((batch / 1u) % 8u) * 1048576u) + p * 256u + col]); +} +out[i] = f32(acc); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/62241f9af7edde53e203819e23574a91664aff7282197113c8fee316f6c2af8f.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/62241f9af7edde53e203819e23574a91664aff7282197113c8fee316f6c2af8f.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..5170f151055f4e74fb81a448bae0c616b5b8c258 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/62241f9af7edde53e203819e23574a91664aff7282197113c8fee316f6c2af8f.wgsl @@ -0,0 +1,11 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var b2: array; +@group(0) @binding(3) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 131072u; +if (i >= 131072u) { return; } +out[i] = f32(select(f32(b0[i]), f32(b1[i]), f32(b2[((i / 2048u) % 64u) * 1u]) != 0.0)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/62708aacbfcd0063a897e3348ae69a00d4dd155fce6665b18c5176224b039e12.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/62708aacbfcd0063a897e3348ae69a00d4dd155fce6665b18c5176224b039e12.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..629602688d61519650c7ac61b20d5224accd2e22 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/62708aacbfcd0063a897e3348ae69a00d4dd155fce6665b18c5176224b039e12.wgsl @@ -0,0 +1,17 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 131072u; +if (i >= 131072u) { return; } +let token = i32(b0[i / 2048u]); +if (token < 32768 || token >= 65536) { out[i] = f32(0.0); return; } +out[i] = f32(unpack_bf16_1(u32(token - 32768) * 2048u + i % 2048u)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/62f30a62c18ed78c9bf37bdc56529accbee2264b9eac931ba0b35a80bb917e7c.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/62f30a62c18ed78c9bf37bdc56529accbee2264b9eac931ba0b35a80bb917e7c.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..f77c378d9485e77efa187d66dd4704a129bbf949 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/62f30a62c18ed78c9bf37bdc56529accbee2264b9eac931ba0b35a80bb917e7c.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 128u; +if (i >= 128u) { return; } +out[i] = f32(b0[2u * 128u + ((i / 128u) % 1u) * 128u + ((i / 32u) % 4u) * 32u + ((i / 1u) % 32u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/63396da046b345383e1c7b09aee551d08e4c3c45030ff5c8bb76bbc34bb2abc6.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/63396da046b345383e1c7b09aee551d08e4c3c45030ff5c8bb76bbc34bb2abc6.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..a41ec428d6e31c551c8314a9e96300e2fc7194e8 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/63396da046b345383e1c7b09aee551d08e4c3c45030ff5c8bb76bbc34bb2abc6.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 32768u; +if (i >= 32768u) { return; } +out[i] = f32(b0[((i / 32768u) % 1u) * 32768u + ((i / 4096u) % 8u) * 256u + ((i / 256u) % 16u) * 2048u + ((i / 1u) % 256u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/64f29e6a6e8772f8cfc7449941fd85f70caff7c7e20f316c39b394500e9a8ce1.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/64f29e6a6e8772f8cfc7449941fd85f70caff7c7e20f316c39b394500e9a8ce1.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..4a5c11bc4a5081edc0742bee29b2392e1756f244 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/64f29e6a6e8772f8cfc7449941fd85f70caff7c7e20f316c39b394500e9a8ce1.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 1024u; +if (i >= 1024u) { return; } +let x = f32(b0[i]); +out[i] = f32(inverseSqrt(x)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/66910ed3098ead5efda545ccf86d718ce7bb894c0d16e6944cdaed2c0f2a8b9f.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/66910ed3098ead5efda545ccf86d718ce7bb894c0d16e6944cdaed2c0f2a8b9f.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..bf708c574bc21b102c9b4ffe97e4391c8d9ab8e1 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/66910ed3098ead5efda545ccf86d718ce7bb894c0d16e6944cdaed2c0f2a8b9f.wgsl @@ -0,0 +1,11 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var b2: array; +@group(0) @binding(3) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 8192u; +if (i >= 8192u) { return; } +out[i] = f32(select(f32(b0[i]), f32(b1[i]), f32(b2[((i / 2048u) % 4u) * 1u]) != 0.0)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/67816e11d408a6230572433502ace2f9a337285eb623360a1cec493e95add139.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/67816e11d408a6230572433502ace2f9a337285eb623360a1cec493e95add139.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..3262b91520b6a20fc3d4af305fa62d20f7f489f3 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/67816e11d408a6230572433502ace2f9a337285eb623360a1cec493e95add139.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 2048u; +if (i >= 2048u) { return; } +out[i] = f32(b0[((i / 2048u) % 1u) * 2048u + ((i / 1024u) % 2u) * 256u + ((i / 256u) % 4u) * 512u + ((i / 1u) % 256u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/67978e951813ede8016ebf553fb8d3b4ce9e15dd184810544879559208d6b7e1.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/67978e951813ede8016ebf553fb8d3b4ce9e15dd184810544879559208d6b7e1.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..3decac1417ec3c8a4798040f6305fb178904c916 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/67978e951813ede8016ebf553fb8d3b4ce9e15dd184810544879559208d6b7e1.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 64u; +if (i >= 16u) { return; } +let x = f32(b0[i]); +out[i] = f32(1.0 / (1.0 + exp(-x))); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/687a9faf59b35be173c2861749834333b53400d1dd22bf430cef04722237a309.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/687a9faf59b35be173c2861749834333b53400d1dd22bf430cef04722237a309.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..b9310be9718c1ef860ce9c6c007a196a737d0847 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/687a9faf59b35be173c2861749834333b53400d1dd22bf430cef04722237a309.wgsl @@ -0,0 +1,17 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 8192u; +if (i >= 8192u) { return; } +let token = i32(b0[i / 2048u]); +if (token < 98304 || token >= 131072) { out[i] = f32(0.0); return; } +out[i] = f32(unpack_bf16_1(u32(token - 98304) * 2048u + i % 2048u)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/690d8dfb579e55be9c90fa8375f6e2ddde55256a6552a59d83e054f34b485ea0.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/690d8dfb579e55be9c90fa8375f6e2ddde55256a6552a59d83e054f34b485ea0.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..8936fc31b8574d16ff2955089500bcb3109d73d8 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/690d8dfb579e55be9c90fa8375f6e2ddde55256a6552a59d83e054f34b485ea0.wgsl @@ -0,0 +1,22 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var b2: array; +@group(0) @binding(3) var b3: array; +@group(0) @binding(4) var b4: array; +@group(0) @binding(5) var b5: array; +@group(0) @binding(6) var b6: array; +@group(0) @binding(7) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 229376u; +if (i >= 229376u) { return; } +let coord = (i / 1u) % 229376u; +if (coord >= 0u && coord < 32768u) { out[i] = f32(b0[(i / 229376u) * 32768u + (coord - 0u) * 1u + i % 1u]); } +if (coord >= 32768u && coord < 65536u) { out[i] = f32(b1[(i / 229376u) * 32768u + (coord - 32768u) * 1u + i % 1u]); } +if (coord >= 65536u && coord < 98304u) { out[i] = f32(b2[(i / 229376u) * 32768u + (coord - 65536u) * 1u + i % 1u]); } +if (coord >= 98304u && coord < 131072u) { out[i] = f32(b3[(i / 229376u) * 32768u + (coord - 98304u) * 1u + i % 1u]); } +if (coord >= 131072u && coord < 163840u) { out[i] = f32(b4[(i / 229376u) * 32768u + (coord - 131072u) * 1u + i % 1u]); } +if (coord >= 163840u && coord < 196608u) { out[i] = f32(b5[(i / 229376u) * 32768u + (coord - 163840u) * 1u + i % 1u]); } +if (coord >= 196608u && coord < 229376u) { out[i] = f32(b6[(i / 229376u) * 32768u + (coord - 196608u) * 1u + i % 1u]); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/691af757595593839af5e5e97ee656472f6e7c7406f57d1d9faae74816d9fc91.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/691af757595593839af5e5e97ee656472f6e7c7406f57d1d9faae74816d9fc91.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..a7942f03138945c79bce1f33264f80e672218280 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/691af757595593839af5e5e97ee656472f6e7c7406f57d1d9faae74816d9fc91.wgsl @@ -0,0 +1,11 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 6144u; +if (i >= 6144u) { return; } +let coord = (i / 2048u) % 3u; +if (coord == 0u) { out[i] = f32(b0[((i / 2048u) % 1u) * 2048u + ((i / 32u) % 64u) * 32u + ((i / 1u) % 32u) * 1u]); } else { out[i] = f32(b1[i]); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/695f529f0e562834854d654e481bdf53c35ad4428f76f66595b3c57cbad54423.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/695f529f0e562834854d654e481bdf53c35ad4428f76f66595b3c57cbad54423.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..7bec1dc64aa1048f3ad37f7e66fea2889c5f3325 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/695f529f0e562834854d654e481bdf53c35ad4428f76f66595b3c57cbad54423.wgsl @@ -0,0 +1,12 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 248320u; +if (i >= 248320u) { return; } +let coord = (i / 1u) % 248320u; +if (coord >= 0u && coord < 229376u) { out[i] = f32(b0[(i / 248320u) * 229376u + (coord - 0u) * 1u + i % 1u]); } +if (coord >= 229376u && coord < 248320u) { out[i] = f32(b1[(i / 248320u) * 18944u + (coord - 229376u) * 1u + i % 1u]); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/6a045508377e47e95d411257071b7ed8f9097fd220c00de6a5167abb548ebe37.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/6a045508377e47e95d411257071b7ed8f9097fd220c00de6a5167abb548ebe37.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..6bd34a6b3bb77a79fdcd3a519ca2897dc0b8084d --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/6a045508377e47e95d411257071b7ed8f9097fd220c00de6a5167abb548ebe37.wgsl @@ -0,0 +1,21 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 49152u; +if (i >= 49152u) { return; } +let batch = i / 49152u; +let channel = (i / 8u) % 6144u; +let group = channel / 1u; +var acc = 0.0; +for (var c = 0u; c < 1u; c++) { + for (var p = 0u; p < 4u; p++) { + let pos0 = i32((i / 1u) % 8u) * 1 + i32((p / 1u) % 4u) * 1 - 3; + if (pos0 >= 0 && pos0 < 5) { acc += f32(b0[batch * 30720u + (group * 1u + c) * 5u + u32(pos0) * 1u]) * f32(b1[(channel * 1u + c) * 4u + p]); } + } +} +out[i] = f32(acc + 0.0); + +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/6a7b2e3778a02c76155d46fa84aeb33f594954e82e09b6b7f2915c0a606eb3f5.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/6a7b2e3778a02c76155d46fa84aeb33f594954e82e09b6b7f2915c0a606eb3f5.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..dbb8e11929641cd77e1054eb002c379556e71409 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/6a7b2e3778a02c76155d46fa84aeb33f594954e82e09b6b7f2915c0a606eb3f5.wgsl @@ -0,0 +1,11 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 2048u; +if (i >= 2048u) { return; } +var acc = 0.0; +for (var j = 0u; j < 128u; j++) { acc += f32(b0[(((i / 2048u) % 1u) * 262144u + ((i / 128u) % 16u) * 16384u + ((i / 1u) % 128u) * 1u) + (((j / 1u) % 128u) * 128u)]); } +out[i] = f32(acc); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/6ae4c7f13978e60e3f4ccd5b8172af88d7dc24cfdb236e51b826f13a03d8cd02.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/6ae4c7f13978e60e3f4ccd5b8172af88d7dc24cfdb236e51b826f13a03d8cd02.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..1d620a8021e4cd0706b810a2dbc2ee727980b6c2 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/6ae4c7f13978e60e3f4ccd5b8172af88d7dc24cfdb236e51b826f13a03d8cd02.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 512u; +if (i >= 512u) { return; } +out[i] = f32(b0[((i / 512u) % 1u) * 2048u + ((i / 64u) % 8u) * 256u + ((i / 64u) % 1u) * 256u + (((i / 1u) % 64u) * 1u + 0u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/6c57b74ac00a3e385675c024ab180b06a05158dcda1371891249af95792f27fc.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/6c57b74ac00a3e385675c024ab180b06a05158dcda1371891249af95792f27fc.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..459016f5ff986a1eb3571496fd063c81574182d8 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/6c57b74ac00a3e385675c024ab180b06a05158dcda1371891249af95792f27fc.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 8192u; +if (i >= 8192u) { return; } +out[i] = f32(b0[((i / 8192u) % 1u) * 8192u + ((i / 4096u) % 2u) * 256u + ((i / 256u) % 16u) * 512u + ((i / 1u) % 256u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/6caa35fcab56c639d1859e1b090a7e5bf016dd7f33ecd2373c24ab625de16e09.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/6caa35fcab56c639d1859e1b090a7e5bf016dd7f33ecd2373c24ab625de16e09.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..5db8d82fad4be98a827f74b0ec3fc41fc2343ddc --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/6caa35fcab56c639d1859e1b090a7e5bf016dd7f33ecd2373c24ab625de16e09.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 2048u; +if (i >= 2048u) { return; } +out[i] = f32(b0[((i / 2048u) % 1u) * 8192u + ((i / 1024u) % 2u) * 4096u + ((i / 64u) % 16u) * 256u + (((i / 1u) % 64u) * 1u + 0u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/6d748fa04b83886e523f4d9b826e6865f73b31dfe31385b10bd0b9cc9ec4d1db.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/6d748fa04b83886e523f4d9b826e6865f73b31dfe31385b10bd0b9cc9ec4d1db.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..aa5ac8b5beae5c1e53d680c578ece9e674631f78 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/6d748fa04b83886e523f4d9b826e6865f73b31dfe31385b10bd0b9cc9ec4d1db.wgsl @@ -0,0 +1,13 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { + let i = gid.x + gid.y * 8192u; + if (i >= 8192u) { return; } + let token = (i / 256u) % 16u; + let outer = i / 4096u; + let destination = outer * 1048576u + u32(b1[token]) * 256u + i % 256u; + out[((destination) / 256u) % 4096u * 512u + ((destination) / 1048576u) % 2u * 256u + ((destination) / 1u) % 256u * 1u] = f32(b0[i]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/6d82b7ed99a04f03fa0b9d241188d9613fa3ce9ff425cf8ee30a7f4ce6ded13d.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/6d82b7ed99a04f03fa0b9d241188d9613fa3ce9ff425cf8ee30a7f4ce6ded13d.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..4872a52cf4ada5f89c536415428031fbe79b8ce5 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/6d82b7ed99a04f03fa0b9d241188d9613fa3ce9ff425cf8ee30a7f4ce6ded13d.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 4096u; +if (i >= 4096u) { return; } +out[i] = f32(b0[((i / 4096u) % 1u) * 8192u + ((i / 2048u) % 2u) * 4096u + ((i / 32u) % 64u) * 64u + (((i / 1u) % 32u) * 1u + 32u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/6de6505af6ba3c1c020424d3a99773ff62d2308a2fbf2295ec2ea7e919e4cbb9.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/6de6505af6ba3c1c020424d3a99773ff62d2308a2fbf2295ec2ea7e919e4cbb9.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..92b787efdff3782565df98fa90a1fd6f3fb1c7bf --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/6de6505af6ba3c1c020424d3a99773ff62d2308a2fbf2295ec2ea7e919e4cbb9.wgsl @@ -0,0 +1,11 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 32768u; +if (i >= 32768u) { return; } +let x = f32(b0[i]); let s = f32(f32(x / (1.0 + exp(-x)))); +out[i] = f32(s * f32(b1[i])); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/6e158cae64ceafa60c5498129bbc4482684844432772c61a9f2cfb62482bdeb4.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/6e158cae64ceafa60c5498129bbc4482684844432772c61a9f2cfb62482bdeb4.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..640e4dd31766c45ff37ad7bc03cc5be441b23b4b --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/6e158cae64ceafa60c5498129bbc4482684844432772c61a9f2cfb62482bdeb4.wgsl @@ -0,0 +1,17 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 8192u; +if (i >= 8192u) { return; } +let token = i32(b0[i / 2048u]); +if (token < 32768 || token >= 65536) { out[i] = f32(0.0); return; } +out[i] = f32(unpack_bf16_1(u32(token - 32768) * 2048u + i % 2048u)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/7002f8fdf09f5124ce2875c3540bce3e77750260556fc1a00a8b13b6c1871c30.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/7002f8fdf09f5124ce2875c3540bce3e77750260556fc1a00a8b13b6c1871c30.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..5296bf14fb8b70f8480bfd7ccbbb1548cc142bca --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/7002f8fdf09f5124ce2875c3540bce3e77750260556fc1a00a8b13b6c1871c30.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 512u; +if (i >= 512u) { return; } +out[i] = f32(f32(b0[i]) * f32(b1[((i / 1u) % 64u) * 1u])); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/7121b5c223da0b0f28991f55cfed3c3f3390caa0bf65a8e58ae380db281ceb6b.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/7121b5c223da0b0f28991f55cfed3c3f3390caa0bf65a8e58ae380db281ceb6b.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..69d777ae7caf63f2db83f47bb596dbe1e85a7c4b --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/7121b5c223da0b0f28991f55cfed3c3f3390caa0bf65a8e58ae380db281ceb6b.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 64u; +if (i >= 11u) { return; } +out[i] = f32(b0[((i / 11u) % 1u) * 32u + ((i / 11u) % 1u) * 32u + (((i / 1u) % 11u) * 3u + 1u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/7183997261247fa4df7e081c0d6d01036fee95b9b57ef944d5f44f72fc80d5fe.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/7183997261247fa4df7e081c0d6d01036fee95b9b57ef944d5f44f72fc80d5fe.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..99d3e6e77543d2cc58b39e9dcb97109efd21a2fe --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/7183997261247fa4df7e081c0d6d01036fee95b9b57ef944d5f44f72fc80d5fe.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 64u; +if (i >= 3u) { return; } +out[i] = i32(b0[i]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/71d38690bcc7fc30f01f1c8fa2f13a38beff889fcb3ff387861bb70038e92129.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/71d38690bcc7fc30f01f1c8fa2f13a38beff889fcb3ff387861bb70038e92129.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..a53c6f1656ae08f4e2c239592dc559814e4bdee4 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/71d38690bcc7fc30f01f1c8fa2f13a38beff889fcb3ff387861bb70038e92129.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 192u; +if (i >= 192u) { return; } +out[i] = i32(b0[(((i / 64u) % 3u) * 1u + 1u) * 64u + ((i / 64u) % 1u) * 64u + ((i / 1u) % 64u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/720dc88131b6bf06e6b09185aa7d5986eb755dcfa60d0e040cbbf621c8f3f761.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/720dc88131b6bf06e6b09185aa7d5986eb755dcfa60d0e040cbbf621c8f3f761.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..77d2c6148b0bb0637e96ebb50a802068507c98e0 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/720dc88131b6bf06e6b09185aa7d5986eb755dcfa60d0e040cbbf621c8f3f761.wgsl @@ -0,0 +1,12 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 512u; +if (i >= 512u) { return; } +let coord = (i / 1u) % 256u; +if (coord >= 0u && coord < 64u) { out[i] = f32(b0[(i / 256u) * 64u + (coord - 0u) * 1u + i % 1u]); } +if (coord >= 64u && coord < 256u) { out[i] = f32(b1[(i / 256u) * 192u + (coord - 64u) * 1u + i % 1u]); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/72474f821f837da4ebaab4cc925fdac78b707346be174a7c033c4c6518935abc.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/72474f821f837da4ebaab4cc925fdac78b707346be174a7c033c4c6518935abc.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..5724c8466d198ca39894d20505ee5c1a65748333 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/72474f821f837da4ebaab4cc925fdac78b707346be174a7c033c4c6518935abc.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 131072u; +if (i >= 131072u) { return; } +out[i] = f32(b0[((i / 131072u) % 1u) * 131072u + ((i / 2048u) % 64u) * 128u + ((i / 128u) % 16u) * 8192u + ((i / 1u) % 128u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/73b861456466f63d096073357cb34eb5f5819861a2961838b6590969f894fa95.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/73b861456466f63d096073357cb34eb5f5819861a2961838b6590969f894fa95.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..0995f2ce93a8810f3254aea52a51e8c4ae81ab52 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/73b861456466f63d096073357cb34eb5f5819861a2961838b6590969f894fa95.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 256u; +if (i >= 256u) { return; } +out[i] = f32(f32(b0[i]) + (1e-06 * 1.0)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/742db031d819fdf5a756f37e8e824e2dcb2ca3f30efac3ffbd5918181059ae3a.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/742db031d819fdf5a756f37e8e824e2dcb2ca3f30efac3ffbd5918181059ae3a.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..0879520c73bf4f1395e8a15cc5874fa97dbecde1 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/742db031d819fdf5a756f37e8e824e2dcb2ca3f30efac3ffbd5918181059ae3a.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 262144u; +if (i >= 262144u) { return; } +out[i] = f32(f32(b0[i]) * f32(b1[((i / 16384u) % 16u) * 1u])); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/752da00e33abf87b63eba03893a16e7db848f97f1385942d40d8cfb5122d9bd3.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/752da00e33abf87b63eba03893a16e7db848f97f1385942d40d8cfb5122d9bd3.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..1601c2f1c95920dd739e32da0111d879da60655e --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/752da00e33abf87b63eba03893a16e7db848f97f1385942d40d8cfb5122d9bd3.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 64u; +if (i >= 40u) { return; } +out[i] = f32(b0[((i / 40u) % 1u) * 128u + ((i / 10u) % 4u) * 32u + (((i / 1u) % 10u) * 3u + 2u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/764403c33cd8994568e068810380cb57e9f2e326dfc09bed63eed1fbed044da1.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/764403c33cd8994568e068810380cb57e9f2e326dfc09bed63eed1fbed044da1.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..4d0a0fe1c2ad2ca1647d571a4c09e923d06aee0e --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/764403c33cd8994568e068810380cb57e9f2e326dfc09bed63eed1fbed044da1.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 1024u; +if (i >= 1024u) { return; } +let x = f32(b0[i]); +out[i] = f32(cos(x)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/77f9becbd500abcaf6a8d278cbcb6c7031868ff5bf74f41284940d56894cf9fa.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/77f9becbd500abcaf6a8d278cbcb6c7031868ff5bf74f41284940d56894cf9fa.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..c36ce90766882622ae62ab165611a02376cc4d8c --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/77f9becbd500abcaf6a8d278cbcb6c7031868ff5bf74f41284940d56894cf9fa.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 64u; +if (i >= 64u) { return; } +out[i] = f32(f32(b0[i]) + (f32(b1[((i / 1u) % 16u) * 1u]) * 1.0)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/7928d1b13d79c16f6c0f9d3130cbdb4193cab6efe3a60b38caa1039688fe56de.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/7928d1b13d79c16f6c0f9d3130cbdb4193cab6efe3a60b38caa1039688fe56de.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..d569f2c70babe1c72d9fa65e789ae8c5bdd2f048 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/7928d1b13d79c16f6c0f9d3130cbdb4193cab6efe3a60b38caa1039688fe56de.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 64u; +if (i >= 40u) { return; } +out[i] = f32(b0[i]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/793acab25c53175e48dbfd1019e7c5f2bd0176d97e2134d7c290a66cfe702c34.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/793acab25c53175e48dbfd1019e7c5f2bd0176d97e2134d7c290a66cfe702c34.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..84ae648de9103180e548eb3ee4ab3414443a58b6 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/793acab25c53175e48dbfd1019e7c5f2bd0176d97e2134d7c290a66cfe702c34.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 32768u; +if (i >= 32768u) { return; } +out[i] = f32(f32(b0[i]) * f32(b1[((i / 2048u) % 16u) * 16u + ((i / 128u) % 16u) * 1u])); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/793b4c977feaf93abb2f6e92796d4971ecf3176f10459317fb7a98b028007c01.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/793b4c977feaf93abb2f6e92796d4971ecf3176f10459317fb7a98b028007c01.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..99103af983de95f17fcf5da3f5d3989173f352d3 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/793b4c977feaf93abb2f6e92796d4971ecf3176f10459317fb7a98b028007c01.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 1024u; +if (i >= 1024u) { return; } +out[i] = f32(f32(b0[i]) + (f32(b1[((i / 1u) % 16u) * 1u]) * 1.0)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/79ab685c48a01097e551291e8bb7ea554f69b07f6fd1494aaa829ddcb0eeb8d1.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/79ab685c48a01097e551291e8bb7ea554f69b07f6fd1494aaa829ddcb0eeb8d1.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..abe1e89b54b42418272a68dccd75fd7fbe236739 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/79ab685c48a01097e551291e8bb7ea554f69b07f6fd1494aaa829ddcb0eeb8d1.wgsl @@ -0,0 +1,17 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 32768u; +if (i >= 32768u) { return; } +let token = i32(b0[i / 2048u]); +if (token < 196608 || token >= 229376) { out[i] = f32(0.0); return; } +out[i] = f32(unpack_bf16_1(u32(token - 196608) * 2048u + i % 2048u)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/7adea2b745b20a2abb96d02a1fca6db5f06f3c5aac850cf8ae1afa6f50868ded.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/7adea2b745b20a2abb96d02a1fca6db5f06f3c5aac850cf8ae1afa6f50868ded.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..71689513a7927e5bc0cb73226d7067f7a4cab739 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/7adea2b745b20a2abb96d02a1fca6db5f06f3c5aac850cf8ae1afa6f50868ded.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 4096u; +if (i >= 4096u) { return; } +let x = f32(b0[i]); +out[i] = f32(cos(x)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/7b7c42c04ea3c6695ddead641e88b82d8f130015e138fc323eec509b5b56cfa9.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/7b7c42c04ea3c6695ddead641e88b82d8f130015e138fc323eec509b5b56cfa9.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..f6badaa4f9e340b199d7d36478143e82014ca9ca --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/7b7c42c04ea3c6695ddead641e88b82d8f130015e138fc323eec509b5b56cfa9.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 4096u; +if (i >= 4096u) { return; } +out[i] = f32(b0[((i / 4096u) % 1u) * 8192u + ((i / 2048u) % 2u) * 4096u + ((i / 32u) % 64u) * 64u + (((i / 1u) % 32u) * 1u + 0u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/7ea4a12734f1206e9c94a060bf6b24732f46685f0c46a78c3c5fbcd64489d8c3.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/7ea4a12734f1206e9c94a060bf6b24732f46685f0c46a78c3c5fbcd64489d8c3.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..8e8a838dfb6ac9c617602bd0b2a35a31a9482fbd --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/7ea4a12734f1206e9c94a060bf6b24732f46685f0c46a78c3c5fbcd64489d8c3.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 1536u; +if (i >= 1536u) { return; } +out[i] = f32(b0[((i / 1536u) % 1u) * 2048u + ((i / 192u) % 8u) * 256u + ((i / 192u) % 1u) * 256u + (((i / 1u) % 192u) * 1u + 64u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/7f684886a0c031e32c9cf7a4bff880ae692ddc08ddca971ee20d728b4736d0da.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/7f684886a0c031e32c9cf7a4bff880ae692ddc08ddca971ee20d728b4736d0da.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..2793e22a61404445c507c8e43861e8d94b977c7c --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/7f684886a0c031e32c9cf7a4bff880ae692ddc08ddca971ee20d728b4736d0da.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 32768u; +if (i >= 32768u) { return; } +out[i] = f32(b0[((i / 32768u) % 1u) * 294912u + ((i / 2048u) % 16u) * 18432u + (((i / 128u) % 16u) * 1u + 128u) * 128u + ((i / 1u) % 128u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/7fab02b2d46f9419002e2fc6f6e0e4e745ddb737a2c9e7060e45e7125c1be187.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/7fab02b2d46f9419002e2fc6f6e0e4e745ddb737a2c9e7060e45e7125c1be187.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..3c05340808c48d12676c5acad9a623f97573efc1 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/7fab02b2d46f9419002e2fc6f6e0e4e745ddb737a2c9e7060e45e7125c1be187.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 2097152u; +if (i >= 2097152u) { return; } +out[i] = f32(b0[((i) / 256u) % 4096u * 512u + ((i) / 1048576u) % 2u * 256u + ((i) / 1u) % 256u * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/7fe183583b43b627721ba6853b306288d7ceea4b42b630410f47ea9637220a4b.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/7fe183583b43b627721ba6853b306288d7ceea4b42b630410f47ea9637220a4b.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..afbf92723660dbb4d364ef0cbeaf40d4cdc4891a --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/7fe183583b43b627721ba6853b306288d7ceea4b42b630410f47ea9637220a4b.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 2048u; +if (i >= 2048u) { return; } +out[i] = f32(b0[i]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/7fed7072c20dc3e66c80b2ac1f737b0e7e70a695e5db34e057f729c945e60ba0.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/7fed7072c20dc3e66c80b2ac1f737b0e7e70a695e5db34e057f729c945e60ba0.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..e6d88d0a15c09579597059a1bdcb1e15f863aa03 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/7fed7072c20dc3e66c80b2ac1f737b0e7e70a695e5db34e057f729c945e60ba0.wgsl @@ -0,0 +1,21 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 67584u; +if (i >= 67584u) { return; } +let batch = i / 67584u; +let channel = (i / 11u) % 6144u; +let group = channel / 1u; +var acc = 0.0; +for (var c = 0u; c < 1u; c++) { + for (var p = 0u; p < 4u; p++) { + let pos0 = i32((i / 1u) % 11u) * 1 + i32((p / 1u) % 4u) * 1 - 3; + if (pos0 >= 0 && pos0 < 8) { acc += f32(b0[batch * 49152u + (group * 1u + c) * 8u + u32(pos0) * 1u]) * f32(b1[(channel * 1u + c) * 4u + p]); } + } +} +out[i] = f32(acc + 0.0); + +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/809edbbbbbd45df1163aca9506775b9c2ae0d51f65a31a5396599cfeeb7009fc.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/809edbbbbbd45df1163aca9506775b9c2ae0d51f65a31a5396599cfeeb7009fc.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..acb1652428f2ab30770f1df73c0e3abccd76c7c8 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/809edbbbbbd45df1163aca9506775b9c2ae0d51f65a31a5396599cfeeb7009fc.wgsl @@ -0,0 +1,28 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +var tile_a: array; +var tile_b: array; +@compute @workgroup_size(8, 8) +fn main(@builtin(workgroup_id) group: vec3, @builtin(local_invocation_id) local: vec3) { + let row = group.y * 8u + local.y; + let col = group.x * 8u + local.x; + let i = (group.z * 4u + row) * 4096u + col; + var acc = 0.0; + for (var tile = 0u; tile < 2048u; tile += 8u) { + tile_a[local.y * 8u + local.x] = 0.0; + tile_b[local.x * 8u + local.y] = 0.0; + if (row < 4u && tile + local.x < 2048u) { tile_a[local.y * 8u + local.x] = f32(b0[(group.z * 4u + row) * 2048u + tile + local.x]); } + if (group.x * 8u + local.y < 4096u && tile + local.x < 2048u) { tile_b[local.x * 8u + local.y] = unpack_bf16_1((group.x * 8u + local.y) * 2048u + tile + local.x); } + workgroupBarrier(); + for (var p = 0u; p < 8u; p++) { acc += tile_a[local.y * 8u + p] * tile_b[p * 8u + local.x]; } + workgroupBarrier(); + } + if (row < 4u && col < 4096u) { out[i] = f32(acc + 0.0); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/80d22263b082805bc9d4499247f92b7a1a783a3e1cdd9c652d304492a1cfd425.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/80d22263b082805bc9d4499247f92b7a1a783a3e1cdd9c652d304492a1cfd425.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..9111ceafdc9fd9e44bf84174c85d6fb3627ed1dc --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/80d22263b082805bc9d4499247f92b7a1a783a3e1cdd9c652d304492a1cfd425.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 1024u; +if (i >= 1024u) { return; } +out[i] = f32(b0[((i / 1024u) % 1u) * 2048u + ((i / 128u) % 8u) * 256u + ((i / 32u) % 4u) * 64u + (((i / 1u) % 32u) * 1u + 32u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/80ea575e71114223b547d927628fbb71c676d57d144193e995e6eb39c5b4c161.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/80ea575e71114223b547d927628fbb71c676d57d144193e995e6eb39c5b4c161.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..2db7693b45bf5ab5b04ed46abd0a2d6c0877f8de --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/80ea575e71114223b547d927628fbb71c676d57d144193e995e6eb39c5b4c161.wgsl @@ -0,0 +1,25 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +var partial: array; +@compute @workgroup_size(64) +fn main(@builtin(workgroup_id) group: vec3, @builtin(local_invocation_id) local: vec3) { + let i = group.x + group.y * 512u; + if (i >= 512u) { return; } + let lane = local.x; + var acc = 0.0; + for (var p = lane; p < 2048u; p += 64u) { acc += f32(b0[(i / 512u) * 2048u + p]) * unpack_bf16_1((i % 512u) * 2048u + p); } + partial[lane] = acc; + workgroupBarrier(); + for (var stride = 32u; stride > 0u; stride /= 2u) { + if (lane < stride) { partial[lane] += partial[lane + stride]; } + workgroupBarrier(); + } + if (lane == 0u) { out[i] = f32(partial[0] + 0.0); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/810f4f0382885bc94f69164288e74f8a736b3644370a205c9c12d330192b00c9.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/810f4f0382885bc94f69164288e74f8a736b3644370a205c9c12d330192b00c9.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..6ef7062cce9138930a290a22b65b38ff53a8ee6d --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/810f4f0382885bc94f69164288e74f8a736b3644370a205c9c12d330192b00c9.wgsl @@ -0,0 +1,28 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +var tile_a: array; +var tile_b: array; +@compute @workgroup_size(8, 8) +fn main(@builtin(workgroup_id) group: vec3, @builtin(local_invocation_id) local: vec3) { + let row = group.y * 8u + local.y; + let col = group.x * 8u + local.x; + let i = (group.z * 64u + row) * 6144u + col; + var acc = 0.0; + for (var tile = 0u; tile < 2048u; tile += 8u) { + tile_a[local.y * 8u + local.x] = 0.0; + tile_b[local.x * 8u + local.y] = 0.0; + if (row < 64u && tile + local.x < 2048u) { tile_a[local.y * 8u + local.x] = f32(b0[(group.z * 64u + row) * 2048u + tile + local.x]); } + if (group.x * 8u + local.y < 6144u && tile + local.x < 2048u) { tile_b[local.x * 8u + local.y] = unpack_bf16_1((group.x * 8u + local.y) * 2048u + tile + local.x); } + workgroupBarrier(); + for (var p = 0u; p < 8u; p++) { acc += tile_a[local.y * 8u + p] * tile_b[p * 8u + local.x]; } + workgroupBarrier(); + } + if (row < 64u && col < 6144u) { out[i] = f32(acc + 0.0); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/816861e23c92e156c1ac01f21e4f6dd1cbfc14978b1be8a5994fb45b0f845cb8.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/816861e23c92e156c1ac01f21e4f6dd1cbfc14978b1be8a5994fb45b0f845cb8.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..fd8439ddeb258acd3ccd62679898c9ddc4222a6a --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/816861e23c92e156c1ac01f21e4f6dd1cbfc14978b1be8a5994fb45b0f845cb8.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 32768u; +if (i >= 32768u) { return; } +let x = f32(b0[i]); +out[i] = f32(1.0 / (1.0 + exp(-x))); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8256ea6cdc3500306470c0bb2dcdb44ebdd454dafa218ad6a94dd953b9bbe125.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8256ea6cdc3500306470c0bb2dcdb44ebdd454dafa218ad6a94dd953b9bbe125.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..8f492669f518dab2f9593bc47908384f13528421 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8256ea6cdc3500306470c0bb2dcdb44ebdd454dafa218ad6a94dd953b9bbe125.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 4096u; +if (i >= 4096u) { return; } +out[i] = f32(b0[((i / 4096u) % 1u) * 8192u + ((i / 512u) % 8u) * 1024u + ((i / 32u) % 16u) * 64u + (((i / 1u) % 32u) * 1u + 32u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/827ffce28b59c5790739e7f9624b4ef6ebf876973f7ba942702dd8872f47fcd5.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/827ffce28b59c5790739e7f9624b4ef6ebf876973f7ba942702dd8872f47fcd5.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..c3b4bd3bde971e325a9fa9e70305b17851fa3dca --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/827ffce28b59c5790739e7f9624b4ef6ebf876973f7ba942702dd8872f47fcd5.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 417792u; +if (i >= 417792u) { return; } +let x = f32(b0[i]); +out[i] = f32(x / (1.0 + exp(-x))); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/82bc226410ee45662442e25040b6a6456c2532b87e96860e10f8f0135dde892b.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/82bc226410ee45662442e25040b6a6456c2532b87e96860e10f8f0135dde892b.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..28de6e0e30293bf23a7829da9811cd25682a84fa --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/82bc226410ee45662442e25040b6a6456c2532b87e96860e10f8f0135dde892b.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 64u; +if (i >= 12u) { return; } +out[i] = i32(b0[i]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/82d700d77c249d637b7592f92c488497797a3961ea85b74ad2e50cccef3ef78f.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/82d700d77c249d637b7592f92c488497797a3961ea85b74ad2e50cccef3ef78f.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..f6253e4954ee69ce5aeefbeb74cb19a00eb2ffe1 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/82d700d77c249d637b7592f92c488497797a3961ea85b74ad2e50cccef3ef78f.wgsl @@ -0,0 +1,12 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 8192u; +if (i >= 8192u) { return; } +let coord = (i / 1u) % 64u; +if (coord >= 0u && coord < 32u) { out[i] = f32(b0[(i / 64u) * 32u + (coord - 0u) * 1u + i % 1u]); } +if (coord >= 32u && coord < 64u) { out[i] = f32(b1[(i / 64u) * 32u + (coord - 32u) * 1u + i % 1u]); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/84101fc314579b90d71da4cca3a2c2cdc2074d96d2861c4b8e38c22cc1903138.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/84101fc314579b90d71da4cca3a2c2cdc2074d96d2861c4b8e38c22cc1903138.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..83350b9cd75974291ce80f1a5b1ab6c19754f7ea --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/84101fc314579b90d71da4cca3a2c2cdc2074d96d2861c4b8e38c22cc1903138.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 6144u; +if (i >= 6144u) { return; } +out[i] = f32(b0[((i / 2048u) % 3u) * 2048u + ((i / 2048u) % 1u) * 2048u + ((i / 32u) % 64u) * 1u + ((i / 1u) % 32u) * 64u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/84759f77f2f54fed243fc0075b3c0152a1d7f9a659dade7970962d5d41e931b4.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/84759f77f2f54fed243fc0075b3c0152a1d7f9a659dade7970962d5d41e931b4.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..d9e9b0bf6b9f750aa44134035ca4ba8636f4cf87 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/84759f77f2f54fed243fc0075b3c0152a1d7f9a659dade7970962d5d41e931b4.wgsl @@ -0,0 +1,17 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 2097152u; +if (i >= 2097152u) { return; } +let batch = i / 262144u; +let row = (i / 4096u) % 64u; +let col = i % 4096u; +var acc = 0.0; +for (var p = 0u; p < 256u; p++) { + acc += f32(b0[(((batch / 1u) % 8u) * 16384u) + row * 256u + p]) * f32(b1[(((batch / 1u) % 8u) * 1048576u) + p * 4096u + col]); +} +out[i] = f32(acc); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8485c3edc4d8013903fedc22091c7530a69a97da8b3dbd0cc5c55f54220709fb.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8485c3edc4d8013903fedc22091c7530a69a97da8b3dbd0cc5c55f54220709fb.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..03fbfcf7852f6f66056d6914fe4f0a396e343e10 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8485c3edc4d8013903fedc22091c7530a69a97da8b3dbd0cc5c55f54220709fb.wgsl @@ -0,0 +1,17 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 131072u; +if (i >= 131072u) { return; } +let token = i32(b0[i / 2048u]); +if (token < 65536 || token >= 98304) { out[i] = f32(0.0); return; } +out[i] = f32(unpack_bf16_1(u32(token - 65536) * 2048u + i % 2048u)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/84f24861effe9e2f3b05f98fe6d4e16f4f8204be40a7eeece0668e57060ecc7b.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/84f24861effe9e2f3b05f98fe6d4e16f4f8204be40a7eeece0668e57060ecc7b.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..b838db5172dc04dbd440a1315507258ee731b118 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/84f24861effe9e2f3b05f98fe6d4e16f4f8204be40a7eeece0668e57060ecc7b.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 32768u; +if (i >= 32768u) { return; } +out[i] = f32(b0[((i / 32768u) % 1u) * 32768u + ((i / 2048u) % 16u) * 256u + ((i / 256u) % 8u) * 4096u + ((i / 1u) % 256u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/84ff996d084cbc6b8dca21a8f3267cdb1f4c6b9664c24c3002252f05247c4212.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/84ff996d084cbc6b8dca21a8f3267cdb1f4c6b9664c24c3002252f05247c4212.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..4b8f4a81af2551a5f68d4e7183fb44f770c4ce2b --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/84ff996d084cbc6b8dca21a8f3267cdb1f4c6b9664c24c3002252f05247c4212.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 49152u; +if (i >= 49152u) { return; } +out[i] = f32(b0[((i / 49152u) % 1u) * 67584u + ((i / 8u) % 6144u) * 11u + (((i / 1u) % 8u) * 1u + 0u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/85964f8bbe5a2e4d430930e1050ea76871f0f2453c3cd4ba020002c0562ca680.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/85964f8bbe5a2e4d430930e1050ea76871f0f2453c3cd4ba020002c0562ca680.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..8f4401a2be8eee2336c09ba4cc3feb59774b181a --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/85964f8bbe5a2e4d430930e1050ea76871f0f2453c3cd4ba020002c0562ca680.wgsl @@ -0,0 +1,12 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 32768u; +if (i >= 32768u) { return; } +let coord = (i / 1u) % 64u; +if (coord >= 0u && coord < 32u) { out[i] = f32(b0[(i / 64u) * 32u + (coord - 0u) * 1u + i % 1u]); } +if (coord >= 32u && coord < 64u) { out[i] = f32(b1[(i / 64u) * 32u + (coord - 32u) * 1u + i % 1u]); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/870f571c2825eaa5aa7203a42631ed44e533c50f236974cb4591aa3c73b231a6.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/870f571c2825eaa5aa7203a42631ed44e533c50f236974cb4591aa3c73b231a6.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..39541e77623e367ad5f2dba84b9ea8cf810cb1ee --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/870f571c2825eaa5aa7203a42631ed44e533c50f236974cb4591aa3c73b231a6.wgsl @@ -0,0 +1,11 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 8192u; +if (i >= 8192u) { return; } +let x = f32(b0[i]); let s = f32(f32(x / (1.0 + exp(-x)))); +out[i] = f32(s * f32(b1[i])); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/87a0173f6b11329ec1cabdb66aac50298a6f8466a8608cdf60ec6dfb19791b46.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/87a0173f6b11329ec1cabdb66aac50298a6f8466a8608cdf60ec6dfb19791b46.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..337252dc904db3cba7455ece03ac6646b17e5989 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/87a0173f6b11329ec1cabdb66aac50298a6f8466a8608cdf60ec6dfb19791b46.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 131072u; +if (i >= 131072u) { return; } +out[i] = f32(f32(b0[i]) * 0.0625); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8898353d0c367a3982a48d416f6777c3ce7a854572eeaf55843f3e7ee458c65d.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8898353d0c367a3982a48d416f6777c3ce7a854572eeaf55843f3e7ee458c65d.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..ef9b5984a050b004ec691b6fd90a5704e441c981 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8898353d0c367a3982a48d416f6777c3ce7a854572eeaf55843f3e7ee458c65d.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 24576u; +if (i >= 24576u) { return; } +out[i] = f32(b0[i]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/88b50ebddd13f3ff5e2819b8bc956e8fc1346e8f75cacbc3d0edf031b7f1f248.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/88b50ebddd13f3ff5e2819b8bc956e8fc1346e8f75cacbc3d0edf031b7f1f248.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..af3f555638ab88bb67a3930d8f8766ec3b353d87 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/88b50ebddd13f3ff5e2819b8bc956e8fc1346e8f75cacbc3d0edf031b7f1f248.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 32768u; +if (i >= 32768u) { return; } +out[i] = f32(f32(b0[i]) * 0.0625); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/892b773325e143ad086ac3f3475f04c606f781b0ea3261a7168d28e3bdf24b49.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/892b773325e143ad086ac3f3475f04c606f781b0ea3261a7168d28e3bdf24b49.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..ea5ffc86b925d7b1048789f1a1fd31a66b8f25b0 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/892b773325e143ad086ac3f3475f04c606f781b0ea3261a7168d28e3bdf24b49.wgsl @@ -0,0 +1,17 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 32768u; +if (i >= 32768u) { return; } +let token = i32(b0[i / 2048u]); +if (token < 163840 || token >= 196608) { out[i] = f32(0.0); return; } +out[i] = f32(unpack_bf16_1(u32(token - 163840) * 2048u + i % 2048u)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/896006749045a93d89dca7ed7326aa05c5ff29423400569d34ab2256dea6b0e4.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/896006749045a93d89dca7ed7326aa05c5ff29423400569d34ab2256dea6b0e4.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..153b27098a91332adc33e93c50826711f884ea94 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/896006749045a93d89dca7ed7326aa05c5ff29423400569d34ab2256dea6b0e4.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 128u; +if (i >= 128u) { return; } +out[i] = f32(f32(b0[i]) * f32(b1[((i / 1u) % 64u) * 1u])); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/898086c99e03b2cdb78e3e5658c3fff202f1c87d09d8da08659bd1ba85e01b09.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/898086c99e03b2cdb78e3e5658c3fff202f1c87d09d8da08659bd1ba85e01b09.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..b5f7727d651290008885c57d7eb3d4d47da40e0d --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/898086c99e03b2cdb78e3e5658c3fff202f1c87d09d8da08659bd1ba85e01b09.wgsl @@ -0,0 +1,12 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 512u; +if (i >= 512u) { return; } +let coord = (i / 1u) % 64u; +if (coord >= 0u && coord < 32u) { out[i] = f32(b0[(i / 64u) * 32u + (coord - 0u) * 1u + i % 1u]); } +if (coord >= 32u && coord < 64u) { out[i] = f32(b1[(i / 64u) * 32u + (coord - 32u) * 1u + i % 1u]); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/89f98b79c18e7f4bbbd79cbd8d3e80108d0e1e4407c161d9637b6a88d3fbe06b.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/89f98b79c18e7f4bbbd79cbd8d3e80108d0e1e4407c161d9637b6a88d3fbe06b.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..cec2de8e203bef278c3c8e0eb2c7a08106ae1575 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/89f98b79c18e7f4bbbd79cbd8d3e80108d0e1e4407c161d9637b6a88d3fbe06b.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 8192u; +if (i >= 8192u) { return; } +out[i] = f32(b0[((i / 8192u) % 1u) * 32768u + ((i / 4096u) % 2u) * 16384u + ((i / 64u) % 64u) * 256u + (((i / 1u) % 64u) * 1u + 0u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8a46c4e24d014fd6af88a3f370c4b6161be7c63b6c30211bd62af3dbd87293a8.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8a46c4e24d014fd6af88a3f370c4b6161be7c63b6c30211bd62af3dbd87293a8.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..879d6b86b22a39f635c45604888a324389324c38 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8a46c4e24d014fd6af88a3f370c4b6161be7c63b6c30211bd62af3dbd87293a8.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 256u; +if (i >= 256u) { return; } +out[i] = f32(b0[((i / 256u) % 1u) * 512u + ((i / 32u) % 8u) * 64u + ((i / 32u) % 1u) * 64u + (((i / 1u) % 32u) * 1u + 32u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8af32f59dfb78c79ac2187ae707f0897b89fb8bb0e3d832e2edac308eefa603c.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8af32f59dfb78c79ac2187ae707f0897b89fb8bb0e3d832e2edac308eefa603c.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..393e545d035b3c735b85081828588efa2083e5b8 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8af32f59dfb78c79ac2187ae707f0897b89fb8bb0e3d832e2edac308eefa603c.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 1536u; +if (i >= 1536u) { return; } +out[i] = f32(b0[((i / 1536u) % 1u) * 2048u + ((i / 768u) % 2u) * 1024u + ((i / 192u) % 4u) * 256u + (((i / 1u) % 192u) * 1u + 64u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8affc7c0e85127430e406be35ebb5c5354a8dd26ecc4ae9ab6ace80ce6775f46.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8affc7c0e85127430e406be35ebb5c5354a8dd26ecc4ae9ab6ace80ce6775f46.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..f6d4d57d5129f06a73030d35c57119eff88a6513 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8affc7c0e85127430e406be35ebb5c5354a8dd26ecc4ae9ab6ace80ce6775f46.wgsl @@ -0,0 +1,12 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 131072u; +if (i >= 131072u) { return; } +let coord = (i / 1u) % 256u; +if (coord >= 0u && coord < 64u) { out[i] = f32(b0[(i / 256u) * 64u + (coord - 0u) * 1u + i % 1u]); } +if (coord >= 64u && coord < 256u) { out[i] = f32(b1[(i / 256u) * 192u + (coord - 64u) * 1u + i % 1u]); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8b5e4c9b7889f2bccebf60987b6f5b8c23542c3475cd8d78656dc7ecffd81f8d.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8b5e4c9b7889f2bccebf60987b6f5b8c23542c3475cd8d78656dc7ecffd81f8d.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..06d3a0be331bebf0bb3a5e2fbcaa41fd764e10ce --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8b5e4c9b7889f2bccebf60987b6f5b8c23542c3475cd8d78656dc7ecffd81f8d.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 2048u; +if (i >= 2048u) { return; } +out[i] = f32(b0[((i / 2048u) % 1u) * 8192u + ((i / 256u) % 8u) * 1024u + ((i / 64u) % 4u) * 256u + (((i / 1u) % 64u) * 1u + 0u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8c2cc45aff0682e734174141c9fcc5edcdac7925ad6128b062befdba21f8695f.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8c2cc45aff0682e734174141c9fcc5edcdac7925ad6128b062befdba21f8695f.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..de8c2b01add8ed4522e2cbf58e7f08b03967f1ed --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8c2cc45aff0682e734174141c9fcc5edcdac7925ad6128b062befdba21f8695f.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 122880u; +if (i >= 122880u) { return; } +out[i] = f32(b0[((i / 122880u) % 1u) * 141312u + ((i / 20u) % 6144u) * 23u + (((i / 1u) % 20u) * 1u + 0u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8c3a77238461b0ae13318bad504e1e0779f3f47d1782fe0ca78f20112c031146.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8c3a77238461b0ae13318bad504e1e0779f3f47d1782fe0ca78f20112c031146.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..48bca17aba702ff30048b53673eee423547fd053 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8c3a77238461b0ae13318bad504e1e0779f3f47d1782fe0ca78f20112c031146.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 256u; +if (i >= 256u) { return; } +out[i] = f32(b0[((i / 256u) % 1u) * 512u + ((i / 128u) % 2u) * 256u + ((i / 32u) % 4u) * 64u + (((i / 1u) % 32u) * 1u + 0u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8c92c6f1421c6378452dd1e15eae6d7da76404ac7e9a0b756bace66e6f207d21.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8c92c6f1421c6378452dd1e15eae6d7da76404ac7e9a0b756bace66e6f207d21.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..3120a16a5ed9e9bba8b6482fa4ae14b95803e24d --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8c92c6f1421c6378452dd1e15eae6d7da76404ac7e9a0b756bace66e6f207d21.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 98304u; +if (i >= 98304u) { return; } +out[i] = f32(b0[((i / 98304u) % 1u) * 122880u + ((i / 16u) % 6144u) * 20u + (((i / 1u) % 16u) * 1u + 4u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8cce7bfa491959f6a7b62ae9cb861d12e2f4ff05227918a4d06bd80669f0a539.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8cce7bfa491959f6a7b62ae9cb861d12e2f4ff05227918a4d06bd80669f0a539.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..afdc69dc467b8f7f632ffe33bddaf90b521e8362 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8cce7bfa491959f6a7b62ae9cb861d12e2f4ff05227918a4d06bd80669f0a539.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 128u; +if (i >= 128u) { return; } +out[i] = f32(b0[1u * 128u + ((i / 128u) % 1u) * 128u + ((i / 32u) % 4u) * 32u + ((i / 1u) % 32u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8d0a37e497bcb37e2d5a1746fba59fd69680ed8eeada4835c5d0eeef840d57ab.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8d0a37e497bcb37e2d5a1746fba59fd69680ed8eeada4835c5d0eeef840d57ab.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..8a01c2daa51364f3125cbebcab9dbf7871446a9a --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8d0a37e497bcb37e2d5a1746fba59fd69680ed8eeada4835c5d0eeef840d57ab.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 64u; +if (i >= 16u) { return; } +let x = f32(b0[i]); +out[i] = f32(-x); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8d2d4993e8058293c7308e58f517619651bbfcfc855acd7e3f5a8cfdfd971dab.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8d2d4993e8058293c7308e58f517619651bbfcfc855acd7e3f5a8cfdfd971dab.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..3ed04ba7933e584bd12c87751a81db68eb41af8d --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8d2d4993e8058293c7308e58f517619651bbfcfc855acd7e3f5a8cfdfd971dab.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 256u; +if (i >= 256u) { return; } +let x = f32(b0[i]); +out[i] = f32(1.0 / (1.0 + exp(-x))); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8d3901ffa1bf261d953e73b6ee49a0cb486607d014576f319054a30b2a878d16.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8d3901ffa1bf261d953e73b6ee49a0cb486607d014576f319054a30b2a878d16.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..1437f79f0859dc59ad95e04ed79a395c48c4012b --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8d3901ffa1bf261d953e73b6ee49a0cb486607d014576f319054a30b2a878d16.wgsl @@ -0,0 +1,17 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 131072u; +if (i >= 131072u) { return; } +let batch = i / 16384u; +let row = (i / 4096u) % 4u; +let col = i % 4096u; +var acc = 0.0; +for (var p = 0u; p < 256u; p++) { + acc += f32(b0[(((batch / 1u) % 8u) * 1024u) + row * 256u + p]) * f32(b1[(((batch / 1u) % 8u) * 1048576u) + p * 4096u + col]); +} +out[i] = f32(acc); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8d62df48089497dd19fea48680730210decda42b63f69ecdf9688fc4a43efc58.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8d62df48089497dd19fea48680730210decda42b63f69ecdf9688fc4a43efc58.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..038f09f18992b3725fd5517a3706736493dfe3b5 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8d62df48089497dd19fea48680730210decda42b63f69ecdf9688fc4a43efc58.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 24576u; +if (i >= 24576u) { return; } +out[i] = f32(b0[((i / 24576u) % 1u) * 32768u + ((i / 3072u) % 8u) * 4096u + ((i / 192u) % 16u) * 256u + (((i / 1u) % 192u) * 1u + 64u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8d924efe3620ed999f0cf4e6adc1df91b7def10b99b5ecb839ceaa662b43c82c.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8d924efe3620ed999f0cf4e6adc1df91b7def10b99b5ecb839ceaa662b43c82c.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..fe8bfc87f8c17b979d4a5ead82a54af189440ac0 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8d924efe3620ed999f0cf4e6adc1df91b7def10b99b5ecb839ceaa662b43c82c.wgsl @@ -0,0 +1,11 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 256u; +if (i >= 256u) { return; } +var acc = 0.0; +for (var j = 0u; j < 128u; j++) { acc += f32(b0[(((i / 256u) % 1u) * 32768u + ((i / 16u) % 16u) * 2048u + ((i / 1u) % 16u) * 128u) + (((j / 1u) % 128u) * 1u)]); } +out[i] = f32(acc); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8e0a5082868763863aafd2f06c712052ff8e27c61b6a010bfe35849c65245c5c.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8e0a5082868763863aafd2f06c712052ff8e27c61b6a010bfe35849c65245c5c.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..53ed4df03abd87298fb4b30f9c066f6c7e7aa12d --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8e0a5082868763863aafd2f06c712052ff8e27c61b6a010bfe35849c65245c5c.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 2097152u; +if (i >= 2097152u) { return; } +out[i] = f32(f32(b0[i]) + (f32(b1[((i / 4096u) % 64u) * 4096u + ((i / 1u) % 4096u) * 1u]) * 1.0)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8e3d3b82b0e50fa7a86f44f30fe70b1ee226e613ce06b69776f5624efb029235.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8e3d3b82b0e50fa7a86f44f30fe70b1ee226e613ce06b69776f5624efb029235.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..b336d4ef7da9ca1218d2e0bdb97251d2aaeb4513 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8e3d3b82b0e50fa7a86f44f30fe70b1ee226e613ce06b69776f5624efb029235.wgsl @@ -0,0 +1,24 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +var factor: f32; +@compute @workgroup_size(64) +fn main(@builtin(workgroup_id) group: vec3, @builtin(local_invocation_id) local: vec3) { + let row = group.x + group.y * 16u; + if (row >= 16u) { return; } + let lane = local.x; + if (lane == 0u) { + var total = 0.0; + for (var j = 0u; j < 2048u; j++) { + let v = f32(b0[row * 2048u + j]); + total += v * v; + } + factor = inverseSqrt(total / 2048.0 + 1e-06); + } + workgroupBarrier(); + for (var p = lane; p < 2048u; p += 64u) { + let i = row * 2048u + p; + out[i] = f32(f32(b0[row * 2048u + p]) * factor * (f32(b1[p]) + 1.0)); + } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8edd8a2bae8f26ae570c97da27c254da93d6b2df00784f505002f97830f806b3.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8edd8a2bae8f26ae570c97da27c254da93d6b2df00784f505002f97830f806b3.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..aed1c7b3a6362fd37da603d94f3f6f17ef9a600f --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8edd8a2bae8f26ae570c97da27c254da93d6b2df00784f505002f97830f806b3.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 32768u; +if (i >= 32768u) { return; } +out[i] = f32(b0[i]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8ee286e06c1271162bea74e14b4bd5b1d66890648217c79435e6b3f1d4181ec8.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8ee286e06c1271162bea74e14b4bd5b1d66890648217c79435e6b3f1d4181ec8.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..de988e579ac17256458e6a635d4588a6072950e3 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8ee286e06c1271162bea74e14b4bd5b1d66890648217c79435e6b3f1d4181ec8.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 1024u; +if (i >= 1024u) { return; } +out[i] = f32(b0[((i / 1024u) % 1u) * 2048u + ((i / 128u) % 8u) * 256u + ((i / 32u) % 4u) * 64u + (((i / 1u) % 32u) * 1u + 0u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8f49f6b8f8a2ee074b9fb925c2ea40d1f3b8af945a801b677a197a98e37fc26d.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8f49f6b8f8a2ee074b9fb925c2ea40d1f3b8af945a801b677a197a98e37fc26d.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..99d655d1f60b6210ac848ee998318cb963ff1ede --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/8f49f6b8f8a2ee074b9fb925c2ea40d1f3b8af945a801b677a197a98e37fc26d.wgsl @@ -0,0 +1,34 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +var partial: array; +@compute @workgroup_size(64) +fn main(@builtin(workgroup_id) group: vec3, @builtin(local_invocation_id) local: vec3) { + let row = group.x + group.y * 32u; + if (row >= 32u) { return; } + let lane = local.x; + var maximum = -3.4028234663852886e38; + for (var p = lane; p < 4096u; p += 64u) { maximum = max(maximum, f32(b0[row * 4096u + p])); } + partial[lane] = maximum; + workgroupBarrier(); + for (var stride = 32u; stride > 0u; stride /= 2u) { + if (lane < stride) { partial[lane] = max(partial[lane], partial[lane + stride]); } + workgroupBarrier(); + } + maximum = partial[0]; + // All lanes must finish reading the maximum before the scratch array is reused. + workgroupBarrier(); + var total = 0.0; + for (var p = lane; p < 4096u; p += 64u) { total += exp(f32(b0[row * 4096u + p]) - maximum); } + partial[lane] = total; + workgroupBarrier(); + for (var stride = 32u; stride > 0u; stride /= 2u) { + if (lane < stride) { partial[lane] += partial[lane + stride]; } + workgroupBarrier(); + } + total = partial[0]; + for (var p = lane; p < 4096u; p += 64u) { + let i = row * 4096u + p; + out[i] = f32(exp(f32(b0[row * 4096u + p]) - maximum) / total); + } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/9044193f1f4724f15ef5fb41040b7fbac5f62fcaea80594737214bf9cd6be41a.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/9044193f1f4724f15ef5fb41040b7fbac5f62fcaea80594737214bf9cd6be41a.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..2e5bc79c78a2b4d66f36a9281f11690ec86715e4 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/9044193f1f4724f15ef5fb41040b7fbac5f62fcaea80594737214bf9cd6be41a.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 131072u; +if (i >= 131072u) { return; } +out[i] = f32(b0[((i / 131072u) % 1u) * 262144u + ((i / 2048u) % 64u) * 4096u + ((i / 256u) % 8u) * 512u + (((i / 1u) % 256u) * 1u + 256u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/9144d827dae4c52b80abb829178a9ed901ce5dbc6702ad94b0b355e8eaad5ea5.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/9144d827dae4c52b80abb829178a9ed901ce5dbc6702ad94b0b355e8eaad5ea5.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..0e196cbf9c5f57d582e8784874efe3d9797e27fe --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/9144d827dae4c52b80abb829178a9ed901ce5dbc6702ad94b0b355e8eaad5ea5.wgsl @@ -0,0 +1,11 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 64u; +if (i >= 32u) { return; } +let coord = (i / 1u) % 32u; +if (coord >= 2u && coord < 32u && (coord - 2u) % 3u == 0u) { out[i] = f32(b0[((i / 32u) % 1u) * 10u + ((i / 32u) % 1u) * 10u + ((((i / 1u) % 32u) - 2u) / 3u) * 1u]); } else { out[i] = f32(b1[i]); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/928e4759658bc5813ad5b82855d1a8c13e144cdfe50229dfc10b0624d7490858.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/928e4759658bc5813ad5b82855d1a8c13e144cdfe50229dfc10b0624d7490858.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..0ac306227a2d2906504dd1b01e28be580c908878 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/928e4759658bc5813ad5b82855d1a8c13e144cdfe50229dfc10b0624d7490858.wgsl @@ -0,0 +1,12 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 32768u; +if (i >= 32768u) { return; } +let coord = (i / 1u) % 256u; +if (coord >= 0u && coord < 64u) { out[i] = f32(b0[(i / 256u) * 64u + (coord - 0u) * 1u + i % 1u]); } +if (coord >= 64u && coord < 256u) { out[i] = f32(b1[(i / 256u) * 192u + (coord - 64u) * 1u + i % 1u]); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/939eb5e3ec5862e0f1d8caec99b814ed6b2bb3a41a132f7149a503e8df582e3c.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/939eb5e3ec5862e0f1d8caec99b814ed6b2bb3a41a132f7149a503e8df582e3c.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..3781d841daf679d470aa9b14d0cf4771d03af034 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/939eb5e3ec5862e0f1d8caec99b814ed6b2bb3a41a132f7149a503e8df582e3c.wgsl @@ -0,0 +1,13 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { + let i = gid.x + gid.y * 2048u; + if (i >= 2048u) { return; } + let token = (i / 256u) % 4u; + let outer = i / 1024u; + let destination = outer * 1048576u + u32(b1[token]) * 256u + i % 256u; + out[((destination) / 256u) % 4096u * 512u + ((destination) / 1048576u) % 2u * 256u + ((destination) / 1u) % 256u * 1u] = f32(b0[i]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/947f5cc8b3f87e1a0d4d322d9d9e71e2ed16ce6e1f7c91118678c164dc1c8752.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/947f5cc8b3f87e1a0d4d322d9d9e71e2ed16ce6e1f7c91118678c164dc1c8752.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..2bb5bd4f5d110df131987419e6018288811ea172 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/947f5cc8b3f87e1a0d4d322d9d9e71e2ed16ce6e1f7c91118678c164dc1c8752.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 128u; +if (i >= 96u) { return; } +out[i] = f32(b0[((i / 32u) % 3u) * 32u + ((i / 32u) % 1u) * 32u + ((i / 1u) % 32u) * 1u + ((i / 1u) % 1u) * 32u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/94a128c4e3d052323e995364319a5607fe0514a04b040a13cfffd1b11c445775.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/94a128c4e3d052323e995364319a5607fe0514a04b040a13cfffd1b11c445775.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..17ace8d19a49ad19d152b1358bcc9f91be800032 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/94a128c4e3d052323e995364319a5607fe0514a04b040a13cfffd1b11c445775.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 256u; +if (i >= 256u) { return; } +out[i] = f32(b0[i]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/94a2c2e4ddc65deb44fa82c2d58cedd197463b1fdae696a18ace95efbba96118.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/94a2c2e4ddc65deb44fa82c2d58cedd197463b1fdae696a18ace95efbba96118.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..27cc89d4c8bd00f2624f7e002cde3c29f96dd917 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/94a2c2e4ddc65deb44fa82c2d58cedd197463b1fdae696a18ace95efbba96118.wgsl @@ -0,0 +1,28 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +var tile_a: array; +var tile_b: array; +@compute @workgroup_size(8, 8) +fn main(@builtin(workgroup_id) group: vec3, @builtin(local_invocation_id) local: vec3) { + let row = group.y * 8u + local.y; + let col = group.x * 8u + local.x; + let i = (group.z * 64u + row) * 16u + col; + var acc = 0.0; + for (var tile = 0u; tile < 2048u; tile += 8u) { + tile_a[local.y * 8u + local.x] = 0.0; + tile_b[local.x * 8u + local.y] = 0.0; + if (row < 64u && tile + local.x < 2048u) { tile_a[local.y * 8u + local.x] = f32(b0[(group.z * 64u + row) * 2048u + tile + local.x]); } + if (group.x * 8u + local.y < 16u && tile + local.x < 2048u) { tile_b[local.x * 8u + local.y] = unpack_bf16_1((group.x * 8u + local.y) * 2048u + tile + local.x); } + workgroupBarrier(); + for (var p = 0u; p < 8u; p++) { acc += tile_a[local.y * 8u + p] * tile_b[p * 8u + local.x]; } + workgroupBarrier(); + } + if (row < 64u && col < 16u) { out[i] = f32(acc + 0.0); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/95addfdb139df33bb3d5c05859412434d318cee0340560537dce4d56a05e159c.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/95addfdb139df33bb3d5c05859412434d318cee0340560537dce4d56a05e159c.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..a5e5b4d6f13125cc2cdaea02ee4549dd7bf38f8b --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/95addfdb139df33bb3d5c05859412434d318cee0340560537dce4d56a05e159c.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 2048u; +if (i >= 2048u) { return; } +out[i] = f32(b0[((i / 2048u) % 1u) * 2048u + ((i / 2048u) % 1u) * 256u + ((i / 256u) % 8u) * 256u + ((i / 1u) % 256u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/95cba13b595301afbefe20da4a65b93d4d5c5f4a29b9e1d5348d32cb193c6b4b.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/95cba13b595301afbefe20da4a65b93d4d5c5f4a29b9e1d5348d32cb193c6b4b.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..9c868b10c7c34316c00e41b14857af7bbfe43f60 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/95cba13b595301afbefe20da4a65b93d4d5c5f4a29b9e1d5348d32cb193c6b4b.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 128u; +if (i >= 128u) { return; } +out[i] = f32(b0[0u * 128u + ((i / 128u) % 1u) * 128u + ((i / 32u) % 4u) * 32u + ((i / 1u) % 32u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/9625ca0b071511e5261877fd21627ca354ea0219da86a10887e8054afa15dcfd.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/9625ca0b071511e5261877fd21627ca354ea0219da86a10887e8054afa15dcfd.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..e1f0cf834667ef3ff29080e64d8f9d08e6702c3e --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/9625ca0b071511e5261877fd21627ca354ea0219da86a10887e8054afa15dcfd.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 64u; +if (i >= 32u) { return; } +out[i] = f32(b0[1u * 32u + ((i / 32u) % 1u) * 32u + ((i / 32u) % 1u) * 32u + ((i / 1u) % 32u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/9701df2bcd72ed6a0b72dca81006d9fcc2336e0250fbd66cf37d4fd80667358f.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/9701df2bcd72ed6a0b72dca81006d9fcc2336e0250fbd66cf37d4fd80667358f.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..df4a7b88d0870688be525898c6a657b189a070df --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/9701df2bcd72ed6a0b72dca81006d9fcc2336e0250fbd66cf37d4fd80667358f.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 131072u; +if (i >= 131072u) { return; } +out[i] = f32(b0[((i / 131072u) % 1u) * 393216u + ((i / 8192u) % 16u) * 24576u + (((i / 128u) % 64u) * 1u + 128u) * 128u + ((i / 1u) % 128u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/970aa8fd65c7e96611a4b6f30cb0b71e24bdaefff0ca117243cab1a5a7e645a9.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/970aa8fd65c7e96611a4b6f30cb0b71e24bdaefff0ca117243cab1a5a7e645a9.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..2f5b9119322f5487af9c8b2b5da3f2cf33a3c6a2 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/970aa8fd65c7e96611a4b6f30cb0b71e24bdaefff0ca117243cab1a5a7e645a9.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 64u; +if (i >= 48u) { return; } +out[i] = f32(b0[i]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/97aa9b5cb2a41dbf920a6c15c61964d33dd0d87990a00183ac4b87c614bc376d.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/97aa9b5cb2a41dbf920a6c15c61964d33dd0d87990a00183ac4b87c614bc376d.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..002611dac2216301bcefb788edbf31a49a191700 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/97aa9b5cb2a41dbf920a6c15c61964d33dd0d87990a00183ac4b87c614bc376d.wgsl @@ -0,0 +1,12 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 8192u; +if (i >= 8192u) { return; } +let coord = (i / 1u) % 256u; +if (coord >= 0u && coord < 64u) { out[i] = f32(b0[(i / 256u) * 64u + (coord - 0u) * 1u + i % 1u]); } +if (coord >= 64u && coord < 256u) { out[i] = f32(b1[(i / 256u) * 192u + (coord - 64u) * 1u + i % 1u]); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/97f95797eb6ec79925daae2004583ba556d6376a470860609d4c61bc83e15510.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/97f95797eb6ec79925daae2004583ba556d6376a470860609d4c61bc83e15510.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..fcf179e1efafd4e432e824e62fcb3da6b18866f6 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/97f95797eb6ec79925daae2004583ba556d6376a470860609d4c61bc83e15510.wgsl @@ -0,0 +1,28 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +var tile_a: array; +var tile_b: array; +@compute @workgroup_size(8, 8) +fn main(@builtin(workgroup_id) group: vec3, @builtin(local_invocation_id) local: vec3) { + let row = group.y * 8u + local.y; + let col = group.x * 8u + local.x; + let i = (group.z * 64u + row) * 32768u + col; + var acc = 0.0; + for (var tile = 0u; tile < 2048u; tile += 8u) { + tile_a[local.y * 8u + local.x] = 0.0; + tile_b[local.x * 8u + local.y] = 0.0; + if (row < 64u && tile + local.x < 2048u) { tile_a[local.y * 8u + local.x] = f32(b0[(group.z * 64u + row) * 2048u + tile + local.x]); } + if (group.x * 8u + local.y < 32768u && tile + local.x < 2048u) { tile_b[local.x * 8u + local.y] = unpack_bf16_1((group.x * 8u + local.y) * 2048u + tile + local.x); } + workgroupBarrier(); + for (var p = 0u; p < 8u; p++) { acc += tile_a[local.y * 8u + p] * tile_b[p * 8u + local.x]; } + workgroupBarrier(); + } + if (row < 64u && col < 32768u) { out[i] = f32(acc + 0.0); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/985bb9ad33654b9adbd4a256d626e346556a10dad514692800da8ebd7910f0f0.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/985bb9ad33654b9adbd4a256d626e346556a10dad514692800da8ebd7910f0f0.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..9018c3fdbf086b98282a94876e8a6631eb5442af --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/985bb9ad33654b9adbd4a256d626e346556a10dad514692800da8ebd7910f0f0.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 64u; +if (i >= 3u) { return; } +out[i] = i32(b0[(((i / 1u) % 3u) * 1u + 1u) * 1u + ((i / 1u) % 1u) * 1u + ((i / 1u) % 1u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/987d27946334b53b3006cdca1a7158b13a27e01e688047aeafc4b029761b80af.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/987d27946334b53b3006cdca1a7158b13a27e01e688047aeafc4b029761b80af.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..6f5a0294909820e1048e6c135334639bd4ca22df --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/987d27946334b53b3006cdca1a7158b13a27e01e688047aeafc4b029761b80af.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 24576u; +if (i >= 24576u) { return; } +out[i] = f32(b0[((i / 24576u) % 1u) * 49152u + ((i / 4u) % 6144u) * 8u + (((i / 1u) % 4u) * 1u + 4u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/99e423f03f9fdfee41f3dcaab73257064ffb2a64110066752208324724505a8b.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/99e423f03f9fdfee41f3dcaab73257064ffb2a64110066752208324724505a8b.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..6f17903f98ea03f7ed94043a81020110ebe8f203 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/99e423f03f9fdfee41f3dcaab73257064ffb2a64110066752208324724505a8b.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 24576u; +if (i >= 24576u) { return; } +out[i] = f32(b0[((i / 24576u) % 1u) * 122880u + ((i / 4u) % 6144u) * 20u + (((i / 1u) % 4u) * 1u + 16u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/9a9c990c9717c93933b1e7f5204d99a16276a177b7ca2f8c8cf61dbc1f6aaf51.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/9a9c990c9717c93933b1e7f5204d99a16276a177b7ca2f8c8cf61dbc1f6aaf51.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..113a914b1197768653a3be68fb9e6b5a9e6cfc09 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/9a9c990c9717c93933b1e7f5204d99a16276a177b7ca2f8c8cf61dbc1f6aaf51.wgsl @@ -0,0 +1,28 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +var tile_a: array; +var tile_b: array; +@compute @workgroup_size(8, 8) +fn main(@builtin(workgroup_id) group: vec3, @builtin(local_invocation_id) local: vec3) { + let row = group.y * 8u + local.y; + let col = group.x * 8u + local.x; + let i = (group.z * 4u + row) * 18944u + col; + var acc = 0.0; + for (var tile = 0u; tile < 2048u; tile += 8u) { + tile_a[local.y * 8u + local.x] = 0.0; + tile_b[local.x * 8u + local.y] = 0.0; + if (row < 4u && tile + local.x < 2048u) { tile_a[local.y * 8u + local.x] = f32(b0[(group.z * 4u + row) * 2048u + tile + local.x]); } + if (group.x * 8u + local.y < 18944u && tile + local.x < 2048u) { tile_b[local.x * 8u + local.y] = unpack_bf16_1((group.x * 8u + local.y) * 2048u + tile + local.x); } + workgroupBarrier(); + for (var p = 0u; p < 8u; p++) { acc += tile_a[local.y * 8u + p] * tile_b[p * 8u + local.x]; } + workgroupBarrier(); + } + if (row < 4u && col < 18944u) { out[i] = f32(acc + 0.0); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/9b7697d3e1de37277befbd725307f40a5143faae3dcf43182d4ad89d8572ed42.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/9b7697d3e1de37277befbd725307f40a5143faae3dcf43182d4ad89d8572ed42.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..ede227a38b1e2608dc62d7a93b0d68ad2fb653fb --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/9b7697d3e1de37277befbd725307f40a5143faae3dcf43182d4ad89d8572ed42.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 1024u; +if (i >= 1024u) { return; } +out[i] = f32(f32(b0[i]) * 1.0); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/9cd8236a30e65989f2ed9c7afcfcf2369b6036ade2a7d81c8e203c2789178074.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/9cd8236a30e65989f2ed9c7afcfcf2369b6036ade2a7d81c8e203c2789178074.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..e2476989d2a095c8f6a2ba2e76b53b82c3749282 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/9cd8236a30e65989f2ed9c7afcfcf2369b6036ade2a7d81c8e203c2789178074.wgsl @@ -0,0 +1,12 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 417792u; +if (i >= 417792u) { return; } +let coord = (i / 1u) % 68u; +if (coord >= 0u && coord < 4u) { out[i] = f32(b0[(i / 68u) * 4u + (coord - 0u) * 1u + i % 1u]); } +if (coord >= 4u && coord < 68u) { out[i] = f32(b1[(i / 68u) * 64u + (coord - 4u) * 1u + i % 1u]); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/9d12ba7fd89692e99bb291808c5a80ffd5b95478671dde2c936fc3deb8383fa0.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/9d12ba7fd89692e99bb291808c5a80ffd5b95478671dde2c936fc3deb8383fa0.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..c743049812f0cdac4cac58f95aedc18a7838dbae --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/9d12ba7fd89692e99bb291808c5a80ffd5b95478671dde2c936fc3deb8383fa0.wgsl @@ -0,0 +1,11 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 1024u; +if (i >= 1024u) { return; } +let x = f32(b0[i]); +if (x * 1.0 > 20.0) { out[i] = f32(x); return; } +out[i] = f32(log(1.0 + exp(x * 1.0)) / 1.0); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/9d3d7b777701cd320ca11358e554e1019fb041ee4d765e66071c215242906773.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/9d3d7b777701cd320ca11358e554e1019fb041ee4d765e66071c215242906773.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..433c8d99687959f0d2fba22eeee39545cf88e8ca --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/9d3d7b777701cd320ca11358e554e1019fb041ee4d765e66071c215242906773.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 32768u; +if (i >= 32768u) { return; } +out[i] = f32(b0[((i / 32768u) % 1u) * 65536u + ((i / 2048u) % 16u) * 4096u + ((i / 256u) % 8u) * 512u + (((i / 1u) % 256u) * 1u + 0u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/9d504391a987c7be7ccfbb7972c27cf54cd62730c19cbe7949fee2ea059f0c43.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/9d504391a987c7be7ccfbb7972c27cf54cd62730c19cbe7949fee2ea059f0c43.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..90bdc06efe0122917f683fbb8817bcab407c17a3 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/9d504391a987c7be7ccfbb7972c27cf54cd62730c19cbe7949fee2ea059f0c43.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 122880u; +if (i >= 122880u) { return; } +let x = f32(b0[i]); +out[i] = f32(x / (1.0 + exp(-x))); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/9f040facf0594804dba5b0f10f53b11b7223a1e1705896f95a8f95aa0fff5eec.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/9f040facf0594804dba5b0f10f53b11b7223a1e1705896f95a8f95aa0fff5eec.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..31bd75024f015a30070af10901b1b0aa5f0a0a89 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/9f040facf0594804dba5b0f10f53b11b7223a1e1705896f95a8f95aa0fff5eec.wgsl @@ -0,0 +1,11 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 2048u; +if (i >= 2048u) { return; } +let coord = (i / 1u) % 32u; +if (coord >= 1u && coord < 34u && (coord - 1u) % 3u == 0u) { out[i] = f32(b0[((i / 2048u) % 1u) * 704u + ((i / 32u) % 64u) * 11u + ((((i / 1u) % 32u) - 1u) / 3u) * 1u]); } else { out[i] = f32(b1[i]); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a16a539c1a662c846d6c661e572b0b8e19335f9ef41742f784d738bcfd3cd7a6.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a16a539c1a662c846d6c661e572b0b8e19335f9ef41742f784d738bcfd3cd7a6.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..870c26ddb7eaf8dd8335f56cb6a8270f187dcb59 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a16a539c1a662c846d6c661e572b0b8e19335f9ef41742f784d738bcfd3cd7a6.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 393216u; +if (i >= 393216u) { return; } +out[i] = f32(b0[((i / 393216u) % 1u) * 417792u + ((i / 64u) % 6144u) * 68u + (((i / 1u) % 64u) * 1u + 4u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a1a974f6d8d51fd7c3496ede0966af303ad9f0c0c9ee44cf93ec962d2b0e87e1.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a1a974f6d8d51fd7c3496ede0966af303ad9f0c0c9ee44cf93ec962d2b0e87e1.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..12d890f4a402b0675a5fd2b6d98f661c3f315dd5 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a1a974f6d8d51fd7c3496ede0966af303ad9f0c0c9ee44cf93ec962d2b0e87e1.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 64u; +if (i >= 64u) { return; } +let x = f32(b0[i]); +out[i] = f32(-x); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a1cf6b03baf18d389f0a2b95440c17125a8ecc1e633568de985d42cac6e0d1cb.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a1cf6b03baf18d389f0a2b95440c17125a8ecc1e633568de985d42cac6e0d1cb.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..bef42a5c9cf3a75556610ba3eee2eac25cf19401 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a1cf6b03baf18d389f0a2b95440c17125a8ecc1e633568de985d42cac6e0d1cb.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 512u; +if (i >= 512u) { return; } +out[i] = f32(b0[1u * 512u + ((i / 512u) % 1u) * 512u + ((i / 32u) % 16u) * 32u + ((i / 1u) % 32u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a21c6a35532bc26ccfc46df22f98e1592e3b285e3800544c032edf39425bde1a.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a21c6a35532bc26ccfc46df22f98e1592e3b285e3800544c032edf39425bde1a.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..58181f1b0116d2180192b51cc8e05ae53f00587d --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a21c6a35532bc26ccfc46df22f98e1592e3b285e3800544c032edf39425bde1a.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 98304u; +if (i >= 98304u) { return; } +out[i] = f32(b0[((i / 98304u) % 1u) * 98304u + ((i / 16u) % 6144u) * 1u + ((i / 1u) % 16u) * 6144u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a21dc37cea5d4adc26465d78d5491b794129ded665b3b3c014438c11519a837c.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a21dc37cea5d4adc26465d78d5491b794129ded665b3b3c014438c11519a837c.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..91e42f4325c36d11aee7518783be2351cb80037d --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a21dc37cea5d4adc26465d78d5491b794129ded665b3b3c014438c11519a837c.wgsl @@ -0,0 +1,17 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 131072u; +if (i >= 131072u) { return; } +let token = i32(b0[i / 2048u]); +if (token < 196608 || token >= 229376) { out[i] = f32(0.0); return; } +out[i] = f32(unpack_bf16_1(u32(token - 196608) * 2048u + i % 2048u)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a24673da4fae6d1c49aa143f8425996b2d036db7b0341987dab330c78ead91d7.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a24673da4fae6d1c49aa143f8425996b2d036db7b0341987dab330c78ead91d7.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..5466706ae8a51fb919a0c6e3bdc851986df7c3b3 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a24673da4fae6d1c49aa143f8425996b2d036db7b0341987dab330c78ead91d7.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 32768u; +if (i >= 32768u) { return; } +out[i] = f32(b0[((i / 32768u) % 1u) * 98304u + ((i / 2048u) % 16u) * 6144u + (((i / 1u) % 2048u) * 1u + 4096u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a26ccdf9414d63e640b21dbfb8191252a532ad248ad8a975bf64438d6c861edb.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a26ccdf9414d63e640b21dbfb8191252a532ad248ad8a975bf64438d6c861edb.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..0fc6e673512b1623bed3f2d93e89c5c49f8efdc9 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a26ccdf9414d63e640b21dbfb8191252a532ad248ad8a975bf64438d6c861edb.wgsl @@ -0,0 +1,17 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 32768u; +if (i >= 32768u) { return; } +let token = i32(b0[i / 2048u]); +if (token < 0 || token >= 32768) { out[i] = f32(0.0); return; } +out[i] = f32(unpack_bf16_1(u32(token - 0) * 2048u + i % 2048u)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a2bd65fc2709e093644d6cbf0c292b4d71520009a87bedcf4bca8fcb5f5c15b8.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a2bd65fc2709e093644d6cbf0c292b4d71520009a87bedcf4bca8fcb5f5c15b8.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..a3b7ba18c0aa6c84088bfae203f30b202cf1cedc --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a2bd65fc2709e093644d6cbf0c292b4d71520009a87bedcf4bca8fcb5f5c15b8.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 64u; +if (i >= 12u) { return; } +out[i] = f32(b0[i]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a2e242b97ac8ec546c9f91b5af599c2231915bdabb57d55cdc21f61a49c21007.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a2e242b97ac8ec546c9f91b5af599c2231915bdabb57d55cdc21f61a49c21007.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..0f992f99ce37f07be233993c8dabc7fe235ba666 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a2e242b97ac8ec546c9f91b5af599c2231915bdabb57d55cdc21f61a49c21007.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 1024u; +if (i >= 1024u) { return; } +let x = f32(b0[i]); +out[i] = f32(1.0 / (1.0 + exp(-x))); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a4803f845cab5f8bb5c34e5f6686e55705cc0dfd573472c6bc83190d2621296a.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a4803f845cab5f8bb5c34e5f6686e55705cc0dfd573472c6bc83190d2621296a.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..fa4350380344b201c65820b549dee1d6223299ac --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a4803f845cab5f8bb5c34e5f6686e55705cc0dfd573472c6bc83190d2621296a.wgsl @@ -0,0 +1,28 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +var tile_a: array; +var tile_b: array; +@compute @workgroup_size(8, 8) +fn main(@builtin(workgroup_id) group: vec3, @builtin(local_invocation_id) local: vec3) { + let row = group.y * 8u + local.y; + let col = group.x * 8u + local.x; + let i = (group.z * 4u + row) * 2048u + col; + var acc = 0.0; + for (var tile = 0u; tile < 2048u; tile += 8u) { + tile_a[local.y * 8u + local.x] = 0.0; + tile_b[local.x * 8u + local.y] = 0.0; + if (row < 4u && tile + local.x < 2048u) { tile_a[local.y * 8u + local.x] = f32(b0[(group.z * 4u + row) * 2048u + tile + local.x]); } + if (group.x * 8u + local.y < 2048u && tile + local.x < 2048u) { tile_b[local.x * 8u + local.y] = unpack_bf16_1((group.x * 8u + local.y) * 2048u + tile + local.x); } + workgroupBarrier(); + for (var p = 0u; p < 8u; p++) { acc += tile_a[local.y * 8u + p] * tile_b[p * 8u + local.x]; } + workgroupBarrier(); + } + if (row < 4u && col < 2048u) { out[i] = f32(acc + 0.0); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a53c1ce51ebaec593ad667efae9603efe3807db8f0ee060a620ac031cc4f2b92.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a53c1ce51ebaec593ad667efae9603efe3807db8f0ee060a620ac031cc4f2b92.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..3ae9e0043808929344cd1e40bf60a2dc532aac06 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a53c1ce51ebaec593ad667efae9603efe3807db8f0ee060a620ac031cc4f2b92.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 8192u; +if (i >= 8192u) { return; } +let x = f32(b0[i]); +out[i] = f32(1.0 / (1.0 + exp(-x))); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a62f6b62277fe048d6bac44a25a2e61399e7e2eab103fccd3a23c29a3c827856.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a62f6b62277fe048d6bac44a25a2e61399e7e2eab103fccd3a23c29a3c827856.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..94caaa605cd85dfadbdb72f49366b2f40ac3ddcf --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a62f6b62277fe048d6bac44a25a2e61399e7e2eab103fccd3a23c29a3c827856.wgsl @@ -0,0 +1,44 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var b2: array; +@group(0) @binding(3) var b3: array; +@group(0) @binding(4) var b4: array; +@group(0) @binding(5) var b5: array; +@group(0) @binding(6) var out: array; + +var partial: array; +var delta: f32; +@compute @workgroup_size(128) +fn main(@builtin(workgroup_id) group: vec3, @builtin(local_invocation_id) local: vec3) { + let column = group.x; + let head = group.y; + let batch_index = group.z; + let lane = local.x; + var recurrent = 0.0; + if (lane < 128u) { recurrent = f32(b5[((batch_index * 16u + head) * 128u + lane) * 128u + column]); } + for (var token = 0u; token < 64u; token++) { + recurrent *= exp(f32(b3[(batch_index * 64u + token) * 16u + head])); + partial[lane] = 0.0; + if (lane < 128u) { partial[lane] = recurrent * f32(b1[((batch_index * 64u + token) * 16u + head) * 128u + lane]); } + workgroupBarrier(); + for (var stride = 64u; stride > 0u; stride /= 2u) { + if (lane < stride) { partial[lane] += partial[lane + stride]; } + workgroupBarrier(); + } + if (lane == 0u) { delta = (f32(b2[((batch_index * 64u + token) * 16u + head) * 128u + column]) - partial[0]) * f32(b4[(batch_index * 64u + token) * 16u + head]); } + workgroupBarrier(); + if (lane < 128u) { recurrent += f32(b1[((batch_index * 64u + token) * 16u + head) * 128u + lane]) * delta; } + partial[lane] = 0.0; + if (lane < 128u) { + partial[lane] = recurrent * f32(b0[((batch_index * 64u + token) * 16u + head) * 128u + lane]) * 0.08838834764831845; + } + workgroupBarrier(); + for (var stride = 64u; stride > 0u; stride /= 2u) { + if (lane < stride) { partial[lane] += partial[lane + stride]; } + workgroupBarrier(); + } + if (lane == 0u) { out[((batch_index * 16u + head) * 192u + 128u + token) * 128u + column] = f32(partial[0]); } + workgroupBarrier(); + } + if (lane < 128u) { out[((batch_index * 16u + head) * 192u + lane) * 128u + column] = f32(recurrent); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a672c3e158716bde7444c8141f3df1da16da739ccdd2eb2ad60f9d42d0775157.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a672c3e158716bde7444c8141f3df1da16da739ccdd2eb2ad60f9d42d0775157.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..aa456f658303b9267eb9faab7425cd740bbdc6f5 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a672c3e158716bde7444c8141f3df1da16da739ccdd2eb2ad60f9d42d0775157.wgsl @@ -0,0 +1,11 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 2048u; +if (i >= 2048u) { return; } +let coord = (i / 128u) % 1u; +if (coord == 0u) { out[i] = f32(b0[((i / 2048u) % 1u) * 2048u + ((i / 128u) % 16u) * 128u + ((i / 1u) % 128u) * 1u]); } else { out[i] = f32(b1[i]); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a77f14c89662d2d3da8abd8f109667793dc662d307e5e1c61123be753e25437b.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a77f14c89662d2d3da8abd8f109667793dc662d307e5e1c61123be753e25437b.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..8f7e080e8cee8c2acabacf51697ca01fe402a237 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a77f14c89662d2d3da8abd8f109667793dc662d307e5e1c61123be753e25437b.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 128u; +if (i >= 96u) { return; } +out[i] = f32(b0[((i / 1u) % 32u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a7b0c51677aa6c03cbc5b36f07b4895bfdd46309ffd851a38a38e5761d9eef38.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a7b0c51677aa6c03cbc5b36f07b4895bfdd46309ffd851a38a38e5761d9eef38.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..fe57e5b777d09ed987e2cfc804fbb763e233e3d4 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a7b0c51677aa6c03cbc5b36f07b4895bfdd46309ffd851a38a38e5761d9eef38.wgsl @@ -0,0 +1,11 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var b2: array; +@group(0) @binding(3) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 2048u; +if (i >= 2048u) { return; } +out[i] = f32(select(f32(b0[i]), f32(b1[i]), f32(b2[0u]) != 0.0)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a7b50e8b6e4d56404b6261383f50b3eed4a2a59c3fadaaffcc974575c32a374f.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a7b50e8b6e4d56404b6261383f50b3eed4a2a59c3fadaaffcc974575c32a374f.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..58aa0b8cdce7083ab78ef1d07209c0fb7453bfd4 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a7b50e8b6e4d56404b6261383f50b3eed4a2a59c3fadaaffcc974575c32a374f.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 98304u; +if (i >= 98304u) { return; } +out[i] = f32(b0[((i / 98304u) % 1u) * 98304u + ((i / 6144u) % 16u) * 1u + ((i / 1u) % 6144u) * 16u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a831fed0324f7532d7905d47c499e6a3deb56fe99d0dbcc91193b351efa797db.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a831fed0324f7532d7905d47c499e6a3deb56fe99d0dbcc91193b351efa797db.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..fe108ca011aeda32468d08a7ba7e1941f1632006 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a831fed0324f7532d7905d47c499e6a3deb56fe99d0dbcc91193b351efa797db.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 393216u; +if (i >= 393216u) { return; } +out[i] = f32(b0[((i / 393216u) % 1u) * 393216u + ((i / 64u) % 6144u) * 1u + ((i / 1u) % 64u) * 6144u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a87152b0fd2f78f60d7abb61c2f6c4a9bde8a9dd45d0275b58d760a3da9f71ce.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a87152b0fd2f78f60d7abb61c2f6c4a9bde8a9dd45d0275b58d760a3da9f71ce.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..a411756a9239877ab739c80010eb78b97e1cc130 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a87152b0fd2f78f60d7abb61c2f6c4a9bde8a9dd45d0275b58d760a3da9f71ce.wgsl @@ -0,0 +1,17 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 384u; +if (i >= 384u) { return; } +let batch = i / 128u; +let row = (i / 4u) % 32u; +let col = i % 4u; +var acc = 0.0; +for (var p = 0u; p < 1u; p++) { + acc += f32(b0[(((batch / 1u) % 3u) * 32u) + row * 1u + p]) * f32(b1[(((batch / 1u) % 3u) * 4u) + p * 4u + col]); +} +out[i] = f32(acc); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a9f0eef095f015e2099adf81552a6727c45e70fc11f5e50b777d36b6370ab986.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a9f0eef095f015e2099adf81552a6727c45e70fc11f5e50b777d36b6370ab986.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..70a57f24ff695b932429f61024d4f9a7cf194254 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a9f0eef095f015e2099adf81552a6727c45e70fc11f5e50b777d36b6370ab986.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 8192u; +if (i >= 8192u) { return; } +out[i] = f32(b0[((i / 8192u) % 1u) * 24576u + ((i / 2048u) % 4u) * 6144u + (((i / 1u) % 2048u) * 1u + 2048u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a9f6bc361f1ea31f79f0ef6164872eeb04896a45338871a2d779789b47b1920b.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a9f6bc361f1ea31f79f0ef6164872eeb04896a45338871a2d779789b47b1920b.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..4bd4cd7da7a46d9f8234fcb621a58a1e37822d4c --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a9f6bc361f1ea31f79f0ef6164872eeb04896a45338871a2d779789b47b1920b.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 131072u; +if (i >= 131072u) { return; } +out[i] = f32(f32(b0[i]) * f32(b1[i])); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a9fa5db20fa8de1de429c6850c3e40ff8180bcdb59373919b84d2438b3b17352.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a9fa5db20fa8de1de429c6850c3e40ff8180bcdb59373919b84d2438b3b17352.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..44a1dd646db06ca3b9e95fa43d9ecf152f916a44 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/a9fa5db20fa8de1de429c6850c3e40ff8180bcdb59373919b84d2438b3b17352.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 64u; +if (i >= 48u) { return; } +out[i] = i32(b0[(((i / 16u) % 3u) * 1u + 1u) * 16u + ((i / 16u) % 1u) * 16u + ((i / 1u) % 16u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/aa227ae49fab3f75d86e02e6f390be785eabfeafe70e77a5c7eb4ad51895e382.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/aa227ae49fab3f75d86e02e6f390be785eabfeafe70e77a5c7eb4ad51895e382.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..2a2a259f750aef9c48507b8fa223d1c4de2f1364 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/aa227ae49fab3f75d86e02e6f390be785eabfeafe70e77a5c7eb4ad51895e382.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 32768u; +if (i >= 32768u) { return; } +out[i] = f32(f32(b0[i]) * f32(b1[i])); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/aac6395f039e396767ee10d0ad95d3d6206ad4a5c1e5913dfd5c3cfeaf227510.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/aac6395f039e396767ee10d0ad95d3d6206ad4a5c1e5913dfd5c3cfeaf227510.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..197ac86366a010949ab6555925b7746073f2838b --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/aac6395f039e396767ee10d0ad95d3d6206ad4a5c1e5913dfd5c3cfeaf227510.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 65536u; +if (i >= 65536u) { return; } +out[i] = f32(b0[i]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/abdb17daf29310a7828a55a1efeebaa65b6553e236fc20702e8c712e0a46dd5b.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/abdb17daf29310a7828a55a1efeebaa65b6553e236fc20702e8c712e0a46dd5b.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..0e63cebe9c685e72f2ef3807fe8a83b8853e6dd9 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/abdb17daf29310a7828a55a1efeebaa65b6553e236fc20702e8c712e0a46dd5b.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 2048u; +if (i >= 2048u) { return; } +let x = f32(b0[i]); +out[i] = f32(1.0 / (1.0 + exp(-x))); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/ac173d038b5767711ad9f7cafbceb9ca3ec84aaeb3d07a3037e7cd0f83fead2c.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/ac173d038b5767711ad9f7cafbceb9ca3ec84aaeb3d07a3037e7cd0f83fead2c.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..74186e66e6477562a7428f1d974871861d33807f --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/ac173d038b5767711ad9f7cafbceb9ca3ec84aaeb3d07a3037e7cd0f83fead2c.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 131072u; +if (i >= 131072u) { return; } +out[i] = f32(b0[((i / 131072u) % 1u) * 393216u + ((i / 2048u) % 64u) * 6144u + (((i / 1u) % 2048u) * 1u + 0u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/ac61ff8b1e3d15ef1f43e9d610e97d84fcae08527ed0a992d3cebbce5fdd286a.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/ac61ff8b1e3d15ef1f43e9d610e97d84fcae08527ed0a992d3cebbce5fdd286a.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..858a9ddea19febd0c8d4aa96d6c9c9c4ee26b4a8 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/ac61ff8b1e3d15ef1f43e9d610e97d84fcae08527ed0a992d3cebbce5fdd286a.wgsl @@ -0,0 +1,17 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 32768u; +if (i >= 32768u) { return; } +let batch = i / 4096u; +let row = (i / 256u) % 16u; +let col = i % 256u; +var acc = 0.0; +for (var p = 0u; p < 4096u; p++) { + acc += f32(b0[(((batch / 1u) % 8u) * 65536u) + row * 4096u + p]) * f32(b1[(((batch / 1u) % 8u) * 1048576u) + p * 256u + col]); +} +out[i] = f32(acc); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/ad72f60d58133272228319f1c066e7cd43ac28573ddeeb7a6f69be01af341f57.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/ad72f60d58133272228319f1c066e7cd43ac28573ddeeb7a6f69be01af341f57.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..4493ec84a6a3ecaad780645eb74fd1900795ba99 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/ad72f60d58133272228319f1c066e7cd43ac28573ddeeb7a6f69be01af341f57.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 512u; +if (i >= 512u) { return; } +out[i] = f32(b0[((i / 512u) % 1u) * 2048u + ((i / 256u) % 2u) * 1024u + ((i / 64u) % 4u) * 256u + (((i / 1u) % 64u) * 1u + 0u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/adf1e58a124e1301625024ae142dca5fb1dd50799fa94b52eaeffb82ea99852c.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/adf1e58a124e1301625024ae142dca5fb1dd50799fa94b52eaeffb82ea99852c.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..f6c7872687b7bdd3f9a0ce5853f90ec21d96e2d3 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/adf1e58a124e1301625024ae142dca5fb1dd50799fa94b52eaeffb82ea99852c.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 4096u; +if (i >= 4096u) { return; } +let x = f32(b0[i]); +out[i] = f32(-x); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/ae69e698c92571766e36ad8c078b13e42bde56745d45698daaadaca587b7279c.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/ae69e698c92571766e36ad8c078b13e42bde56745d45698daaadaca587b7279c.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..48686d13bb0682a3b49a3239768a42f4ae4217d8 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/ae69e698c92571766e36ad8c078b13e42bde56745d45698daaadaca587b7279c.wgsl @@ -0,0 +1,11 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 128u; +if (i >= 128u) { return; } +let coord = (i / 1u) % 32u; +if (coord >= 2u && coord < 32u && (coord - 2u) % 3u == 0u) { out[i] = f32(b0[((i / 128u) % 1u) * 40u + ((i / 32u) % 4u) * 10u + ((((i / 1u) % 32u) - 2u) / 3u) * 1u]); } else { out[i] = f32(b1[i]); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/aeee4bc86f9b4986043125d462e8fed051591da36bd013e5c7c31c3449353452.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/aeee4bc86f9b4986043125d462e8fed051591da36bd013e5c7c31c3449353452.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..3b5256f5848d9ccff55ceddf1a5f6577551991d9 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/aeee4bc86f9b4986043125d462e8fed051591da36bd013e5c7c31c3449353452.wgsl @@ -0,0 +1,17 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 2048u; +if (i >= 2048u) { return; } +let token = i32(b0[i / 2048u]); +if (token < 229376 || token >= 248320) { out[i] = f32(0.0); return; } +out[i] = f32(unpack_bf16_1(u32(token - 229376) * 2048u + i % 2048u)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/b02b0be460d581c720afd68c8b722e8da47e2ee432b5d61bbdf24b6084cb2f26.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/b02b0be460d581c720afd68c8b722e8da47e2ee432b5d61bbdf24b6084cb2f26.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..149a4ba7b993cd3c7a5ae3d437265ae0e1001e0e --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/b02b0be460d581c720afd68c8b722e8da47e2ee432b5d61bbdf24b6084cb2f26.wgsl @@ -0,0 +1,11 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 2048u; +if (i >= 2048u) { return; } +let x = f32(b0[i]); let s = f32(f32(x / (1.0 + exp(-x)))); +out[i] = f32(s * f32(b1[i])); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/b12eae76f13225c0c5d35fc9309964aba3172712799ff3bd8538bb2c1b34aa33.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/b12eae76f13225c0c5d35fc9309964aba3172712799ff3bd8538bb2c1b34aa33.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..59029583047b1c87c1e71eb358d7b73fbc8adba5 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/b12eae76f13225c0c5d35fc9309964aba3172712799ff3bd8538bb2c1b34aa33.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 1536u; +if (i >= 1536u) { return; } +out[i] = f32(b0[((i / 512u) % 3u) * 512u + ((i / 512u) % 1u) * 512u + ((i / 32u) % 16u) * 1u + ((i / 1u) % 32u) * 16u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/b1741cc45db17fa6e66bd797a89a3e3ca7cc70854e55c9e549d4f8500ef5a509.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/b1741cc45db17fa6e66bd797a89a3e3ca7cc70854e55c9e549d4f8500ef5a509.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..35f6b6116708bc1a863cae354eaa371f9d69675a --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/b1741cc45db17fa6e66bd797a89a3e3ca7cc70854e55c9e549d4f8500ef5a509.wgsl @@ -0,0 +1,17 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 131072u; +if (i >= 131072u) { return; } +let token = i32(b0[i / 2048u]); +if (token < 98304 || token >= 131072) { out[i] = f32(0.0); return; } +out[i] = f32(unpack_bf16_1(u32(token - 98304) * 2048u + i % 2048u)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/b199d835db70f888c7b99a3ac6e9ec56f6c47d5bba4eaf352e0a8eabed56411e.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/b199d835db70f888c7b99a3ac6e9ec56f6c47d5bba4eaf352e0a8eabed56411e.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..54526e84e0f57f0b27c2e0d57273b25cde83790f --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/b199d835db70f888c7b99a3ac6e9ec56f6c47d5bba4eaf352e0a8eabed56411e.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 2048u; +if (i >= 2048u) { return; } +out[i] = f32(f32(b0[i]) * f32(b1[((i / 128u) % 16u) * 1u])); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/b28ea4a8345a9c9abb2d74bfd620ba5de46616434dbaffdbabf022ea71800839.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/b28ea4a8345a9c9abb2d74bfd620ba5de46616434dbaffdbabf022ea71800839.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..9b18092deac8f9ecf759c438a10098e2899a4448 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/b28ea4a8345a9c9abb2d74bfd620ba5de46616434dbaffdbabf022ea71800839.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 8192u; +if (i >= 8192u) { return; } +out[i] = f32(b0[i]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/b2ae1b161c8a6315f8863e47511607027dfe583aac1db4c1626371ddfa0c64e2.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/b2ae1b161c8a6315f8863e47511607027dfe583aac1db4c1626371ddfa0c64e2.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..d7c92bd3f3a7e5b1883a4c8b38d5e18114b7fd53 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/b2ae1b161c8a6315f8863e47511607027dfe583aac1db4c1626371ddfa0c64e2.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 256u; +if (i >= 256u) { return; } +out[i] = f32(b0[((i / 256u) % 1u) * 512u + ((i / 128u) % 2u) * 256u + ((i / 32u) % 4u) * 64u + (((i / 1u) % 32u) * 1u + 32u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/b2b16798cbe94c919025d76b0435afe47966ffdd1ea53ec74a791c03c4709a28.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/b2b16798cbe94c919025d76b0435afe47966ffdd1ea53ec74a791c03c4709a28.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..4d8a5bb75deb878ba50367abeb2220352b270284 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/b2b16798cbe94c919025d76b0435afe47966ffdd1ea53ec74a791c03c4709a28.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 30720u; +if (i >= 30720u) { return; } +out[i] = f32(b0[((i / 30720u) % 1u) * 49152u + ((i / 5u) % 6144u) * 8u + (((i / 1u) % 5u) * 1u + 0u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/b3128f8b5ac3b671947588c52e53f26426877fd37a2e7bdfcd9819a6cbb7e3a7.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/b3128f8b5ac3b671947588c52e53f26426877fd37a2e7bdfcd9819a6cbb7e3a7.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..71e65d6a93cf6c0306d093bbd7707c022315afe0 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/b3128f8b5ac3b671947588c52e53f26426877fd37a2e7bdfcd9819a6cbb7e3a7.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 4194240u; +if (i >= 8388608u) { return; } +out[i] = f32(b0[((i / 8388608u) % 1u) * 8388608u + ((i / 1048576u) % 8u) * 1048576u + ((i / 4096u) % 256u) * 1u + ((i / 1u) % 4096u) * 256u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/b3bb2905555188f535b6b8bc1d050c142b5fea8222d9ef193466f80aa2c54dea.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/b3bb2905555188f535b6b8bc1d050c142b5fea8222d9ef193466f80aa2c54dea.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..6b99413ee370aa1076606344bd7a730d9634394d --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/b3bb2905555188f535b6b8bc1d050c142b5fea8222d9ef193466f80aa2c54dea.wgsl @@ -0,0 +1,11 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 2048u; +if (i >= 2048u) { return; } +let coord = (i / 1u) % 32u; +if (coord >= 2u && coord < 32u && (coord - 2u) % 3u == 0u) { out[i] = f32(b0[((i / 2048u) % 1u) * 640u + ((i / 32u) % 64u) * 10u + ((((i / 1u) % 32u) - 2u) / 3u) * 1u]); } else { out[i] = f32(b1[i]); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/b3c44f5f11a5fcc5c32ce6a1167f2b1232839113872306dcd7023ad9fe385c29.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/b3c44f5f11a5fcc5c32ce6a1167f2b1232839113872306dcd7023ad9fe385c29.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..c35dcfad8be1b65bb809526743e3d9e3d133bb3c --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/b3c44f5f11a5fcc5c32ce6a1167f2b1232839113872306dcd7023ad9fe385c29.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 192u; +if (i >= 192u) { return; } +out[i] = i32(b0[i]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/b44895294a35fd06948d21f6d4c53f7daa28386437f8e19488befb3b41e193b9.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/b44895294a35fd06948d21f6d4c53f7daa28386437f8e19488befb3b41e193b9.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..974532b0a701d436f47eaed601bfea2de3d0ad30 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/b44895294a35fd06948d21f6d4c53f7daa28386437f8e19488befb3b41e193b9.wgsl @@ -0,0 +1,25 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +var partial: array; +@compute @workgroup_size(64) +fn main(@builtin(workgroup_id) group: vec3, @builtin(local_invocation_id) local: vec3) { + let i = group.x + group.y * 16u; + if (i >= 16u) { return; } + let lane = local.x; + var acc = 0.0; + for (var p = lane; p < 2048u; p += 64u) { acc += f32(b0[(i / 16u) * 2048u + p]) * unpack_bf16_1((i % 16u) * 2048u + p); } + partial[lane] = acc; + workgroupBarrier(); + for (var stride = 32u; stride > 0u; stride /= 2u) { + if (lane < stride) { partial[lane] += partial[lane + stride]; } + workgroupBarrier(); + } + if (lane == 0u) { out[i] = f32(partial[0] + 0.0); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/b57928140994202536cd4f99d2e14f5dba9754f014843673790d5d48c9cbb9ab.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/b57928140994202536cd4f99d2e14f5dba9754f014843673790d5d48c9cbb9ab.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..a5d1a988399067b52e6658a8d39dcbfac3d81a20 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/b57928140994202536cd4f99d2e14f5dba9754f014843673790d5d48c9cbb9ab.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 512u; +if (i >= 512u) { return; } +out[i] = f32(b0[((i / 512u) % 1u) * 512u + ((i / 256u) % 2u) * 256u + ((i / 256u) % 1u) * 512u + ((i / 1u) % 256u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/b5984ff6eb9e56ef0f9930f775c1dc3c203eec15924e5fea4c2525b2ce180857.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/b5984ff6eb9e56ef0f9930f775c1dc3c203eec15924e5fea4c2525b2ce180857.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..9977e082147cbcb3bb693d292b2bdfcee26bb38a --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/b5984ff6eb9e56ef0f9930f775c1dc3c203eec15924e5fea4c2525b2ce180857.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 4096u; +if (i >= 4096u) { return; } +out[i] = f32(b0[((i / 4096u) % 1u) * 8192u + ((i / 512u) % 8u) * 1024u + ((i / 32u) % 16u) * 64u + (((i / 1u) % 32u) * 1u + 0u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/b64a63c60f91d717d7879df834c3443b1675c875093fad7b05da47fac5d61fc4.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/b64a63c60f91d717d7879df834c3443b1675c875093fad7b05da47fac5d61fc4.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..4ad6c7961a8cc11315fa39c63aeaf86041ffccb9 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/b64a63c60f91d717d7879df834c3443b1675c875093fad7b05da47fac5d61fc4.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 303104u; +if (i >= 303104u) { return; } +let coord = (i / 1u) % 18944u; +if (coord >= 0u && coord < 18944u) { out[i] = f32(b0[(i / 18944u) * 18944u + (coord - 0u) * 1u + i % 1u]); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/b6c3ce0defd66eef66dc3fd6eb9eab3fee12d179332698c3c764009988628b49.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/b6c3ce0defd66eef66dc3fd6eb9eab3fee12d179332698c3c764009988628b49.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..174ea30cc2482fd8884ac2284af35d964b934cbf --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/b6c3ce0defd66eef66dc3fd6eb9eab3fee12d179332698c3c764009988628b49.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 49152u; +if (i >= 49152u) { return; } +let x = f32(b0[i]); +out[i] = f32(x / (1.0 + exp(-x))); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/bb7f03e6a2277dc56084e9130086507be58871253867c0ce8ad60ee5ce4521b6.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/bb7f03e6a2277dc56084e9130086507be58871253867c0ce8ad60ee5ce4521b6.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..4e3d4966600c9fa703e8af8c55e751691948715a --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/bb7f03e6a2277dc56084e9130086507be58871253867c0ce8ad60ee5ce4521b6.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 262144u; +if (i >= 262144u) { return; } +out[i] = f32(b0[((i / 262144u) % 1u) * 393216u + ((i / 16384u) % 16u) * 24576u + (((i / 128u) % 128u) * 1u + 0u) * 128u + ((i / 1u) % 128u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/bb9029b667eeb13670d1f640cd677c6eabd7a7569686c599e3eeb9482d642b00.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/bb9029b667eeb13670d1f640cd677c6eabd7a7569686c599e3eeb9482d642b00.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..70d42d4c763bcca299e524c1695c1ae352353cd9 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/bb9029b667eeb13670d1f640cd677c6eabd7a7569686c599e3eeb9482d642b00.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 2048u; +if (i >= 2048u) { return; } +out[i] = f32(f32(b0[i]) - (f32(b1[i]) * 1.0)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/bc22275618821f75af681d7a4d901fcd863aefc1ab3cf44da85ef9b0cf8b6790.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/bc22275618821f75af681d7a4d901fcd863aefc1ab3cf44da85ef9b0cf8b6790.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..7105e938db754bf010622aa64590bb8b926504e1 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/bc22275618821f75af681d7a4d901fcd863aefc1ab3cf44da85ef9b0cf8b6790.wgsl @@ -0,0 +1,17 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 32768u; +if (i >= 32768u) { return; } +let token = i32(b0[i / 2048u]); +if (token < 229376 || token >= 248320) { out[i] = f32(0.0); return; } +out[i] = f32(unpack_bf16_1(u32(token - 229376) * 2048u + i % 2048u)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/bc3debb5b2d1630349d983f26929555c7a91b4c38435f2c464c6c66a52b9c566.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/bc3debb5b2d1630349d983f26929555c7a91b4c38435f2c464c6c66a52b9c566.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..2e79845d2a74341a4c1a33d8faccf3e7441bc787 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/bc3debb5b2d1630349d983f26929555c7a91b4c38435f2c464c6c66a52b9c566.wgsl @@ -0,0 +1,24 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +var factor: f32; +@compute @workgroup_size(64) +fn main(@builtin(workgroup_id) group: vec3, @builtin(local_invocation_id) local: vec3) { + let row = group.x + group.y * 4u; + if (row >= 4u) { return; } + let lane = local.x; + if (lane == 0u) { + var total = 0.0; + for (var j = 0u; j < 2048u; j++) { + let v = f32(b0[row * 2048u + j]); + total += v * v; + } + factor = inverseSqrt(total / 2048.0 + 1e-06); + } + workgroupBarrier(); + for (var p = lane; p < 2048u; p += 64u) { + let i = row * 2048u + p; + out[i] = f32(f32(b0[row * 2048u + p]) * factor * (f32(b1[p]) + 1.0)); + } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/bcb78b92dbbfeb212c190e064bc2f9d8e79c201398cf38c9aa62df6fdba94469.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/bcb78b92dbbfeb212c190e064bc2f9d8e79c201398cf38c9aa62df6fdba94469.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..7b4dd957fd1c7e8dcb9f85dae6fcf264becc9365 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/bcb78b92dbbfeb212c190e064bc2f9d8e79c201398cf38c9aa62df6fdba94469.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 32768u; +if (i >= 32768u) { return; } +out[i] = f32(b0[((i / 32768u) % 1u) * 32768u + ((i / 16384u) % 2u) * 256u + ((i / 256u) % 64u) * 512u + ((i / 1u) % 256u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/bd70e4fc42ac55f0f52612841bcc3f9fe7df5bbb0fc76f94e56a131a92454658.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/bd70e4fc42ac55f0f52612841bcc3f9fe7df5bbb0fc76f94e56a131a92454658.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..e1eaf48755f6c89edfa173b16d7f022444d1cc0d --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/bd70e4fc42ac55f0f52612841bcc3f9fe7df5bbb0fc76f94e56a131a92454658.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 24576u; +if (i >= 24576u) { return; } +out[i] = f32(b0[((i / 24576u) % 1u) * 32768u + ((i / 12288u) % 2u) * 16384u + ((i / 192u) % 64u) * 256u + (((i / 1u) % 192u) * 1u + 64u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/bd8a785d4fbf09918f149c7eb5f34bd25f9358bf3412e27799a7c65436c71759.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/bd8a785d4fbf09918f149c7eb5f34bd25f9358bf3412e27799a7c65436c71759.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..a6362c1ba2be5818f23846f039d679fea5bafbf3 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/bd8a785d4fbf09918f149c7eb5f34bd25f9358bf3412e27799a7c65436c71759.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 24576u; +if (i >= 24576u) { return; } +out[i] = f32(b0[((i / 24576u) % 1u) * 417792u + ((i / 4u) % 6144u) * 68u + (((i / 1u) % 4u) * 1u + 64u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/bda7ebd3bcf25c31938fca1a582e82b972ab742f85f826f085417b0e6f651e60.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/bda7ebd3bcf25c31938fca1a582e82b972ab742f85f826f085417b0e6f651e60.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..4d0f8a39c69d540e4ebe14901bb8411835e15afb --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/bda7ebd3bcf25c31938fca1a582e82b972ab742f85f826f085417b0e6f651e60.wgsl @@ -0,0 +1,12 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 2048u; +if (i >= 2048u) { return; } +let coord = (i / 1u) % 64u; +if (coord >= 0u && coord < 32u) { out[i] = f32(b0[(i / 64u) * 32u + (coord - 0u) * 1u + i % 1u]); } +if (coord >= 32u && coord < 64u) { out[i] = f32(b1[(i / 64u) * 32u + (coord - 32u) * 1u + i % 1u]); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/bef5f6c8b48be4a0ecba85dcd4db622fd9c6bab0faa36f780a7ded694bbfde39.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/bef5f6c8b48be4a0ecba85dcd4db622fd9c6bab0faa36f780a7ded694bbfde39.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..086e39d7db86061c0500bb42369df207d6b0f4d1 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/bef5f6c8b48be4a0ecba85dcd4db622fd9c6bab0faa36f780a7ded694bbfde39.wgsl @@ -0,0 +1,25 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +var partial: array; +@compute @workgroup_size(64) +fn main(@builtin(workgroup_id) group: vec3, @builtin(local_invocation_id) local: vec3) { + let i = group.x + group.y * 2048u; + if (i >= 2048u) { return; } + let lane = local.x; + var acc = 0.0; + for (var p = lane; p < 6144u; p += 64u) { acc += f32(b0[(i / 2048u) * 6144u + p]) * unpack_bf16_1((i % 2048u) * 6144u + p); } + partial[lane] = acc; + workgroupBarrier(); + for (var stride = 32u; stride > 0u; stride /= 2u) { + if (lane < stride) { partial[lane] += partial[lane + stride]; } + workgroupBarrier(); + } + if (lane == 0u) { out[i] = f32(partial[0] + 0.0); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c02ac02d110c0be5d0990d20ab0d8c7a081c74f4e147f083789a203f22fc3258.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c02ac02d110c0be5d0990d20ab0d8c7a081c74f4e147f083789a203f22fc3258.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..cb1e79634a79e0cdf98a873e21b34a8285f58367 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c02ac02d110c0be5d0990d20ab0d8c7a081c74f4e147f083789a203f22fc3258.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 256u; +if (i >= 256u) { return; } +out[i] = f32(f32(b0[((i / 1u) % 16u) * 1u]) * f32(b1[i])); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c0a7f99d0ce8f9a199b9baa52effe47afa9605f77405c32b32d132be1f7404f1.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c0a7f99d0ce8f9a199b9baa52effe47afa9605f77405c32b32d132be1f7404f1.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..bf490a01533f687f754f69957cc65aa09be66c54 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c0a7f99d0ce8f9a199b9baa52effe47afa9605f77405c32b32d132be1f7404f1.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 64u; +if (i >= 64u) { return; } +out[i] = f32(b0[i]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c0b2947798baa198598d75ca0e5dcd31a9fa320499665e34f7bb81d27fc15fb0.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c0b2947798baa198598d75ca0e5dcd31a9fa320499665e34f7bb81d27fc15fb0.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..bb8b3676ab0dfbc0c5c78d28f96387bc3a721046 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c0b2947798baa198598d75ca0e5dcd31a9fa320499665e34f7bb81d27fc15fb0.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 64u; +if (i >= 64u) { return; } +let x = f32(b0[i]); +out[i] = f32(cos(x)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c1096000361a304457865401d6266a640469ca04c0bbfe2eaa657e656b2fca33.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c1096000361a304457865401d6266a640469ca04c0bbfe2eaa657e656b2fca33.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..0c6c020c365e592254d9a01952f5a009adc5a22f --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c1096000361a304457865401d6266a640469ca04c0bbfe2eaa657e656b2fca33.wgsl @@ -0,0 +1,11 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 64u; +if (i >= 64u) { return; } +var acc = 0.0; +for (var j = 0u; j < 128u; j++) { acc += f32(b0[(((i / 64u) % 1u) * 8192u + ((i / 16u) % 4u) * 2048u + ((i / 1u) % 16u) * 128u) + (((j / 1u) % 128u) * 1u)]); } +out[i] = f32(acc); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c23bee3c3664172bf0a078a96acd2b3ad3136732234975f757d313e696c2c37a.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c23bee3c3664172bf0a078a96acd2b3ad3136732234975f757d313e696c2c37a.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..2d80755364a4fee024c589b10f9f00932c251576 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c23bee3c3664172bf0a078a96acd2b3ad3136732234975f757d313e696c2c37a.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 64u; +if (i >= 16u) { return; } +out[i] = f32(f32(b0[((i / 1u) % 16u) * 1u]) * f32(b1[i])); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c24c7e6057a3ab4778def9751ec5123025ec0e36139db626eccc4a9151bc6cc3.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c24c7e6057a3ab4778def9751ec5123025ec0e36139db626eccc4a9151bc6cc3.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..ab5764fc85cf04731216d5178e63dfc02d07826a --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c24c7e6057a3ab4778def9751ec5123025ec0e36139db626eccc4a9151bc6cc3.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 32768u; +if (i >= 32768u) { return; } +out[i] = f32(b0[((i / 32768u) % 1u) * 98304u + ((i / 2048u) % 16u) * 6144u + (((i / 1u) % 2048u) * 1u + 0u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c295fd955666232c92869895d186ebd33a25e4a5bf14df41d5b455fbe304d007.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c295fd955666232c92869895d186ebd33a25e4a5bf14df41d5b455fbe304d007.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..22b9338f6e2f9c6948f9be91fb996e767aa1f5dc --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c295fd955666232c92869895d186ebd33a25e4a5bf14df41d5b455fbe304d007.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 4194240u; +if (i >= 8388608u) { return; } +out[i] = f32(b0[((i / 4194304u) % 2u) * 1048576u + ((i / 256u) % 4096u) * 256u + ((i / 1u) % 256u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c2c557bad313dd62b6319363dd3b6b7224c3b64768c5303080a9743abb736117.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c2c557bad313dd62b6319363dd3b6b7224c3b64768c5303080a9743abb736117.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..12098533864f80930cf478bcf965d633589f8010 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c2c557bad313dd62b6319363dd3b6b7224c3b64768c5303080a9743abb736117.wgsl @@ -0,0 +1,34 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +var partial: array; +@compute @workgroup_size(64) +fn main(@builtin(workgroup_id) group: vec3, @builtin(local_invocation_id) local: vec3) { + let row = group.x + group.y * 512u; + if (row >= 512u) { return; } + let lane = local.x; + var maximum = -3.4028234663852886e38; + for (var p = lane; p < 4096u; p += 64u) { maximum = max(maximum, f32(b0[row * 4096u + p])); } + partial[lane] = maximum; + workgroupBarrier(); + for (var stride = 32u; stride > 0u; stride /= 2u) { + if (lane < stride) { partial[lane] = max(partial[lane], partial[lane + stride]); } + workgroupBarrier(); + } + maximum = partial[0]; + // All lanes must finish reading the maximum before the scratch array is reused. + workgroupBarrier(); + var total = 0.0; + for (var p = lane; p < 4096u; p += 64u) { total += exp(f32(b0[row * 4096u + p]) - maximum); } + partial[lane] = total; + workgroupBarrier(); + for (var stride = 32u; stride > 0u; stride /= 2u) { + if (lane < stride) { partial[lane] += partial[lane + stride]; } + workgroupBarrier(); + } + total = partial[0]; + for (var p = lane; p < 4096u; p += 64u) { + let i = row * 4096u + p; + out[i] = f32(exp(f32(b0[row * 4096u + p]) - maximum) / total); + } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c2c806bbe93f09247867b4ace45489a5f2fe3ee67f265418eb7aa71a29880276.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c2c806bbe93f09247867b4ace45489a5f2fe3ee67f265418eb7aa71a29880276.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..fa4df64a06b41dc3305ec748ea504d435a19aa23 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c2c806bbe93f09247867b4ace45489a5f2fe3ee67f265418eb7aa71a29880276.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 64u; +if (i >= 16u) { return; } +let x = f32(b0[i]); +out[i] = f32(inverseSqrt(x)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c2e7cdc03edb25ef7a160965c17c559b6ec7e139c145dc7390b73523bacba5bb.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c2e7cdc03edb25ef7a160965c17c559b6ec7e139c145dc7390b73523bacba5bb.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..fa9bac520b006ea9afd50beaa3b3f67aa0df0eef --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c2e7cdc03edb25ef7a160965c17c559b6ec7e139c145dc7390b73523bacba5bb.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 192u; +if (i >= 160u) { return; } +out[i] = f32(b0[i]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c34050971c037d57e84cc2cb44cf16ab73314cd30068d733c5ca430df1eea52d.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c34050971c037d57e84cc2cb44cf16ab73314cd30068d733c5ca430df1eea52d.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..170d9e8cf274724044f695c086efc6499f422d0d --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c34050971c037d57e84cc2cb44cf16ab73314cd30068d733c5ca430df1eea52d.wgsl @@ -0,0 +1,17 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 2048u; +if (i >= 2048u) { return; } +let token = i32(b0[i / 2048u]); +if (token < 163840 || token >= 196608) { out[i] = f32(0.0); return; } +out[i] = f32(unpack_bf16_1(u32(token - 163840) * 2048u + i % 2048u)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c342e2d29647509fe0f6ac1e2dbbe74032dbe9ecd6229c03557b86f160381d2e.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c342e2d29647509fe0f6ac1e2dbbe74032dbe9ecd6229c03557b86f160381d2e.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..4e167ce6a7ce9917f434844c31163e81a8ec4800 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c342e2d29647509fe0f6ac1e2dbbe74032dbe9ecd6229c03557b86f160381d2e.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 1024u; +if (i >= 1024u) { return; } +out[i] = f32(f32(b0[((i / 1u) % 16u) * 1u]) * f32(b1[i])); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c3735f34cafbac42efa5928641cefdaf7277659cc2675a36756bba97240ba5ae.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c3735f34cafbac42efa5928641cefdaf7277659cc2675a36756bba97240ba5ae.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..68bb70490bf5d2d463fb8fe40f5bec228d3c516f --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c3735f34cafbac42efa5928641cefdaf7277659cc2675a36756bba97240ba5ae.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 8192u; +if (i >= 8192u) { return; } +out[i] = f32(f32(b0[i]) * f32(b1[((i / 2048u) % 4u) * 16u + ((i / 128u) % 16u) * 1u])); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c3b8a95df30cf49f5ba2a9aa459e227338c340989ea076b9cf7fc3d09ba103a4.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c3b8a95df30cf49f5ba2a9aa459e227338c340989ea076b9cf7fc3d09ba103a4.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..22bcefa0ff08fd3a5375ea57e17ff7f0cda1d768 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c3b8a95df30cf49f5ba2a9aa459e227338c340989ea076b9cf7fc3d09ba103a4.wgsl @@ -0,0 +1,24 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +var factor: f32; +@compute @workgroup_size(64) +fn main(@builtin(workgroup_id) group: vec3, @builtin(local_invocation_id) local: vec3) { + let row = group.x + group.y * 1024u; + if (row >= 1024u) { return; } + let lane = local.x; + if (lane == 0u) { + var total = 0.0; + for (var j = 0u; j < 128u; j++) { + let v = f32(b0[row * 128u + j]); + total += v * v; + } + factor = inverseSqrt(total / 128.0 + 1e-06); + } + workgroupBarrier(); + for (var p = lane; p < 128u; p += 64u) { + let i = row * 128u + p; + out[i] = f32(f32(b0[row * 128u + p]) * factor * (f32(b1[p]) + 0.0)); + } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c4862be63d2532b6891da039edbef2f46737a34518f8a89602821e00447b5933.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c4862be63d2532b6891da039edbef2f46737a34518f8a89602821e00447b5933.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..7e12c353c29523774d93254e8dc9f119ce04b4fb --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c4862be63d2532b6891da039edbef2f46737a34518f8a89602821e00447b5933.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 2048u; +if (i >= 2048u) { return; } +out[i] = f32(b0[((i / 2048u) % 1u) * 6144u + ((i / 2048u) % 1u) * 6144u + (((i / 1u) % 2048u) * 1u + 2048u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c6fea77f6311ccf6eef6061338d5de46f7bd66317a5a8448d52c3cfd72f6c541.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c6fea77f6311ccf6eef6061338d5de46f7bd66317a5a8448d52c3cfd72f6c541.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..81a43a53e2afe8680a3dfd635b517553462f437c --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c6fea77f6311ccf6eef6061338d5de46f7bd66317a5a8448d52c3cfd72f6c541.wgsl @@ -0,0 +1,25 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +var partial: array; +@compute @workgroup_size(64) +fn main(@builtin(workgroup_id) group: vec3, @builtin(local_invocation_id) local: vec3) { + let i = group.x + group.y * 6144u; + if (i >= 6144u) { return; } + let lane = local.x; + var acc = 0.0; + for (var p = lane; p < 2048u; p += 64u) { acc += f32(b0[(i / 6144u) * 2048u + p]) * unpack_bf16_1((i % 6144u) * 2048u + p); } + partial[lane] = acc; + workgroupBarrier(); + for (var stride = 32u; stride > 0u; stride /= 2u) { + if (lane < stride) { partial[lane] += partial[lane + stride]; } + workgroupBarrier(); + } + if (lane == 0u) { out[i] = f32(partial[0] + 0.0); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c72041e82befee6919af48775291256e22a43dc6445ef0aa288db6b96585a2a9.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c72041e82befee6919af48775291256e22a43dc6445ef0aa288db6b96585a2a9.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..ceffcce3113d363ae38d0760c9af3a93e2a924d3 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c72041e82befee6919af48775291256e22a43dc6445ef0aa288db6b96585a2a9.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 64u; +if (i >= 32u) { return; } +out[i] = f32(b0[i]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c804a18a7bed0d1c647838cab84658e1a40005fc2100decef96e2ed66e1f8c0b.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c804a18a7bed0d1c647838cab84658e1a40005fc2100decef96e2ed66e1f8c0b.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..054c81c58a8f3ba4e69eba29f1b719a1e71b6b2a --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c804a18a7bed0d1c647838cab84658e1a40005fc2100decef96e2ed66e1f8c0b.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 1212416u; +if (i >= 1212416u) { return; } +let coord = (i / 1u) % 18944u; +if (coord >= 0u && coord < 18944u) { out[i] = f32(b0[(i / 18944u) * 18944u + (coord - 0u) * 1u + i % 1u]); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c83a2a6faf563ec3bbad43a3e108d58c09cd8aeed01b38e4e82d1c3c9b650c21.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c83a2a6faf563ec3bbad43a3e108d58c09cd8aeed01b38e4e82d1c3c9b650c21.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..19ed701e6f3435af2e4cac80f2299fec71288328 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c83a2a6faf563ec3bbad43a3e108d58c09cd8aeed01b38e4e82d1c3c9b650c21.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 2048u; +if (i >= 2048u) { return; } +out[i] = f32(b0[2u * 2048u + ((i / 2048u) % 1u) * 2048u + ((i / 32u) % 64u) * 32u + ((i / 1u) % 32u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c8c077eea97ee78f1f10dacccd47d60cd76278ea99d0863ce3ca8f16601785bd.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c8c077eea97ee78f1f10dacccd47d60cd76278ea99d0863ce3ca8f16601785bd.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..000be5b1753f3e2446518145ae3cfc8a016c2daa --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c8c077eea97ee78f1f10dacccd47d60cd76278ea99d0863ce3ca8f16601785bd.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 75776u; +if (i >= 75776u) { return; } +let coord = (i / 1u) % 18944u; +if (coord >= 0u && coord < 18944u) { out[i] = f32(b0[(i / 18944u) * 18944u + (coord - 0u) * 1u + i % 1u]); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c90428425f6d220b441e97e3b894adfb090869c98b17f53afbd2f9fb202b4525.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c90428425f6d220b441e97e3b894adfb090869c98b17f53afbd2f9fb202b4525.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..6bbc472bea9c8d96ae70e94b1ca3e146cd081981 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c90428425f6d220b441e97e3b894adfb090869c98b17f53afbd2f9fb202b4525.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 64u; +if (i >= 64u) { return; } +let x = f32(b0[i]); +out[i] = f32(sin(x)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c9d90936ab6b78afdcd34c23c05b9b3cd93c021ccf9ac1645714b6a919f6dfbd.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c9d90936ab6b78afdcd34c23c05b9b3cd93c021ccf9ac1645714b6a919f6dfbd.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..888863566f0dabfb6848daeeb06947fbdaac9f9b --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c9d90936ab6b78afdcd34c23c05b9b3cd93c021ccf9ac1645714b6a919f6dfbd.wgsl @@ -0,0 +1,17 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 2048u; +if (i >= 2048u) { return; } +let token = i32(b0[i / 2048u]); +if (token < 131072 || token >= 163840) { out[i] = f32(0.0); return; } +out[i] = f32(unpack_bf16_1(u32(token - 131072) * 2048u + i % 2048u)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c9dce107dfa3160c552e0381c1859565c3e7e014e76b9a5c9845a7aa9979866a.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c9dce107dfa3160c552e0381c1859565c3e7e014e76b9a5c9845a7aa9979866a.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..c9c837a1926cf2071a7767c482bfd9348bd9b4b5 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/c9dce107dfa3160c552e0381c1859565c3e7e014e76b9a5c9845a7aa9979866a.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 131072u; +if (i >= 131072u) { return; } +out[i] = f32(f32(b0[i]) + (f32(b1[i]) * 1.0)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/ca9a3115f8f3881eee99e421cb4f259113b13bb4c107348279bb92c643a52197.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/ca9a3115f8f3881eee99e421cb4f259113b13bb4c107348279bb92c643a52197.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..a23bfb9bcccaa79b5dac185105bff8ca820bb74d --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/ca9a3115f8f3881eee99e421cb4f259113b13bb4c107348279bb92c643a52197.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 1024u; +if (i >= 1024u) { return; } +let x = f32(b0[i]); +out[i] = f32(sin(x)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/cc250879ffbf43ba05860b5a86f6a824e8ca7b4c9f820137a68e1ba633e09738.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/cc250879ffbf43ba05860b5a86f6a824e8ca7b4c9f820137a68e1ba633e09738.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..f99a31a5530ee04c3f3573c324dd7c6471dc1049 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/cc250879ffbf43ba05860b5a86f6a824e8ca7b4c9f820137a68e1ba633e09738.wgsl @@ -0,0 +1,17 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 128u; +if (i >= 96u) { return; } +let batch = i / 32u; +let row = (i / 1u) % 32u; +let col = i % 1u; +var acc = 0.0; +for (var p = 0u; p < 1u; p++) { + acc += f32(b0[(((batch / 1u) % 3u) * 32u) + row * 1u + p]) * f32(b1[(((batch / 1u) % 3u) * 1u) + p * 1u + col]); +} +out[i] = f32(acc); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/ccb303d2d38ef10c1cf514f01ec2fa3b2541734aca8a34b3e8bb8d71d03a6688.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/ccb303d2d38ef10c1cf514f01ec2fa3b2541734aca8a34b3e8bb8d71d03a6688.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..228b4bbd0824c9c80c477855a3d00e3274aa4588 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/ccb303d2d38ef10c1cf514f01ec2fa3b2541734aca8a34b3e8bb8d71d03a6688.wgsl @@ -0,0 +1,13 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { + let i = gid.x + gid.y * 512u; + if (i >= 512u) { return; } + let token = (i / 256u) % 1u; + let outer = i / 256u; + let destination = outer * 1048576u + u32(b1[token]) * 256u + i % 256u; + out[((destination) / 256u) % 4096u * 512u + ((destination) / 1048576u) % 2u * 256u + ((destination) / 1u) % 256u * 1u] = f32(b0[i]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/cd74e23e4f4177562ffb4c00641720b63d154cea3600f6177e01985d74784f37.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/cd74e23e4f4177562ffb4c00641720b63d154cea3600f6177e01985d74784f37.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..09fcea174bf26710815b865219fd6f9b01ee9aa1 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/cd74e23e4f4177562ffb4c00641720b63d154cea3600f6177e01985d74784f37.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 131072u; +if (i >= 131072u) { return; } +out[i] = f32(f32(b0[i]) * f32(b1[((i / 2048u) % 64u) * 16u + ((i / 128u) % 16u) * 1u])); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/cdc784b39918d10424edc08d2e44da0075863e8fd41ae362f5695a248363531d.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/cdc784b39918d10424edc08d2e44da0075863e8fd41ae362f5695a248363531d.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..ee515425cf5358aa221f3366d77a028e1327f04d --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/cdc784b39918d10424edc08d2e44da0075863e8fd41ae362f5695a248363531d.wgsl @@ -0,0 +1,34 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +var partial: array; +@compute @workgroup_size(64) +fn main(@builtin(workgroup_id) group: vec3, @builtin(local_invocation_id) local: vec3) { + let row = group.x + group.y * 8u; + if (row >= 8u) { return; } + let lane = local.x; + var maximum = -3.4028234663852886e38; + for (var p = lane; p < 4096u; p += 64u) { maximum = max(maximum, f32(b0[row * 4096u + p])); } + partial[lane] = maximum; + workgroupBarrier(); + for (var stride = 32u; stride > 0u; stride /= 2u) { + if (lane < stride) { partial[lane] = max(partial[lane], partial[lane + stride]); } + workgroupBarrier(); + } + maximum = partial[0]; + // All lanes must finish reading the maximum before the scratch array is reused. + workgroupBarrier(); + var total = 0.0; + for (var p = lane; p < 4096u; p += 64u) { total += exp(f32(b0[row * 4096u + p]) - maximum); } + partial[lane] = total; + workgroupBarrier(); + for (var stride = 32u; stride > 0u; stride /= 2u) { + if (lane < stride) { partial[lane] += partial[lane + stride]; } + workgroupBarrier(); + } + total = partial[0]; + for (var p = lane; p < 4096u; p += 64u) { + let i = row * 4096u + p; + out[i] = f32(exp(f32(b0[row * 4096u + p]) - maximum) / total); + } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/d0be84d22b9e3b0cf73729e9a6fad1c6cf7d03fa01b45b8765ed70158578f2a9.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/d0be84d22b9e3b0cf73729e9a6fad1c6cf7d03fa01b45b8765ed70158578f2a9.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..e1885827206d969e4d30ba0cbea1254ed34899aa --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/d0be84d22b9e3b0cf73729e9a6fad1c6cf7d03fa01b45b8765ed70158578f2a9.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 512u; +if (i >= 512u) { return; } +out[i] = f32(f32(b0[i]) * f32(b1[((i / 64u) % 4u) * 64u + ((i / 1u) % 64u) * 1u])); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/d155dd8abb0fe375aea320241d54486b2489a35ad76150cc77c4778bfbb9d957.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/d155dd8abb0fe375aea320241d54486b2489a35ad76150cc77c4778bfbb9d957.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..2ed956d555ce10ac3e0cfb4ddb36ebd66e887258 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/d155dd8abb0fe375aea320241d54486b2489a35ad76150cc77c4778bfbb9d957.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 1536u; +if (i >= 1536u) { return; } +out[i] = f32(b0[((i / 512u) % 3u) * 512u + ((i / 512u) % 1u) * 512u + ((i / 16u) % 32u) * 1u + ((i / 1u) % 16u) * 32u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/d2866fd21f58839ea7d43bf83fde4243c38e4f1771034520abb020be5d819a96.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/d2866fd21f58839ea7d43bf83fde4243c38e4f1771034520abb020be5d819a96.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..a2aecdb17ed7acc593c2fb1336efc680b5b06fe2 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/d2866fd21f58839ea7d43bf83fde4243c38e4f1771034520abb020be5d819a96.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 32768u; +if (i >= 32768u) { return; } +out[i] = f32(f32(b0[i]) + (f32(b1[i]) * 1.0)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/d418d3ee7df4b3d5c78742deeebd6338ae749b09cf5eadb52cc4e68bbd9ce3fa.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/d418d3ee7df4b3d5c78742deeebd6338ae749b09cf5eadb52cc4e68bbd9ce3fa.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..a0029935b20700451432632be68176f7c5a1e58c --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/d418d3ee7df4b3d5c78742deeebd6338ae749b09cf5eadb52cc4e68bbd9ce3fa.wgsl @@ -0,0 +1,17 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 32768u; +if (i >= 32768u) { return; } +let token = i32(b0[i / 2048u]); +if (token < 98304 || token >= 131072) { out[i] = f32(0.0); return; } +out[i] = f32(unpack_bf16_1(u32(token - 98304) * 2048u + i % 2048u)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/d44354e74d5bfca2fb879607683c5d04cb30c4e1a694270584a01c0c6b3d9be8.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/d44354e74d5bfca2fb879607683c5d04cb30c4e1a694270584a01c0c6b3d9be8.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..8dc4e37b9ab18460e2948a94be384c7507b4a40b --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/d44354e74d5bfca2fb879607683c5d04cb30c4e1a694270584a01c0c6b3d9be8.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 192u; +if (i >= 176u) { return; } +out[i] = f32(b0[i]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/d8757289e027d60366190dda56db53f6d6a3358fd813e84ca58f2076ddb0bf3e.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/d8757289e027d60366190dda56db53f6d6a3358fd813e84ca58f2076ddb0bf3e.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..953be222dbeeda53732439dbfe62aa874ef12d4f --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/d8757289e027d60366190dda56db53f6d6a3358fd813e84ca58f2076ddb0bf3e.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 2048u; +if (i >= 2048u) { return; } +out[i] = f32(b0[0u * 2048u + ((i / 2048u) % 1u) * 2048u + ((i / 32u) % 64u) * 32u + ((i / 1u) % 32u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/d8c79a22e83e4a3b75b732bffa9ca673713bb57d580c5af4e59c805645ff1ca3.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/d8c79a22e83e4a3b75b732bffa9ca673713bb57d580c5af4e59c805645ff1ca3.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..2b2fd35974b2d0fe841a8a268a0226630737a60e --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/d8c79a22e83e4a3b75b732bffa9ca673713bb57d580c5af4e59c805645ff1ca3.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 256u; +if (i >= 256u) { return; } +let x = f32(b0[i]); +out[i] = f32(cos(x)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/da7c63a84d7f2c46e8234a34c0905cfad6229740145070df00819509f8ab39de.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/da7c63a84d7f2c46e8234a34c0905cfad6229740145070df00819509f8ab39de.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..499822f6fd09e951de9b6f6961f497b337bb638b --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/da7c63a84d7f2c46e8234a34c0905cfad6229740145070df00819509f8ab39de.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 192u; +if (i >= 192u) { return; } +out[i] = f32(b0[i]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/dd544e5a005b68617e9a3557e1d24dd6282a5a62f47cae4cc41b619d3a1cd603.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/dd544e5a005b68617e9a3557e1d24dd6282a5a62f47cae4cc41b619d3a1cd603.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..ea5b4f2a12f5be394f09aff8d9d7d412604cad2b --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/dd544e5a005b68617e9a3557e1d24dd6282a5a62f47cae4cc41b619d3a1cd603.wgsl @@ -0,0 +1,17 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 6144u; +if (i >= 6144u) { return; } +let batch = i / 2048u; +let row = (i / 64u) % 32u; +let col = i % 64u; +var acc = 0.0; +for (var p = 0u; p < 1u; p++) { + acc += f32(b0[(((batch / 1u) % 3u) * 32u) + row * 1u + p]) * f32(b1[(((batch / 1u) % 3u) * 64u) + p * 64u + col]); +} +out[i] = f32(acc); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/de276eae1430ed164ae977ce4b005301ea0f2652bed1f879acb3a355e600ff5e.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/de276eae1430ed164ae977ce4b005301ea0f2652bed1f879acb3a355e600ff5e.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..684e67f205ed8e5d2b379a1b312f0339ea744c07 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/de276eae1430ed164ae977ce4b005301ea0f2652bed1f879acb3a355e600ff5e.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 2048u; +if (i >= 2048u) { return; } +out[i] = f32(f32(b0[i]) * f32(b1[i])); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/de4b2b6e4d6c225d58c25261df5c8f73711c3bbbd04a31d1ea5c5bffc827c6e9.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/de4b2b6e4d6c225d58c25261df5c8f73711c3bbbd04a31d1ea5c5bffc827c6e9.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..4f2bf7e4c7efd7610ae86a151b04332e7a137cb4 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/de4b2b6e4d6c225d58c25261df5c8f73711c3bbbd04a31d1ea5c5bffc827c6e9.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 64u; +if (i >= 64u) { return; } +let x = f32(b0[i]); +out[i] = f32(inverseSqrt(x)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/de637d523e83fc454a935515d5d0b5fd029fe23bb9dcd734e82e682fd741b32d.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/de637d523e83fc454a935515d5d0b5fd029fe23bb9dcd734e82e682fd741b32d.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..07e68d13afdc9d85ae3ec05afd0e05d8e59c47a2 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/de637d523e83fc454a935515d5d0b5fd029fe23bb9dcd734e82e682fd741b32d.wgsl @@ -0,0 +1,28 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +var tile_a: array; +var tile_b: array; +@compute @workgroup_size(8, 8) +fn main(@builtin(workgroup_id) group: vec3, @builtin(local_invocation_id) local: vec3) { + let row = group.y * 8u + local.y; + let col = group.x * 8u + local.x; + let i = (group.z * 16u + row) * 2048u + col; + var acc = 0.0; + for (var tile = 0u; tile < 2048u; tile += 8u) { + tile_a[local.y * 8u + local.x] = 0.0; + tile_b[local.x * 8u + local.y] = 0.0; + if (row < 16u && tile + local.x < 2048u) { tile_a[local.y * 8u + local.x] = f32(b0[(group.z * 16u + row) * 2048u + tile + local.x]); } + if (group.x * 8u + local.y < 2048u && tile + local.x < 2048u) { tile_b[local.x * 8u + local.y] = unpack_bf16_1((group.x * 8u + local.y) * 2048u + tile + local.x); } + workgroupBarrier(); + for (var p = 0u; p < 8u; p++) { acc += tile_a[local.y * 8u + p] * tile_b[p * 8u + local.x]; } + workgroupBarrier(); + } + if (row < 16u && col < 2048u) { out[i] = f32(acc + 0.0); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/deb451a300a279d0325fe3be090515d4daae6b3232d87b8e2c050991388ac00f.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/deb451a300a279d0325fe3be090515d4daae6b3232d87b8e2c050991388ac00f.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..2373549cc794fa4438a3c1e3ac3320d217d2de1c --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/deb451a300a279d0325fe3be090515d4daae6b3232d87b8e2c050991388ac00f.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 512u; +if (i >= 512u) { return; } +out[i] = f32(b0[2u * 512u + ((i / 512u) % 1u) * 512u + ((i / 32u) % 16u) * 32u + ((i / 1u) % 32u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/deee894ecb86334ff82870260fc5edbc36439c1d3bce09fab5708c03d699b390.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/deee894ecb86334ff82870260fc5edbc36439c1d3bce09fab5708c03d699b390.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..edaf6eca29e64fa2e4a563af4eaf9fe76bfb99b7 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/deee894ecb86334ff82870260fc5edbc36439c1d3bce09fab5708c03d699b390.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 64u; +if (i >= 32u) { return; } +out[i] = f32(b0[2u * 32u + ((i / 32u) % 1u) * 32u + ((i / 32u) % 1u) * 32u + ((i / 1u) % 32u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/e01dc46d731ca9d3358814482da28b4edb8496243937be85ddde86a02a215169.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/e01dc46d731ca9d3358814482da28b4edb8496243937be85ddde86a02a215169.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..5bc58ca8a83e46e3403c1f4ea7a6fd95358ac3d0 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/e01dc46d731ca9d3358814482da28b4edb8496243937be85ddde86a02a215169.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 6144u; +if (i >= 6144u) { return; } +out[i] = f32(b0[((i / 6144u) % 1u) * 30720u + ((i / 1u) % 6144u) * 5u + (((i / 1u) % 1u) * 1u + 4u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/e0811c2ada7eb4498201ac912dc9198cdd5f5904d94b2caa1b7a37e7bd9dc030.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/e0811c2ada7eb4498201ac912dc9198cdd5f5904d94b2caa1b7a37e7bd9dc030.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..885220bf8263afb1d19814e4426c6f084bfc769b --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/e0811c2ada7eb4498201ac912dc9198cdd5f5904d94b2caa1b7a37e7bd9dc030.wgsl @@ -0,0 +1,34 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +var partial: array; +@compute @workgroup_size(64) +fn main(@builtin(workgroup_id) group: vec3, @builtin(local_invocation_id) local: vec3) { + let row = group.x + group.y * 128u; + if (row >= 128u) { return; } + let lane = local.x; + var maximum = -3.4028234663852886e38; + for (var p = lane; p < 4096u; p += 64u) { maximum = max(maximum, f32(b0[row * 4096u + p])); } + partial[lane] = maximum; + workgroupBarrier(); + for (var stride = 32u; stride > 0u; stride /= 2u) { + if (lane < stride) { partial[lane] = max(partial[lane], partial[lane + stride]); } + workgroupBarrier(); + } + maximum = partial[0]; + // All lanes must finish reading the maximum before the scratch array is reused. + workgroupBarrier(); + var total = 0.0; + for (var p = lane; p < 4096u; p += 64u) { total += exp(f32(b0[row * 4096u + p]) - maximum); } + partial[lane] = total; + workgroupBarrier(); + for (var stride = 32u; stride > 0u; stride /= 2u) { + if (lane < stride) { partial[lane] += partial[lane + stride]; } + workgroupBarrier(); + } + total = partial[0]; + for (var p = lane; p < 4096u; p += 64u) { + let i = row * 4096u + p; + out[i] = f32(exp(f32(b0[row * 4096u + p]) - maximum) / total); + } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/e1866b6254f7909c12ae9d54062b0ecf0067d708abb37c1e051ef870bd2203d7.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/e1866b6254f7909c12ae9d54062b0ecf0067d708abb37c1e051ef870bd2203d7.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..6e0d70a003b0ae9ebc255496a061f374428e3953 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/e1866b6254f7909c12ae9d54062b0ecf0067d708abb37c1e051ef870bd2203d7.wgsl @@ -0,0 +1,11 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 131072u; +if (i >= 131072u) { return; } +let x = f32(b0[i]); let s = f32(f32(x / (1.0 + exp(-x)))); +out[i] = f32(s * f32(b1[i])); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/e1a249dce7a17d3c8504f99f72c8bdd539676dfd8fc7efe939ddb9348d423084.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/e1a249dce7a17d3c8504f99f72c8bdd539676dfd8fc7efe939ddb9348d423084.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..7a27ee6f9aed4b2434611a182d65507d3b15f760 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/e1a249dce7a17d3c8504f99f72c8bdd539676dfd8fc7efe939ddb9348d423084.wgsl @@ -0,0 +1,25 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +var partial: array; +@compute @workgroup_size(64) +fn main(@builtin(workgroup_id) group: vec3, @builtin(local_invocation_id) local: vec3) { + let i = group.x + group.y * 2048u; + if (i >= 2048u) { return; } + let lane = local.x; + var acc = 0.0; + for (var p = lane; p < 2048u; p += 64u) { acc += f32(b0[(i / 2048u) * 2048u + p]) * unpack_bf16_1((i % 2048u) * 2048u + p); } + partial[lane] = acc; + workgroupBarrier(); + for (var stride = 32u; stride > 0u; stride /= 2u) { + if (lane < stride) { partial[lane] += partial[lane + stride]; } + workgroupBarrier(); + } + if (lane == 0u) { out[i] = f32(partial[0] + 0.0); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/e26328df0e65bd3b1aa31d12ed34e71b1b4b309d708bd58badcabad803bca34a.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/e26328df0e65bd3b1aa31d12ed34e71b1b4b309d708bd58badcabad803bca34a.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..386e724abeb484d12085a13de21550ab9f87e944 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/e26328df0e65bd3b1aa31d12ed34e71b1b4b309d708bd58badcabad803bca34a.wgsl @@ -0,0 +1,11 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 6144u; +if (i >= 6144u) { return; } +let x = f32(b0[i]); let s = f32(f32(x / (1.0 + exp(-x)))); +out[i] = f32(s * f32(b1[i])); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/e369b5c120d84bfebbc35e3da096c33e55d20a607aecd5d82da5de4c95176e00.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/e369b5c120d84bfebbc35e3da096c33e55d20a607aecd5d82da5de4c95176e00.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..ea5b4de02c46ed92269369bebfaf9e012b9aa48d --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/e369b5c120d84bfebbc35e3da096c33e55d20a607aecd5d82da5de4c95176e00.wgsl @@ -0,0 +1,13 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { + let i = gid.x + gid.y * 32768u; + if (i >= 32768u) { return; } + let token = (i / 256u) % 64u; + let outer = i / 16384u; + let destination = outer * 1048576u + u32(b1[token]) * 256u + i % 256u; + out[((destination) / 256u) % 4096u * 512u + ((destination) / 1048576u) % 2u * 256u + ((destination) / 1u) % 256u * 1u] = f32(b0[i]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/e38b21c1b50403e478d2d4956df390560aa740de2dcba8d69322d996c998adf4.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/e38b21c1b50403e478d2d4956df390560aa740de2dcba8d69322d996c998adf4.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..2eb119d2449221b9b8bace6cfb92a13e33a3c95c --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/e38b21c1b50403e478d2d4956df390560aa740de2dcba8d69322d996c998adf4.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 2048u; +if (i >= 2048u) { return; } +out[i] = f32(b0[((i / 2048u) % 1u) * 4096u + ((i / 2048u) % 1u) * 4096u + ((i / 256u) % 8u) * 512u + (((i / 1u) % 256u) * 1u + 0u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/e3c6a64e01b6ea79adf125ff00a6dcf00f0b65aee0f4a3d14fdbc20e5dfeb22d.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/e3c6a64e01b6ea79adf125ff00a6dcf00f0b65aee0f4a3d14fdbc20e5dfeb22d.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..3d2f9b253a6b9d0335cd3b020fa078163eb347a6 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/e3c6a64e01b6ea79adf125ff00a6dcf00f0b65aee0f4a3d14fdbc20e5dfeb22d.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 8192u; +if (i >= 8192u) { return; } +out[i] = f32(f32(b0[i]) * f32(b1[((i / 64u) % 16u) * 64u + ((i / 1u) % 64u) * 1u])); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/e625a45b19e2fcc344b9bacb77fedc85870817ec32f34118246c8cb7b01f71e9.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/e625a45b19e2fcc344b9bacb77fedc85870817ec32f34118246c8cb7b01f71e9.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..0dc79313aed3814196b35c39aae27da844c3f125 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/e625a45b19e2fcc344b9bacb77fedc85870817ec32f34118246c8cb7b01f71e9.wgsl @@ -0,0 +1,28 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +var tile_a: array; +var tile_b: array; +@compute @workgroup_size(8, 8) +fn main(@builtin(workgroup_id) group: vec3, @builtin(local_invocation_id) local: vec3) { + let row = group.y * 8u + local.y; + let col = group.x * 8u + local.x; + let i = (group.z * 64u + row) * 512u + col; + var acc = 0.0; + for (var tile = 0u; tile < 2048u; tile += 8u) { + tile_a[local.y * 8u + local.x] = 0.0; + tile_b[local.x * 8u + local.y] = 0.0; + if (row < 64u && tile + local.x < 2048u) { tile_a[local.y * 8u + local.x] = f32(b0[(group.z * 64u + row) * 2048u + tile + local.x]); } + if (group.x * 8u + local.y < 512u && tile + local.x < 2048u) { tile_b[local.x * 8u + local.y] = unpack_bf16_1((group.x * 8u + local.y) * 2048u + tile + local.x); } + workgroupBarrier(); + for (var p = 0u; p < 8u; p++) { acc += tile_a[local.y * 8u + p] * tile_b[p * 8u + local.x]; } + workgroupBarrier(); + } + if (row < 64u && col < 512u) { out[i] = f32(acc + 0.0); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/e6571e9ffa79d4f7888d606a5845a6fe7d39e3b7944eafb979c162a384245c66.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/e6571e9ffa79d4f7888d606a5845a6fe7d39e3b7944eafb979c162a384245c66.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..1cca9e30814dd2231912899d446310b2c59b8009 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/e6571e9ffa79d4f7888d606a5845a6fe7d39e3b7944eafb979c162a384245c66.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 2048u; +if (i >= 2048u) { return; } +out[i] = f32(b0[((i / 2048u) % 1u) * 6144u + ((i / 2048u) % 1u) * 6144u + (((i / 1u) % 2048u) * 1u + 4096u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/e74eaedc2b731f96007caaea3db1518767845c24bc917b9c2b71553e22139130.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/e74eaedc2b731f96007caaea3db1518767845c24bc917b9c2b71553e22139130.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..46d7c7b355ee64e20cfeead625b246a385c60d9b --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/e74eaedc2b731f96007caaea3db1518767845c24bc917b9c2b71553e22139130.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 8192u; +if (i >= 8192u) { return; } +out[i] = f32(b0[((i / 8192u) % 1u) * 24576u + ((i / 2048u) % 4u) * 6144u + (((i / 1u) % 2048u) * 1u + 0u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/e829b3bd2efe5b094dc36238e2a933a1e30c942efddfc80e79862a55c57e6e20.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/e829b3bd2efe5b094dc36238e2a933a1e30c942efddfc80e79862a55c57e6e20.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..c061788bda0478004560218a522ad6db46d1c40e --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/e829b3bd2efe5b094dc36238e2a933a1e30c942efddfc80e79862a55c57e6e20.wgsl @@ -0,0 +1,11 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 64u; +if (i >= 16u) { return; } +var acc = 0.0; +for (var j = 0u; j < 128u; j++) { acc += f32(b0[(((i / 16u) % 1u) * 2048u + ((i / 16u) % 1u) * 2048u + ((i / 1u) % 16u) * 128u) + (((j / 1u) % 128u) * 1u)]); } +out[i] = f32(acc); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/e84c817e08236e486418f6b0b81f5abd27756f82be67cfbc15736410ac3c7e5d.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/e84c817e08236e486418f6b0b81f5abd27756f82be67cfbc15736410ac3c7e5d.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..9737295d6a724ac96efb6c84473f524d0f8dcb5f --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/e84c817e08236e486418f6b0b81f5abd27756f82be67cfbc15736410ac3c7e5d.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 256u; +if (i >= 256u) { return; } +out[i] = f32(f32(b0[i]) * 1.0); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/e8f318242666dd54f6bcb99ee9bea81797d22fb0c3530388b72aee83bccdc96a.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/e8f318242666dd54f6bcb99ee9bea81797d22fb0c3530388b72aee83bccdc96a.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..3bbb9ac2c3e3ace1608f003380a0fd79ffbeeee7 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/e8f318242666dd54f6bcb99ee9bea81797d22fb0c3530388b72aee83bccdc96a.wgsl @@ -0,0 +1,28 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +var tile_a: array; +var tile_b: array; +@compute @workgroup_size(8, 8) +fn main(@builtin(workgroup_id) group: vec3, @builtin(local_invocation_id) local: vec3) { + let row = group.y * 8u + local.y; + let col = group.x * 8u + local.x; + let i = (group.z * 64u + row) * 2048u + col; + var acc = 0.0; + for (var tile = 0u; tile < 2048u; tile += 8u) { + tile_a[local.y * 8u + local.x] = 0.0; + tile_b[local.x * 8u + local.y] = 0.0; + if (row < 64u && tile + local.x < 2048u) { tile_a[local.y * 8u + local.x] = f32(b0[(group.z * 64u + row) * 2048u + tile + local.x]); } + if (group.x * 8u + local.y < 2048u && tile + local.x < 2048u) { tile_b[local.x * 8u + local.y] = unpack_bf16_1((group.x * 8u + local.y) * 2048u + tile + local.x); } + workgroupBarrier(); + for (var p = 0u; p < 8u; p++) { acc += tile_a[local.y * 8u + p] * tile_b[p * 8u + local.x]; } + workgroupBarrier(); + } + if (row < 64u && col < 2048u) { out[i] = f32(acc + 0.0); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/e91fae5817b3b5e4b0025d4fa70d4cfa10b010d038a3f45c6348d25379df287d.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/e91fae5817b3b5e4b0025d4fa70d4cfa10b010d038a3f45c6348d25379df287d.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..22f89afc566d4ca07eaa1dbc2cd6483d7a06aa71 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/e91fae5817b3b5e4b0025d4fa70d4cfa10b010d038a3f45c6348d25379df287d.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 8192u; +if (i >= 8192u) { return; } +out[i] = f32(b0[((i / 8192u) % 1u) * 270336u + ((i / 512u) % 16u) * 16896u + (((i / 128u) % 4u) * 1u + 128u) * 128u + ((i / 1u) % 128u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/eb062a9b5fdad085ac68638dd1218cd210d2aad87bd96e2adf505571076b881b.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/eb062a9b5fdad085ac68638dd1218cd210d2aad87bd96e2adf505571076b881b.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..24a471d59389f6343fcc42260b429882b9b4ea1d --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/eb062a9b5fdad085ac68638dd1218cd210d2aad87bd96e2adf505571076b881b.wgsl @@ -0,0 +1,17 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 2048u; +if (i >= 2048u) { return; } +let token = i32(b0[i / 2048u]); +if (token < 98304 || token >= 131072) { out[i] = f32(0.0); return; } +out[i] = f32(unpack_bf16_1(u32(token - 98304) * 2048u + i % 2048u)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/eb52355cc0ef7f698f9c4a5667eb20a31652d69cdab4e0f0774b81464b9528ca.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/eb52355cc0ef7f698f9c4a5667eb20a31652d69cdab4e0f0774b81464b9528ca.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..631148594b5205f7782a247cc2863912e4061747 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/eb52355cc0ef7f698f9c4a5667eb20a31652d69cdab4e0f0774b81464b9528ca.wgsl @@ -0,0 +1,17 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 8192u; +if (i >= 8192u) { return; } +let token = i32(b0[i / 2048u]); +if (token < 0 || token >= 32768) { out[i] = f32(0.0); return; } +out[i] = f32(unpack_bf16_1(u32(token - 0) * 2048u + i % 2048u)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/eb77480d0d0529a45f6e0a1967f433c32b47ac7282ccc895f89d076949a71fbf.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/eb77480d0d0529a45f6e0a1967f433c32b47ac7282ccc895f89d076949a71fbf.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..31fbda7517058b83513ab528298bac318ae476c5 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/eb77480d0d0529a45f6e0a1967f433c32b47ac7282ccc895f89d076949a71fbf.wgsl @@ -0,0 +1,17 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 8192u; +if (i >= 8192u) { return; } +let token = i32(b0[i / 2048u]); +if (token < 229376 || token >= 248320) { out[i] = f32(0.0); return; } +out[i] = f32(unpack_bf16_1(u32(token - 229376) * 2048u + i % 2048u)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/ec17c9e66b2ad1dbed2547b1df93357497b8fca1052cd2375de06b2925123a97.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/ec17c9e66b2ad1dbed2547b1df93357497b8fca1052cd2375de06b2925123a97.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..0e19c87fcfedddc46478ff20cdc6ab849d6c64ab --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/ec17c9e66b2ad1dbed2547b1df93357497b8fca1052cd2375de06b2925123a97.wgsl @@ -0,0 +1,28 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +var tile_a: array; +var tile_b: array; +@compute @workgroup_size(8, 8) +fn main(@builtin(workgroup_id) group: vec3, @builtin(local_invocation_id) local: vec3) { + let row = group.y * 8u + local.y; + let col = group.x * 8u + local.x; + let i = (group.z * 64u + row) * 4096u + col; + var acc = 0.0; + for (var tile = 0u; tile < 2048u; tile += 8u) { + tile_a[local.y * 8u + local.x] = 0.0; + tile_b[local.x * 8u + local.y] = 0.0; + if (row < 64u && tile + local.x < 2048u) { tile_a[local.y * 8u + local.x] = f32(b0[(group.z * 64u + row) * 2048u + tile + local.x]); } + if (group.x * 8u + local.y < 4096u && tile + local.x < 2048u) { tile_b[local.x * 8u + local.y] = unpack_bf16_1((group.x * 8u + local.y) * 2048u + tile + local.x); } + workgroupBarrier(); + for (var p = 0u; p < 8u; p++) { acc += tile_a[local.y * 8u + p] * tile_b[p * 8u + local.x]; } + workgroupBarrier(); + } + if (row < 64u && col < 4096u) { out[i] = f32(acc + 0.0); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/ec606c53f8610fff07d8464d8f1cd2a909203cd4064d1be19ad9bdb42263794d.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/ec606c53f8610fff07d8464d8f1cd2a909203cd4064d1be19ad9bdb42263794d.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..5d9693423508c7bd74ec4f23c60f4d86602c81e1 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/ec606c53f8610fff07d8464d8f1cd2a909203cd4064d1be19ad9bdb42263794d.wgsl @@ -0,0 +1,17 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 2048u; +if (i >= 2048u) { return; } +let batch = i / 256u; +let row = (i / 256u) % 1u; +let col = i % 256u; +var acc = 0.0; +for (var p = 0u; p < 4096u; p++) { + acc += f32(b0[(((batch / 1u) % 8u) * 4096u) + row * 4096u + p]) * f32(b1[(((batch / 1u) % 8u) * 1048576u) + p * 256u + col]); +} +out[i] = f32(acc); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/edfa4ff396bf5cc3be28d9051639c4dda6fec1302d7a2bd34d89ec903af94af1.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/edfa4ff396bf5cc3be28d9051639c4dda6fec1302d7a2bd34d89ec903af94af1.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..fa04fd0adecdb9f18898bad16cb516ccdf4bf468 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/edfa4ff396bf5cc3be28d9051639c4dda6fec1302d7a2bd34d89ec903af94af1.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 64u; +if (i >= 16u) { return; } +out[i] = f32(f32(b0[i]) + (1e-06 * 1.0)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/eea033222d278c8aa8f4b0de36243adba4e5b6ce274d24a3dcd365ad42c19a38.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/eea033222d278c8aa8f4b0de36243adba4e5b6ce274d24a3dcd365ad42c19a38.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..7dd035a2b7b4ce728303f33a2f815174cbedc865 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/eea033222d278c8aa8f4b0de36243adba4e5b6ce274d24a3dcd365ad42c19a38.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 2048u; +if (i >= 2048u) { return; } +out[i] = f32(b0[((i / 2048u) % 1u) * 4096u + ((i / 2048u) % 1u) * 4096u + ((i / 256u) % 8u) * 512u + (((i / 1u) % 256u) * 1u + 256u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/ef364f47cced448917d1b6842c708dee101d53d7a781014f9a822214cea72bf8.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/ef364f47cced448917d1b6842c708dee101d53d7a781014f9a822214cea72bf8.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..7b1a3f0dff8b91f244bd9f20ffde6873033a24df --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/ef364f47cced448917d1b6842c708dee101d53d7a781014f9a822214cea72bf8.wgsl @@ -0,0 +1,24 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +var factor: f32; +@compute @workgroup_size(64) +fn main(@builtin(workgroup_id) group: vec3, @builtin(local_invocation_id) local: vec3) { + let row = group.x + group.y * 512u; + if (row >= 512u) { return; } + let lane = local.x; + if (lane == 0u) { + var total = 0.0; + for (var j = 0u; j < 256u; j++) { + let v = f32(b0[row * 256u + j]); + total += v * v; + } + factor = inverseSqrt(total / 256.0 + 1e-06); + } + workgroupBarrier(); + for (var p = lane; p < 256u; p += 64u) { + let i = row * 256u + p; + out[i] = f32(f32(b0[row * 256u + p]) * factor * (f32(b1[p]) + 1.0)); + } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/ef9aa0463882f8482e3a4e9ee97d5101a06c94645292cfdcf2deeff81ee4a284.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/ef9aa0463882f8482e3a4e9ee97d5101a06c94645292cfdcf2deeff81ee4a284.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..f3e0c0c3178577855935a47c94b1fbace824ff39 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/ef9aa0463882f8482e3a4e9ee97d5101a06c94645292cfdcf2deeff81ee4a284.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 16384u; +if (i >= 16384u) { return; } +out[i] = f32(b0[i]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/efacc40901cd20fbccdbd5fff0b0b52af2860746708640ae1907d6be212f5f86.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/efacc40901cd20fbccdbd5fff0b0b52af2860746708640ae1907d6be212f5f86.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..02f6f04a8138ab25ae38bf5b35cc13e736f0fffc --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/efacc40901cd20fbccdbd5fff0b0b52af2860746708640ae1907d6be212f5f86.wgsl @@ -0,0 +1,17 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 8192u; +if (i >= 8192u) { return; } +let token = i32(b0[i / 2048u]); +if (token < 65536 || token >= 98304) { out[i] = f32(0.0); return; } +out[i] = f32(unpack_bf16_1(u32(token - 65536) * 2048u + i % 2048u)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/efcecdf33b6927a4add3f254d95cad6d18d755d65e3f4873e8b7f5c057646a9b.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/efcecdf33b6927a4add3f254d95cad6d18d755d65e3f4873e8b7f5c057646a9b.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..e7ff2c1c7d2a5c72bbf52908e3a4a89766434990 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/efcecdf33b6927a4add3f254d95cad6d18d755d65e3f4873e8b7f5c057646a9b.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 704u; +if (i >= 704u) { return; } +out[i] = f32(b0[((i / 704u) % 1u) * 2048u + ((i / 11u) % 64u) * 32u + (((i / 1u) % 11u) * 3u + 1u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/f114c5cb9f1a7e377d9a3bcb28ab15b72807ece1796cf9c02fc74e7ce7318cc3.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/f114c5cb9f1a7e377d9a3bcb28ab15b72807ece1796cf9c02fc74e7ce7318cc3.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..71fee4a974a4ef03d91dd3ce0680762c347a9577 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/f114c5cb9f1a7e377d9a3bcb28ab15b72807ece1796cf9c02fc74e7ce7318cc3.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 64u; +if (i >= 16u) { return; } +out[i] = f32(b0[((i / 16u) % 1u) * 16u + ((i / 1u) % 16u) * 1u + 0u * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/f233dea95d020538ac476af9846f67cba0d137fd562d5f652cb333f0b3273c76.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/f233dea95d020538ac476af9846f67cba0d137fd562d5f652cb333f0b3273c76.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..63d1ffd2bc103e1a26f56ca1d5c9ff8519c692ac --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/f233dea95d020538ac476af9846f67cba0d137fd562d5f652cb333f0b3273c76.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 64u; +if (i >= 64u) { return; } +let x = f32(b0[i]); +out[i] = f32(1.0 / (1.0 + exp(-x))); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/f23ccedb2e02f7ccd40a4171c0a1ced4c4e7eec4dc1ed9604f668f691baa68e2.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/f23ccedb2e02f7ccd40a4171c0a1ced4c4e7eec4dc1ed9604f668f691baa68e2.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..8ea3a882fbad7969825ed46025244690e2dd7b52 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/f23ccedb2e02f7ccd40a4171c0a1ced4c4e7eec4dc1ed9604f668f691baa68e2.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 131072u; +if (i >= 131072u) { return; } +out[i] = f32(b0[i]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/f276cf6656b999339df464b61934487f5c8eb7a0957cf6d902254ab1aa2ffcd0.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/f276cf6656b999339df464b61934487f5c8eb7a0957cf6d902254ab1aa2ffcd0.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..15382fc197ef648b58ce80bf82efcabed936514c --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/f276cf6656b999339df464b61934487f5c8eb7a0957cf6d902254ab1aa2ffcd0.wgsl @@ -0,0 +1,12 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 2048u; +if (i >= 2048u) { return; } +let coord = (i / 1u) % 256u; +if (coord >= 0u && coord < 64u) { out[i] = f32(b0[(i / 256u) * 64u + (coord - 0u) * 1u + i % 1u]); } +if (coord >= 64u && coord < 256u) { out[i] = f32(b1[(i / 256u) * 192u + (coord - 64u) * 1u + i % 1u]); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/f2ee90b3d949141c23610237d27d44a7b833aacae8cdbc2e42a595d5eb7b5537.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/f2ee90b3d949141c23610237d27d44a7b833aacae8cdbc2e42a595d5eb7b5537.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..514e64a95d7576a978b5e3abc375ffb22297bc66 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/f2ee90b3d949141c23610237d27d44a7b833aacae8cdbc2e42a595d5eb7b5537.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 8192u; +if (i >= 8192u) { return; } +out[i] = f32(b0[((i / 8192u) % 1u) * 32768u + ((i / 1024u) % 8u) * 4096u + ((i / 64u) % 16u) * 256u + (((i / 1u) % 64u) * 1u + 0u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/f30ef45cea0a5e5df2b57e6af796e4798fb3c745a9b0bc926c24ce3cc9dec0da.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/f30ef45cea0a5e5df2b57e6af796e4798fb3c745a9b0bc926c24ce3cc9dec0da.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..fc2b54d6f71293881b2d717d6b6828fc97173740 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/f30ef45cea0a5e5df2b57e6af796e4798fb3c745a9b0bc926c24ce3cc9dec0da.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 2097152u; +if (i >= 2097152u) { return; } +out[i] = f32(f32(b0[i]) * 0.0625); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/f43cdd9c75fc256957b1b144a0587e8c8ddea861f991e1cdb6c9098e8b5d6ed7.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/f43cdd9c75fc256957b1b144a0587e8c8ddea861f991e1cdb6c9098e8b5d6ed7.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..b2f14ad5c01e9efb2e5f7424d8124543f564a86d --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/f43cdd9c75fc256957b1b144a0587e8c8ddea861f991e1cdb6c9098e8b5d6ed7.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 64u; +if (i >= 64u) { return; } +out[i] = f32(b0[((i / 64u) % 1u) * 128u + ((i / 32u) % 2u) * 64u + ((i / 32u) % 1u) * 64u + (((i / 1u) % 32u) * 1u + 0u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/f45156a1c571e56cf0730c88fcd58dbb5716b2cea086ebb9e0dfedfe5dcbf658.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/f45156a1c571e56cf0730c88fcd58dbb5716b2cea086ebb9e0dfedfe5dcbf658.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..ce3525f2123ee5d4f25f699881ad39286c38f693 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/f45156a1c571e56cf0730c88fcd58dbb5716b2cea086ebb9e0dfedfe5dcbf658.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 8192u; +if (i >= 8192u) { return; } +out[i] = f32(f32(b0[i]) * f32(b0[i])); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/f51f5d699193197f0dc7c2d586d727e8e41e465e70ef66e208e568c544524cf4.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/f51f5d699193197f0dc7c2d586d727e8e41e465e70ef66e208e568c544524cf4.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..bf1c1f3bc76577dc8abfe876ebc9e56ca5713ec4 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/f51f5d699193197f0dc7c2d586d727e8e41e465e70ef66e208e568c544524cf4.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 18944u; +if (i >= 18944u) { return; } +let coord = (i / 1u) % 18944u; +if (coord >= 0u && coord < 18944u) { out[i] = f32(b0[(i / 18944u) * 18944u + (coord - 0u) * 1u + i % 1u]); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/f5b51b1e0e52bd87a70a0ca169186ebb5734cbdc2b8f375ba0241485b1df4e66.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/f5b51b1e0e52bd87a70a0ca169186ebb5734cbdc2b8f375ba0241485b1df4e66.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..92790934326cbc014348566d54624e3d2d8a85c1 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/f5b51b1e0e52bd87a70a0ca169186ebb5734cbdc2b8f375ba0241485b1df4e66.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 512u; +if (i >= 512u) { return; } +out[i] = f32(f32(b0[i]) + (f32(b1[i]) * 1.0)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/f5e16141122c02a1ec56f8155742fd5314ab581eac810352c06abea3f9c57690.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/f5e16141122c02a1ec56f8155742fd5314ab581eac810352c06abea3f9c57690.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..011b9989a7cfd50ed05b4fbde19f90b64aa84b20 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/f5e16141122c02a1ec56f8155742fd5314ab581eac810352c06abea3f9c57690.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 131072u; +if (i >= 131072u) { return; } +out[i] = f32(f32(b0[i]) * f32(b0[i])); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/f5f6f056866d42771d34664166a72300424224e9d6bd1d57de1805e7476a2050.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/f5f6f056866d42771d34664166a72300424224e9d6bd1d57de1805e7476a2050.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..4e61151db275d2deac9f983bd165d506d746f384 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/f5f6f056866d42771d34664166a72300424224e9d6bd1d57de1805e7476a2050.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 2048u; +if (i >= 2048u) { return; } +out[i] = f32(b0[1u * 2048u + ((i / 2048u) % 1u) * 2048u + ((i / 32u) % 64u) * 32u + ((i / 1u) % 32u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/f64c470f9333da8111720c1b00d9aa0e63ea21435bba9c9550e93a2c75c639bd.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/f64c470f9333da8111720c1b00d9aa0e63ea21435bba9c9550e93a2c75c639bd.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..2e8ba1b5d3f7dc878ec29db541ee3133e69dc5ca --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/f64c470f9333da8111720c1b00d9aa0e63ea21435bba9c9550e93a2c75c639bd.wgsl @@ -0,0 +1,25 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +var partial: array; +@compute @workgroup_size(64) +fn main(@builtin(workgroup_id) group: vec3, @builtin(local_invocation_id) local: vec3) { + let i = group.x + group.y * 18944u; + if (i >= 18944u) { return; } + let lane = local.x; + var acc = 0.0; + for (var p = lane; p < 2048u; p += 64u) { acc += f32(b0[(i / 18944u) * 2048u + p]) * unpack_bf16_1((i % 18944u) * 2048u + p); } + partial[lane] = acc; + workgroupBarrier(); + for (var stride = 32u; stride > 0u; stride /= 2u) { + if (lane < stride) { partial[lane] += partial[lane + stride]; } + workgroupBarrier(); + } + if (lane == 0u) { out[i] = f32(partial[0] + 0.0); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/f66b0b2ea4229895bb6599fb5d3528be17eb9020c19829b54dd0fbb4d4857039.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/f66b0b2ea4229895bb6599fb5d3528be17eb9020c19829b54dd0fbb4d4857039.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..1fe067e9574b327c21206e0e5535bc398f54ff1b --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/f66b0b2ea4229895bb6599fb5d3528be17eb9020c19829b54dd0fbb4d4857039.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 64u; +if (i >= 64u) { return; } +out[i] = f32(f32(b0[((i / 1u) % 16u) * 1u]) * f32(b1[i])); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/f6ccc1a43bc7cbaab21e08ce5de522f383236035c835289025961d70c49c60e8.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/f6ccc1a43bc7cbaab21e08ce5de522f383236035c835289025961d70c49c60e8.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..6af5f79d6fa16007e949c9cac3ac0f2bc1a6910e --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/f6ccc1a43bc7cbaab21e08ce5de522f383236035c835289025961d70c49c60e8.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 4194240u; +if (i >= 8388608u) { return; } +out[i] = f32(b0[i]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/f73912607dffcf0ee27e9e1e1d342a3bef8f998e02cd06a8352524ef35a96d17.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/f73912607dffcf0ee27e9e1e1d342a3bef8f998e02cd06a8352524ef35a96d17.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..e5eca2c179c0804dcd0c49c39d7427ce2673747c --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/f73912607dffcf0ee27e9e1e1d342a3bef8f998e02cd06a8352524ef35a96d17.wgsl @@ -0,0 +1,17 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 32768u; +if (i >= 32768u) { return; } +let batch = i / 4096u; +let row = (i / 4096u) % 1u; +let col = i % 4096u; +var acc = 0.0; +for (var p = 0u; p < 256u; p++) { + acc += f32(b0[(((batch / 1u) % 8u) * 256u) + row * 256u + p]) * f32(b1[(((batch / 1u) % 8u) * 1048576u) + p * 4096u + col]); +} +out[i] = f32(acc); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/f84306aa81033babc4c37ecfb91a411dba2ccee17202615deefb2206add106e2.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/f84306aa81033babc4c37ecfb91a411dba2ccee17202615deefb2206add106e2.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..58968344810b5ec1eb718ef062079a8fd93b02a0 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/f84306aa81033babc4c37ecfb91a411dba2ccee17202615deefb2206add106e2.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 6144u; +if (i >= 6144u) { return; } +out[i] = f32(b0[((i / 6144u) % 1u) * 6144u + ((i / 1u) % 6144u) * 1u + ((i / 1u) % 1u) * 6144u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/f8460b61ea8ab5946764c8a8fa3a6aa4a51c4db1e30f5f1d3e3f0f2f1635a964.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/f8460b61ea8ab5946764c8a8fa3a6aa4a51c4db1e30f5f1d3e3f0f2f1635a964.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..410788b08c259098da3f2a160cb88a04812a90f1 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/f8460b61ea8ab5946764c8a8fa3a6aa4a51c4db1e30f5f1d3e3f0f2f1635a964.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 32768u; +if (i >= 32768u) { return; } +out[i] = f32(b0[((i / 32768u) % 1u) * 98304u + ((i / 2048u) % 16u) * 6144u + (((i / 1u) % 2048u) * 1u + 2048u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/f95724b4a3d2dbafaccd23a45f68234bb49e4a39168942060ca628960993f33d.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/f95724b4a3d2dbafaccd23a45f68234bb49e4a39168942060ca628960993f33d.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..9e09a0405b65767fdf150265f0573fa5737b5356 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/f95724b4a3d2dbafaccd23a45f68234bb49e4a39168942060ca628960993f33d.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 6144u; +if (i >= 6144u) { return; } +out[i] = f32(b0[((i / 6144u) % 1u) * 8192u + ((i / 768u) % 8u) * 1024u + ((i / 192u) % 4u) * 256u + (((i / 1u) % 192u) * 1u + 64u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/f994142054bcb47d6a554524dd8de9c3054467a1d07011027c47f475d0909c19.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/f994142054bcb47d6a554524dd8de9c3054467a1d07011027c47f475d0909c19.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..cf15e04cdeba75c873e80fc764f945a9f56b3a48 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/f994142054bcb47d6a554524dd8de9c3054467a1d07011027c47f475d0909c19.wgsl @@ -0,0 +1,24 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +var factor: f32; +@compute @workgroup_size(64) +fn main(@builtin(workgroup_id) group: vec3, @builtin(local_invocation_id) local: vec3) { + let row = group.x + group.y * 8u; + if (row >= 8u) { return; } + let lane = local.x; + if (lane == 0u) { + var total = 0.0; + for (var j = 0u; j < 256u; j++) { + let v = f32(b0[row * 256u + j]); + total += v * v; + } + factor = inverseSqrt(total / 256.0 + 1e-06); + } + workgroupBarrier(); + for (var p = lane; p < 256u; p += 64u) { + let i = row * 256u + p; + out[i] = f32(f32(b0[row * 256u + p]) * factor * (f32(b1[p]) + 1.0)); + } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/fa7c163b443e5f494b83f24da518fcad3e353d6e85facc3e3478f6005f964bd6.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/fa7c163b443e5f494b83f24da518fcad3e353d6e85facc3e3478f6005f964bd6.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..c9ea63d0ef2a33525ebd5156d578b4ceaf2ede3f --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/fa7c163b443e5f494b83f24da518fcad3e353d6e85facc3e3478f6005f964bd6.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 8192u; +if (i >= 8192u) { return; } +out[i] = f32(b0[((i / 8192u) % 1u) * 8192u + ((i / 2048u) % 4u) * 128u + ((i / 128u) % 16u) * 512u + ((i / 1u) % 128u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/fa90a055381629df20c59052b5e44670510dd1666b9f2b06a554dfed9a002953.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/fa90a055381629df20c59052b5e44670510dd1666b9f2b06a554dfed9a002953.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..6f74d6d41b23067fa00cf713cb503945fad5fe53 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/fa90a055381629df20c59052b5e44670510dd1666b9f2b06a554dfed9a002953.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 24576u; +if (i >= 24576u) { return; } +out[i] = f32(b0[((i / 24576u) % 1u) * 24576u + ((i / 6144u) % 4u) * 1u + ((i / 1u) % 6144u) * 4u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/fb200142bcbd435ed588a9fc45924edb21845ff3ab0ddb0271c5d5d03adf04bb.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/fb200142bcbd435ed588a9fc45924edb21845ff3ab0ddb0271c5d5d03adf04bb.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..247b70d7c24a44a2a389531aeedf176cc171389c --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/fb200142bcbd435ed588a9fc45924edb21845ff3ab0ddb0271c5d5d03adf04bb.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 640u; +if (i >= 640u) { return; } +out[i] = f32(b0[((i / 640u) % 1u) * 2048u + ((i / 10u) % 64u) * 32u + (((i / 1u) % 10u) * 3u + 2u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/fe8df26d9dca2aca6a22429dd9ab2c28acaba4e0caac80bf83ea8683b267ff25.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/fe8df26d9dca2aca6a22429dd9ab2c28acaba4e0caac80bf83ea8683b267ff25.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..f4b63fe9db61a6b8d3b58292be99c3e51f6e955c --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/fe8df26d9dca2aca6a22429dd9ab2c28acaba4e0caac80bf83ea8683b267ff25.wgsl @@ -0,0 +1,28 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +var tile_a: array; +var tile_b: array; +@compute @workgroup_size(8, 8) +fn main(@builtin(workgroup_id) group: vec3, @builtin(local_invocation_id) local: vec3) { + let row = group.y * 8u + local.y; + let col = group.x * 8u + local.x; + let i = (group.z * 16u + row) * 512u + col; + var acc = 0.0; + for (var tile = 0u; tile < 2048u; tile += 8u) { + tile_a[local.y * 8u + local.x] = 0.0; + tile_b[local.x * 8u + local.y] = 0.0; + if (row < 16u && tile + local.x < 2048u) { tile_a[local.y * 8u + local.x] = f32(b0[(group.z * 16u + row) * 2048u + tile + local.x]); } + if (group.x * 8u + local.y < 512u && tile + local.x < 2048u) { tile_b[local.x * 8u + local.y] = unpack_bf16_1((group.x * 8u + local.y) * 2048u + tile + local.x); } + workgroupBarrier(); + for (var p = 0u; p < 8u; p++) { acc += tile_a[local.y * 8u + p] * tile_b[p * 8u + local.x]; } + workgroupBarrier(); + } + if (row < 16u && col < 512u) { out[i] = f32(acc + 0.0); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/ff97954146b9a2a73ef2cfaa925f51254fc65b4eabcafb4ed57005054acd64b3.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/ff97954146b9a2a73ef2cfaa925f51254fc65b4eabcafb4ed57005054acd64b3.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..5c7c2c92fabaca291cba70c39cae39b764af18d0 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/ff97954146b9a2a73ef2cfaa925f51254fc65b4eabcafb4ed57005054acd64b3.wgsl @@ -0,0 +1,17 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 8192u; +if (i >= 8192u) { return; } +let token = i32(b0[i / 2048u]); +if (token < 163840 || token >= 196608) { out[i] = f32(0.0); return; } +out[i] = f32(unpack_bf16_1(u32(token - 163840) * 2048u + i % 2048u)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/ffd61bbf56bbbbf8d09f9d601173f529b4c4039901ae92ddbbbf3aab411547a1.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/ffd61bbf56bbbbf8d09f9d601173f529b4c4039901ae92ddbbbf3aab411547a1.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..982996b989eef6315d576f64bbfd0be0f5c74c06 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/kernels/ffd61bbf56bbbbf8d09f9d601173f529b4c4039901ae92ddbbbf3aab411547a1.wgsl @@ -0,0 +1,17 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 131072u; +if (i >= 131072u) { return; } +let token = i32(b0[i / 2048u]); +if (token < 0 || token >= 32768) { out[i] = f32(0.0); return; } +out[i] = f32(unpack_bf16_1(u32(token - 0) * 2048u + i % 2048u)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/manifest.json b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/manifest.json new file mode 100644 index 0000000000000000000000000000000000000000..497b9b6f8cdf12155eefff03572c1d0df8a18a48 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/manifest.json @@ -0,0 +1,2558 @@ +{ + "format": "webtorch", + "version": 1, + "producer": { + "name": "webtorch", + "version": "0.1.0a1", + "torch": "2.14.0" + }, + "entrypoints": { + "forward": "graph.json", + "prefill-mm-4": "entrypoints/prefill-mm-4.json", + "prefill-mm-16": "entrypoints/prefill-mm-16.json", + "prefill-mm-64": "entrypoints/prefill-mm-64.json" + }, + "requiredFeatures": [], + "assets": [ + { + "path": "weights/00000.bin", + "byteLength": 67108864, + "sha256": "84ffbe4377ff841ace0fd11d616bc3466b93dcf57d52517ca8840997f19eb4c6" + }, + { + "path": "weights/00001.bin", + "byteLength": 67108864, + "sha256": "30bde451b91aff2928cffe4865bbc86dbdea76dd6e4af4467d692d3f474a4e8d" + }, + { + "path": "weights/00002.bin", + "byteLength": 67108864, + "sha256": "2a48e75076e26169bd4285f359d0288716ebcdb123b1f79ebe66d7744e74ecc4" + }, + { + "path": "weights/00003.bin", + "byteLength": 67108864, + "sha256": "d586da92796726ab87caabd21324b47f5332b0daad223a1322d1a5e75a276489" + }, + { + "path": "weights/00004.bin", + "byteLength": 67108864, + "sha256": "8615920b4bd70b2e1c379f78d8fd2a3b454d7e1aa4db6ce5fda24b64e0b57c3a" + }, + { + "path": "weights/00005.bin", + "byteLength": 67108864, + "sha256": "5da61ce89024c8030b4efb637f69cdb77189724dcd9f7da9b987a7fb92a510a9" + }, + { + "path": "weights/00006.bin", + "byteLength": 67108864, + "sha256": "213bb58a0acf92bc272be0a009c1c660375cfcbea1525ef81a191efcd3a32ee0" + }, + { + "path": "weights/00007.bin", + "byteLength": 67108864, + "sha256": "e48c21b8fd01fd6eee6b534eba62c0c7285963b5c18391b1c854fbfee0c0c21b" + }, + { + "path": "weights/00008.bin", + "byteLength": 67108864, + "sha256": "b45e3336fac9353a2b90a731184c0a725fe0bf4b4f6c1cdcfd5d4e2d8f5f3849" + }, + { + "path": "weights/00009.bin", + "byteLength": 67108864, + "sha256": "097d3ef6aed94a420d026323d9e43f07730289dd1a9fe22bdeae57d76b84f0b6" + }, + { + "path": "weights/00010.bin", + "byteLength": 67108864, + "sha256": "e1b9904b4ef7840fedc8badd04438db0d7b9e7baadafe8931534c8801438a11f" + }, + { + "path": "weights/00011.bin", + "byteLength": 67108864, + "sha256": "7b52d09d0ce3fa311c4e08c9e6aded6bd20d221461f44aa6305a39e9c098b578" + }, + { + "path": "weights/00012.bin", + "byteLength": 67108864, + "sha256": "5193cee36808d007e7b7bdd958e49c0a3c30f99be53cdc163396553201b7a652" + }, + { + "path": "weights/00013.bin", + "byteLength": 67108864, + "sha256": "5c82b1141090140d5899e34a0d87c3d4f570a5e1d92d39f2c7adb0ae49aacdef" + }, + { + "path": "weights/00014.bin", + "byteLength": 67108864, + "sha256": "bea09d102c10e33637d240a9e420c57bcb5cbf2d241c05ae2b07cf5ac0984b4d" + }, + { + "path": "weights/00015.bin", + "byteLength": 67108864, + "sha256": "58c0a62c68f73cc28c5ac1b3f299de85cda77fe73a2576c60442ff780f96d5ea" + }, + { + "path": "weights/00016.bin", + "byteLength": 67108864, + "sha256": "f7f9818fafcf00a517c6378c077ad893a22f5bbc835eb902c6fd7d79e0f30b62" + }, + { + "path": "weights/00017.bin", + "byteLength": 67108864, + "sha256": "b99b5548fc4106ce86f9017b0a02cfdf25a0d144663bb81588502a08cd8b6e10" + }, + { + "path": "weights/00018.bin", + "byteLength": 67108864, + "sha256": "c78473c3bd855f84ec7536c96a6543522f43b935df6cda7a60da65c8e030db3a" + }, + { + "path": "weights/00019.bin", + "byteLength": 67108864, + "sha256": "052414ca871ce558c2755607d0e74ba11a74f3c5b6dcd4917cc3e7eeb34c6abc" + }, + { + "path": "weights/00020.bin", + "byteLength": 67108864, + "sha256": "6c6e80bb9f7563139a0556ad416c6cc014d400b6940f79c13047a6185e29be5f" + }, + { + "path": "weights/00021.bin", + "byteLength": 67108864, + "sha256": "7548c258d2190bc57dc1711fdbe1a045bce190c1910717673e95c758888d4f4a" + }, + { + "path": "weights/00022.bin", + "byteLength": 67108864, + "sha256": "d1964c13f5e04a8ec1cd8984a05ca312c0c6a06da8e0b14e00d22cc4099c7e08" + }, + { + "path": "weights/00023.bin", + "byteLength": 67108864, + "sha256": "8170cdf5e359d50eda5e303409c49da35728a18d69964b267afc508b4f2a9517" + }, + { + "path": "weights/00024.bin", + "byteLength": 67108864, + "sha256": "76ccd5e026b83375d3ed471720c58bb691c086300d0e2bde44a13cb14fc47472" + }, + { + "path": "weights/00025.bin", + "byteLength": 67108864, + "sha256": "f48ba9580896e09ae04297e2efb002953264953cb1ea4b69a5f1285c79d58a42" + }, + { + "path": "weights/00026.bin", + "byteLength": 67108864, + "sha256": "b6f45d85696e1a093a24bff31ad919e14e550dcc4a4333a4e1b0ff393c585aa2" + }, + { + "path": "weights/00027.bin", + "byteLength": 67108864, + "sha256": "58b1278a12ac53ceacc3a06b7c68e2fd3b678db7c62a7a924abaf4245203a40e" + }, + { + "path": "weights/00028.bin", + "byteLength": 67108864, + "sha256": "7bbd025cdeea82f063f7adbd40c49a0f6ae828c950577a9d4040a3f33b4c83a4" + }, + { + "path": "weights/00029.bin", + "byteLength": 67108864, + "sha256": "9c0e6602750dee3aa3f39a1b6eb768b95ee13c562979f9808a73d0d85482e7fb" + }, + { + "path": "weights/00030.bin", + "byteLength": 67108864, + "sha256": "3331d8407f07119b893918da0b638b3bd5460b6a7cf38b1aea1f7d41998832e8" + }, + { + "path": "weights/00031.bin", + "byteLength": 67108864, + "sha256": "fec0cd64eb9aae03dcefc9ba7e4a617d1de8b62f07b6066079215986f8227d35" + }, + { + "path": "weights/00032.bin", + "byteLength": 67108864, + "sha256": "5a54ec78ecbf1b6763e9d13f02084ca5a70a402eb1ae91a11a593f9ff6eedcc0" + }, + { + "path": "weights/00033.bin", + "byteLength": 67108864, + "sha256": "54df940fb40f2070f3d4aa726de9fce1efc3fbaf4b2d5b8ce596fdb518e3fb30" + }, + { + "path": "weights/00034.bin", + "byteLength": 67108864, + "sha256": "172f5ed200bc6801bd91789aaf7fa6d2dce41a12b04008aca8e5de995a65830e" + }, + { + "path": "weights/00035.bin", + "byteLength": 67108864, + "sha256": "12ada36385384289eead8757f40477bcd85d95fa44b5cb294c58b7791d79adf7" + }, + { + "path": "weights/00036.bin", + "byteLength": 67108864, + "sha256": "b8f43da56c71e795876be62db263f8602d9de8ea03759024e86ae191f4e65b31" + }, + { + "path": "weights/00037.bin", + "byteLength": 67108864, + "sha256": "489ab647c6b547c3d92875408dd525fb32697e68650cc4fd353983b628fa8fb1" + }, + { + "path": "weights/00038.bin", + "byteLength": 67108864, + "sha256": "cf54a3dcfed4247cd50cbb3df7299b40be305bf5702249267602b1ce20d0e7b7" + }, + { + "path": "weights/00039.bin", + "byteLength": 67108864, + "sha256": "cdddd6e904675a38816906ea9d2d2cebd0db040537d32fa1b511dce00978d00c" + }, + { + "path": "weights/00040.bin", + "byteLength": 67108864, + "sha256": "f07317fb099f0c7aa6b654998355df2caa934fb371a700280fc15dd9e5c5bc73" + }, + { + "path": "weights/00041.bin", + "byteLength": 67108864, + "sha256": "b8ef7f4a5f33b9d03d82ffae546970d82891f0d92c5c9e156ef4afd27a82474d" + }, + { + "path": "weights/00042.bin", + "byteLength": 67108864, + "sha256": "8f24982b6c4187e7ddd19ebe75db47ebea5213c73aae3467e9e1c9e6c9bcb5f2" + }, + { + "path": "weights/00043.bin", + "byteLength": 67108864, + "sha256": "19245767be3034959a7ae1a3a53a91b596384d83e10c8c0c85a263b900b8c288" + }, + { + "path": "weights/00044.bin", + "byteLength": 67108864, + "sha256": "e6ec40f20593ae375aa35648be661954f3293a17762df94cc0b02042eaa3a68f" + }, + { + "path": "weights/00045.bin", + "byteLength": 67108864, + "sha256": "27ac6830453866b68c0e35913389f38a3e042705a80edddd43a83664f43cab9a" + }, + { + "path": "weights/00046.bin", + "byteLength": 67108864, + "sha256": "9695b695ba98b4cf3cb772662dee4727997e62dea94c54d71054125e9fcc0e77" + }, + { + "path": "weights/00047.bin", + "byteLength": 67108864, + "sha256": "40ace035e27598cf0c6959de484630d60877259f34a05376db274f3807fcd0ff" + }, + { + "path": "weights/00048.bin", + "byteLength": 67108864, + "sha256": "6435b1511555e6d084f5606a88a552cafb0ec6a18969909c5b03b304c702b758" + }, + { + "path": "weights/00049.bin", + "byteLength": 67108864, + "sha256": "cf1d6531963ff56a913326864ab9bdb05c85b20e0fc6e3648803a49ad4fceb92" + }, + { + "path": "weights/00050.bin", + "byteLength": 67108864, + "sha256": "487f124693c79edf4dec4a891e5f27fa253da1b0d8b91392e2533de72556541b" + }, + { + "path": "weights/00051.bin", + "byteLength": 67108864, + "sha256": "7f57abd1b78a9826709fd4113456316648aedc474c443a740d3feb4f33b2ab6c" + }, + { + "path": "weights/00052.bin", + "byteLength": 67108864, + "sha256": "e385fdc62f5de26a18c9b076c9828d20201e096e588f2f58ea1a19f100e9ef16" + }, + { + "path": "weights/00053.bin", + "byteLength": 67108864, + "sha256": "b2d22b24a6c3c0e6b680ed53ff3519bbbcf7d62a5720a2f907ca252e6aff6999" + }, + { + "path": "weights/00054.bin", + "byteLength": 67108864, + "sha256": "5a58b0f07d003d6cbf2867e8a28ce47be85d856a7617e34df3a84ad424120748" + }, + { + "path": "weights/00055.bin", + "byteLength": 67108864, + "sha256": "4e332e1395a7713359d9173a671c6e5e0d5dfb4678410a0653e354e8bb55df55" + }, + { + "path": "weights/00056.bin", + "byteLength": 6651264, + "sha256": "69c511d71323fd74a057001c446adc7f4a75577735b6c3b4bed59acdd276de23" + }, + { + "path": "tokenizer/tokenizer.json", + "byteLength": 12807982, + "sha256": "5f9e4d4901a92b997e463c1f46055088b6cca5ca61a6522d1b9f64c4bb81cb42" + }, + { + "path": "tokenizer/tokenizer_config.json", + "byteLength": 16709, + "sha256": "49e2b6e395f959f077f1e992b338919c0d4a9732fc6e613995e06557f843500c" + }, + { + "path": "tokenizer/chat_template.jinja", + "byteLength": 7755, + "sha256": "273d8e0e683b885071fb17e08d71e5f2a5ddfb5309756181681de4f5a1822d80" + }, + { + "path": "source/config.json", + "byteLength": 2908, + "sha256": "ed1c1723241f23f7f4e23430759cbd7dcfb4103cbdfe052bfe7626b57c2615b4" + }, + { + "path": "source/LICENSE", + "byteLength": 11544, + "sha256": "bbedc3fda3305820b977265f01b8619d87570a6739de3a5582c3464840f1e57a" + }, + { + "path": "source/preprocessor_config.json", + "byteLength": 390, + "sha256": "27225450ac9c6529872ee1924fcb0962ff5634834f817040f444118116f4e516" + }, + { + "path": "vision/256x384/manifest.json", + "byteLength": 12030, + "sha256": "891dbfe603f847c3559692b57febf5e4346b496252f78844677af67bddab33e0" + }, + { + "path": "vision/416x608/manifest.json", + "byteLength": 12030, + "sha256": "08fa008f102eb99f26ed5b105d83ddfdf7365a12a8db97c428b23986fce7ac52" + }, + { + "path": "vision/384x256/manifest.json", + "byteLength": 12030, + "sha256": "562890855a89061938fa14ffbaca470c2e01a59e5aedbc8f44c46fa31cca1c0a" + }, + { + "path": "entrypoints/prefill-mm-16.json", + "byteLength": 8186855, + "sha256": "21455740cb6c02d9a716992aee06185799623c406b95ea19a784c55c4ac01c54" + }, + { + "path": "entrypoints/prefill-mm-4.json", + "byteLength": 8183038, + "sha256": "938994bd00575b13310514e67b66465dbe3d24afbcefae61a00c89d68c10193e" + }, + { + "path": "entrypoints/prefill-mm-64.json", + "byteLength": 8188485, + "sha256": "75ced0c36f3838faacb0cc5758be3b0995dcc6377590d4ae53cd9149bc2bc52f" + }, + { + "path": "graph.json", + "byteLength": 10685246, + "sha256": "08ab0817bf450a7aa9e46b398e3acefdb387da69f292ac7c44f4577e3cb01bba" + }, + { + "path": "kernels/0112d93bb1aa347d8887ce1b95610a1a21fc8450ff8f59bcd37747fa6bf6fa52.wgsl", + "byteLength": 373, + "sha256": "0112d93bb1aa347d8887ce1b95610a1a21fc8450ff8f59bcd37747fa6bf6fa52" + }, + { + "path": "kernels/0151a813c4a92adeb44f0e3b6108c77b29804118b588c9025805f724fce839b4.wgsl", + "byteLength": 849, + "sha256": "0151a813c4a92adeb44f0e3b6108c77b29804118b588c9025805f724fce839b4" + }, + { + "path": "kernels/0169dcad370f1e983364b323dfec0c2afbd1857634efb0200e22ccc6b558d57e.wgsl", + "byteLength": 473, + "sha256": "0169dcad370f1e983364b323dfec0c2afbd1857634efb0200e22ccc6b558d57e" + }, + { + "path": "kernels/0337d8a473b6e485bd383533df7d373dbbfe7a5f3a982424004560b7213fbaa3.wgsl", + "byteLength": 499, + "sha256": "0337d8a473b6e485bd383533df7d373dbbfe7a5f3a982424004560b7213fbaa3" + }, + { + "path": "kernels/04f26661cc9ac73bb7f39f66b76c4be31ee8774e094eeb41ed7d677e1b1d3fa9.wgsl", + "byteLength": 368, + "sha256": "04f26661cc9ac73bb7f39f66b76c4be31ee8774e094eeb41ed7d677e1b1d3fa9" + }, + { + "path": "kernels/04f5cb70141e507d48bd44a76bfdf264a404a706e8a012502dce5a22ee75bab0.wgsl", + "byteLength": 371, + "sha256": "04f5cb70141e507d48bd44a76bfdf264a404a706e8a012502dce5a22ee75bab0" + }, + { + "path": "kernels/0554a443ecf6ead32fd2d58178b9ce3c592c89a09b3f63fa509ee947323bb497.wgsl", + "byteLength": 399, + "sha256": "0554a443ecf6ead32fd2d58178b9ce3c592c89a09b3f63fa509ee947323bb497" + }, + { + "path": "kernels/06eecde176beab9ff488ad533f2f4513e09bc49a30c4358f9648076f619f9992.wgsl", + "byteLength": 394, + "sha256": "06eecde176beab9ff488ad533f2f4513e09bc49a30c4358f9648076f619f9992" + }, + { + "path": "kernels/0725908abf78c022f86deb338a06779f6f1346ebfe54ff5a43ee6b9eeb93c972.wgsl", + "byteLength": 286, + "sha256": "0725908abf78c022f86deb338a06779f6f1346ebfe54ff5a43ee6b9eeb93c972" + }, + { + "path": "kernels/07cfabe2e2c2feff22a06c8296600e5ca21efb7444419f0a05e5ff6f48e0292d.wgsl", + "byteLength": 307, + "sha256": "07cfabe2e2c2feff22a06c8296600e5ca21efb7444419f0a05e5ff6f48e0292d" + }, + { + "path": "kernels/0835fa80eaadb7c0e6d677e1fc622ad5dcedabb431e5d312f3b7aeb2252a7c7c.wgsl", + "byteLength": 231, + "sha256": "0835fa80eaadb7c0e6d677e1fc622ad5dcedabb431e5d312f3b7aeb2252a7c7c" + }, + { + "path": "kernels/08390b1553d11820d1d96b10add657b92acb8d26cd9f11acab8f16777ecfc10a.wgsl", + "byteLength": 758, + "sha256": "08390b1553d11820d1d96b10add657b92acb8d26cd9f11acab8f16777ecfc10a" + }, + { + "path": "kernels/087fe4a47ab2de93b999a0e519015c12450bf97fb81683d317c894b2bd555169.wgsl", + "byteLength": 595, + "sha256": "087fe4a47ab2de93b999a0e519015c12450bf97fb81683d317c894b2bd555169" + }, + { + "path": "kernels/09ea34c2533b929bd309e2bcbcf6d27fa02c731d82276ba6425db85961ea121b.wgsl", + "byteLength": 317, + "sha256": "09ea34c2533b929bd309e2bcbcf6d27fa02c731d82276ba6425db85961ea121b" + }, + { + "path": "kernels/0b8815b1efe176d55ab08530c0a9e1913cf6c9ef3e773c574843573d237cf196.wgsl", + "byteLength": 309, + "sha256": "0b8815b1efe176d55ab08530c0a9e1913cf6c9ef3e773c574843573d237cf196" + }, + { + "path": "kernels/0bbd6a5e356c1205a61dc3580a3ff68d88b98a952a5692d66b56ded171d9fc56.wgsl", + "byteLength": 311, + "sha256": "0bbd6a5e356c1205a61dc3580a3ff68d88b98a952a5692d66b56ded171d9fc56" + }, + { + "path": "kernels/0d1edb63bf4dc212d55f8a4c79a50e04c0d822bd9f6e193003e2071ba0d57d69.wgsl", + "byteLength": 411, + "sha256": "0d1edb63bf4dc212d55f8a4c79a50e04c0d822bd9f6e193003e2071ba0d57d69" + }, + { + "path": "kernels/0d3892883d1532d173a7dbe85d9ab1daa87f0d9b4923a535b8d2003f24f9500c.wgsl", + "byteLength": 497, + "sha256": "0d3892883d1532d173a7dbe85d9ab1daa87f0d9b4923a535b8d2003f24f9500c" + }, + { + "path": "kernels/0e5468583a1ba929483119c50d4be42a58aed4dde1e15cc231908ed7543d0b71.wgsl", + "byteLength": 288, + "sha256": "0e5468583a1ba929483119c50d4be42a58aed4dde1e15cc231908ed7543d0b71" + }, + { + "path": "kernels/0e5e44ae1adc5e11bf41b230e4ab1f93b5c0bd79b4f4e28e205d02cae01cebd0.wgsl", + "byteLength": 663, + "sha256": "0e5e44ae1adc5e11bf41b230e4ab1f93b5c0bd79b4f4e28e205d02cae01cebd0" + }, + { + "path": "kernels/0e9b6ee5f92769faaee5c746d1a3b936cdb7731f3f8e70cbf0a3fe96f6c8d921.wgsl", + "byteLength": 397, + "sha256": "0e9b6ee5f92769faaee5c746d1a3b936cdb7731f3f8e70cbf0a3fe96f6c8d921" + }, + { + "path": "kernels/0f466ed2664d77386f48afd19d8ab2734312bfd4f5f4d5b063d801a0b0a97cd9.wgsl", + "byteLength": 396, + "sha256": "0f466ed2664d77386f48afd19d8ab2734312bfd4f5f4d5b063d801a0b0a97cd9" + }, + { + "path": "kernels/0f943f386d2f37a8e56b4285b26e1c093c2f2fa2a5ce81cc43c44cc9bb0137f5.wgsl", + "byteLength": 386, + "sha256": "0f943f386d2f37a8e56b4285b26e1c093c2f2fa2a5ce81cc43c44cc9bb0137f5" + }, + { + "path": "kernels/0fa78dd7a41f9816e0a051fa3076f0ee2d258ff73d4e66a1360a492cb2e924d6.wgsl", + "byteLength": 667, + "sha256": "0fa78dd7a41f9816e0a051fa3076f0ee2d258ff73d4e66a1360a492cb2e924d6" + }, + { + "path": "kernels/0fbc9484ef8ca703ced4ffd123f1ae733c44556b6cb160ee803b820ff5ec867d.wgsl", + "byteLength": 411, + "sha256": "0fbc9484ef8ca703ced4ffd123f1ae733c44556b6cb160ee803b820ff5ec867d" + }, + { + "path": "kernels/0fefc91d22c22107d86016f4e3cfc985d4fdcd2ce497d95a01a3c8690ad192fc.wgsl", + "byteLength": 1375, + "sha256": "0fefc91d22c22107d86016f4e3cfc985d4fdcd2ce497d95a01a3c8690ad192fc" + }, + { + "path": "kernels/100cfb630383828acba947e4a98fa4a47e8173e7ca32a62325780b90606093bf.wgsl", + "byteLength": 1025, + "sha256": "100cfb630383828acba947e4a98fa4a47e8173e7ca32a62325780b90606093bf" + }, + { + "path": "kernels/102e16522e6813b67da08088e5c9aabd74f38b88966b812c0bd00cb90da50780.wgsl", + "byteLength": 1388, + "sha256": "102e16522e6813b67da08088e5c9aabd74f38b88966b812c0bd00cb90da50780" + }, + { + "path": "kernels/11a92e9cba6bfc381c98c5127db137639d6c87f1cb220459880ead039dc81256.wgsl", + "byteLength": 363, + "sha256": "11a92e9cba6bfc381c98c5127db137639d6c87f1cb220459880ead039dc81256" + }, + { + "path": "kernels/121285fc94b4a9f873c60a1d6e0de9d764286607718405fd18288e7ff419c483.wgsl", + "byteLength": 381, + "sha256": "121285fc94b4a9f873c60a1d6e0de9d764286607718405fd18288e7ff419c483" + }, + { + "path": "kernels/12155d86d776e73f23d3bff0268c60dccb54c209ee9ee3a8cfd227ec4aa5b6df.wgsl", + "byteLength": 290, + "sha256": "12155d86d776e73f23d3bff0268c60dccb54c209ee9ee3a8cfd227ec4aa5b6df" + }, + { + "path": "kernels/1255847146b31732939e573cdb26c483358c1ce07f987bd8c3d3d69ae8c7e141.wgsl", + "byteLength": 380, + "sha256": "1255847146b31732939e573cdb26c483358c1ce07f987bd8c3d3d69ae8c7e141" + }, + { + "path": "kernels/13237b557466d2fef5bfbc74e7ac77219b9821a53bc0843dbb5d14db8b04d414.wgsl", + "byteLength": 308, + "sha256": "13237b557466d2fef5bfbc74e7ac77219b9821a53bc0843dbb5d14db8b04d414" + }, + { + "path": "kernels/1326034f3abab37629cd88f869d1b0bafcde724f85c07904b54feaaf71d89c62.wgsl", + "byteLength": 2298, + "sha256": "1326034f3abab37629cd88f869d1b0bafcde724f85c07904b54feaaf71d89c62" + }, + { + "path": "kernels/13dc73935b9b3b978232043e13babee3877bd53ca572be440de0590dacce8b17.wgsl", + "byteLength": 367, + "sha256": "13dc73935b9b3b978232043e13babee3877bd53ca572be440de0590dacce8b17" + }, + { + "path": "kernels/1545025e0a625ccc73b42ae112c6f9d78a1504c10b759979ae2247984f25f056.wgsl", + "byteLength": 551, + "sha256": "1545025e0a625ccc73b42ae112c6f9d78a1504c10b759979ae2247984f25f056" + }, + { + "path": "kernels/17b972f97cc2659712ca7c658cd186e851a248115f83a893a8a11f34b441367e.wgsl", + "byteLength": 662, + "sha256": "17b972f97cc2659712ca7c658cd186e851a248115f83a893a8a11f34b441367e" + }, + { + "path": "kernels/17ec6bdaf98edf7657b74a25036c2bec806ecbb4280f33fff6afd2e0de5ed377.wgsl", + "byteLength": 317, + "sha256": "17ec6bdaf98edf7657b74a25036c2bec806ecbb4280f33fff6afd2e0de5ed377" + }, + { + "path": "kernels/18a0b02a12ebf73203283d267342582d54ba411aeee9cbe21ad89ae890e4cfea.wgsl", + "byteLength": 396, + "sha256": "18a0b02a12ebf73203283d267342582d54ba411aeee9cbe21ad89ae890e4cfea" + }, + { + "path": "kernels/18b1cef2bae996f56664d9215180e3bfc77b4e514db52fdf9b6c58be51b53edb.wgsl", + "byteLength": 369, + "sha256": "18b1cef2bae996f56664d9215180e3bfc77b4e514db52fdf9b6c58be51b53edb" + }, + { + "path": "kernels/19311450ce50f80ef4c828a7ebd042a5012ed7a39e4310abec1f8b400c4a8821.wgsl", + "byteLength": 1381, + "sha256": "19311450ce50f80ef4c828a7ebd042a5012ed7a39e4310abec1f8b400c4a8821" + }, + { + "path": "kernels/19564c145248f065669be23f5daeeda96e025ee4389bef80983001e83fddb31d.wgsl", + "byteLength": 379, + "sha256": "19564c145248f065669be23f5daeeda96e025ee4389bef80983001e83fddb31d" + }, + { + "path": "kernels/1a73b6fceda28f40bba4ae27a986ffa39842db94fa5903ea5bf689a7e854d4f3.wgsl", + "byteLength": 499, + "sha256": "1a73b6fceda28f40bba4ae27a986ffa39842db94fa5903ea5bf689a7e854d4f3" + }, + { + "path": "kernels/1ad205080cae29142a3ad87343a0cf3ac4945455398293946110d421ce6d515e.wgsl", + "byteLength": 371, + "sha256": "1ad205080cae29142a3ad87343a0cf3ac4945455398293946110d421ce6d515e" + }, + { + "path": "kernels/1b9f4e330debc7235cfaf8f51d00fec575e09aa6116a45ea001e10ff5f09eb8c.wgsl", + "byteLength": 581, + "sha256": "1b9f4e330debc7235cfaf8f51d00fec575e09aa6116a45ea001e10ff5f09eb8c" + }, + { + "path": "kernels/1d0cbb068fe17123e646934bfa1259f19e5db04e45d72a157d3ea4fa48c81aa0.wgsl", + "byteLength": 406, + "sha256": "1d0cbb068fe17123e646934bfa1259f19e5db04e45d72a157d3ea4fa48c81aa0" + }, + { + "path": "kernels/1ea73621b5acbcc2acfe99cb1cefae97247ee2c199f0b0a8574815ea776ca3bb.wgsl", + "byteLength": 758, + "sha256": "1ea73621b5acbcc2acfe99cb1cefae97247ee2c199f0b0a8574815ea776ca3bb" + }, + { + "path": "kernels/20a4dee9cf34730b4ad77bde7921c189235c4da7d54a3dfb0d589f4d5275c755.wgsl", + "byteLength": 386, + "sha256": "20a4dee9cf34730b4ad77bde7921c189235c4da7d54a3dfb0d589f4d5275c755" + }, + { + "path": "kernels/20fb9e0d0bd2aab34b7f69eac259898e68cac4a0d6b0bda5e95c9126a660336d.wgsl", + "byteLength": 395, + "sha256": "20fb9e0d0bd2aab34b7f69eac259898e68cac4a0d6b0bda5e95c9126a660336d" + }, + { + "path": "kernels/21041daa70434b3e73944fa280cd85a0ef190cf5e3e25fb0a642c486bb37d4de.wgsl", + "byteLength": 308, + "sha256": "21041daa70434b3e73944fa280cd85a0ef190cf5e3e25fb0a642c486bb37d4de" + }, + { + "path": "kernels/2182574f59b7d9e38d74b30540c5781827e7da2de1ba6b00327af0b4cb42379d.wgsl", + "byteLength": 410, + "sha256": "2182574f59b7d9e38d74b30540c5781827e7da2de1ba6b00327af0b4cb42379d" + }, + { + "path": "kernels/222a2645e3e02d0a4063a63ca1b6fa4c89faee6b76905b20de4dd54ab3077ea3.wgsl", + "byteLength": 285, + "sha256": "222a2645e3e02d0a4063a63ca1b6fa4c89faee6b76905b20de4dd54ab3077ea3" + }, + { + "path": "kernels/228e9c354122040cd7c70f0bcd9445c92011bf85343add619aeb51846c885636.wgsl", + "byteLength": 286, + "sha256": "228e9c354122040cd7c70f0bcd9445c92011bf85343add619aeb51846c885636" + }, + { + "path": "kernels/234987ec68497956ea7aef8e3f44c8a73dbe4c1519165d123946bedbb4d18e26.wgsl", + "byteLength": 380, + "sha256": "234987ec68497956ea7aef8e3f44c8a73dbe4c1519165d123946bedbb4d18e26" + }, + { + "path": "kernels/237458dff084b2aa9ccba5578da3b2a0b062951575364d1464250baca3fdac5a.wgsl", + "byteLength": 310, + "sha256": "237458dff084b2aa9ccba5578da3b2a0b062951575364d1464250baca3fdac5a" + }, + { + "path": "kernels/242b7d51c19c9857a096c2ae1f7b72ebd410100a1542c51390950adbb8aed35c.wgsl", + "byteLength": 660, + "sha256": "242b7d51c19c9857a096c2ae1f7b72ebd410100a1542c51390950adbb8aed35c" + }, + { + "path": "kernels/246ea07912fcd8a9073926e863141111eb4091b52cc980a6eef148beed122fc4.wgsl", + "byteLength": 847, + "sha256": "246ea07912fcd8a9073926e863141111eb4091b52cc980a6eef148beed122fc4" + }, + { + "path": "kernels/2505a613f10a5ed1c70a3f80a16dd566da65caa2d7d85083e23f85a30844d63e.wgsl", + "byteLength": 417, + "sha256": "2505a613f10a5ed1c70a3f80a16dd566da65caa2d7d85083e23f85a30844d63e" + }, + { + "path": "kernels/2622c3df557e0d2b8c61c86cb748cfcf7970ebce8750a37ef611b8cabdd152d6.wgsl", + "byteLength": 428, + "sha256": "2622c3df557e0d2b8c61c86cb748cfcf7970ebce8750a37ef611b8cabdd152d6" + }, + { + "path": "kernels/262399e4b2661342c29fddf17556e93608f7aead68939859c29fcc594f455f69.wgsl", + "byteLength": 1378, + "sha256": "262399e4b2661342c29fddf17556e93608f7aead68939859c29fcc594f455f69" + }, + { + "path": "kernels/26cf6eb3b486d1652247ff130b05ed0e8c8560028eeba59acfc075b976bfdfce.wgsl", + "byteLength": 549, + "sha256": "26cf6eb3b486d1652247ff130b05ed0e8c8560028eeba59acfc075b976bfdfce" + }, + { + "path": "kernels/2711a4a396071f4e99303d01d4854ccaa37a445f4b718ebd7b61cf1c37e56b48.wgsl", + "byteLength": 355, + "sha256": "2711a4a396071f4e99303d01d4854ccaa37a445f4b718ebd7b61cf1c37e56b48" + }, + { + "path": "kernels/2792ae5841828bd5af938c10096abe385e63bb3ec2a22e850f146739433c12bf.wgsl", + "byteLength": 396, + "sha256": "2792ae5841828bd5af938c10096abe385e63bb3ec2a22e850f146739433c12bf" + }, + { + "path": "kernels/28119aa01122c42bd26ceb37129fe0c95b2a9192163f6dabd90fe058b1e14c54.wgsl", + "byteLength": 311, + "sha256": "28119aa01122c42bd26ceb37129fe0c95b2a9192163f6dabd90fe058b1e14c54" + }, + { + "path": "kernels/2927b33e105f6ccb9c4352ebdf028ea856d0f47c23a7f6cb140d5acb45356c35.wgsl", + "byteLength": 667, + "sha256": "2927b33e105f6ccb9c4352ebdf028ea856d0f47c23a7f6cb140d5acb45356c35" + }, + { + "path": "kernels/2af7517eb26022ada8f8870fd9e1e1ef3da66b9c466336ee18d5295957820b27.wgsl", + "byteLength": 387, + "sha256": "2af7517eb26022ada8f8870fd9e1e1ef3da66b9c466336ee18d5295957820b27" + }, + { + "path": "kernels/2b02ece9784fc350cef18e08c962031f74dbc27c7d1cad3a13dda1cebb84b403.wgsl", + "byteLength": 419, + "sha256": "2b02ece9784fc350cef18e08c962031f74dbc27c7d1cad3a13dda1cebb84b403" + }, + { + "path": "kernels/2b9e4b05ef5623d721dbe56b5812e551efcc6fd833d81064320e86fe94d8c670.wgsl", + "byteLength": 301, + "sha256": "2b9e4b05ef5623d721dbe56b5812e551efcc6fd833d81064320e86fe94d8c670" + }, + { + "path": "kernels/2bdeb3590b1ba05cf6e9c7e8245f8aa552a12dae84f9578c603c9cee081a82d4.wgsl", + "byteLength": 847, + "sha256": "2bdeb3590b1ba05cf6e9c7e8245f8aa552a12dae84f9578c603c9cee081a82d4" + }, + { + "path": "kernels/2c0cca2a7b0198c317e68992e64f3fe9bba80b67204c2695c20c372471c150d3.wgsl", + "byteLength": 473, + "sha256": "2c0cca2a7b0198c317e68992e64f3fe9bba80b67204c2695c20c372471c150d3" + }, + { + "path": "kernels/2c66dcac8fdd3caa9ff1e2441524070c21c24df9526bee44c49e765a8d4c8222.wgsl", + "byteLength": 410, + "sha256": "2c66dcac8fdd3caa9ff1e2441524070c21c24df9526bee44c49e765a8d4c8222" + }, + { + "path": "kernels/2c81f71954e9a2503ae8f3d84f319ffe366cdbb428ab45c22bddee91751c035c.wgsl", + "byteLength": 597, + "sha256": "2c81f71954e9a2503ae8f3d84f319ffe366cdbb428ab45c22bddee91751c035c" + }, + { + "path": "kernels/2cd4a533d32097a17641196f0cd315d170c587bc2b1c62b42b79d566d6fbf140.wgsl", + "byteLength": 386, + "sha256": "2cd4a533d32097a17641196f0cd315d170c587bc2b1c62b42b79d566d6fbf140" + }, + { + "path": "kernels/2dd29b61b039fcdd7fbc3c94f629b24b6f81aa5b9923098837597359b295e40d.wgsl", + "byteLength": 396, + "sha256": "2dd29b61b039fcdd7fbc3c94f629b24b6f81aa5b9923098837597359b295e40d" + }, + { + "path": "kernels/2e1ce6ef01198780289fd4a35d8f86b5172595ed189cf931e8444091d49e8d3a.wgsl", + "byteLength": 297, + "sha256": "2e1ce6ef01198780289fd4a35d8f86b5172595ed189cf931e8444091d49e8d3a" + }, + { + "path": "kernels/2e6f807cdf7ba91d7f531d9fb37768171ca71dc6278a9863bdba4a3dbac34fb3.wgsl", + "byteLength": 429, + "sha256": "2e6f807cdf7ba91d7f531d9fb37768171ca71dc6278a9863bdba4a3dbac34fb3" + }, + { + "path": "kernels/2eeb54034621ff097879064a60fd4e0dd5d68201e48296ad234413a39579acc8.wgsl", + "byteLength": 409, + "sha256": "2eeb54034621ff097879064a60fd4e0dd5d68201e48296ad234413a39579acc8" + }, + { + "path": "kernels/3087f59456d6581e7cdad1a14086af53281e39d2041a6a93387ba6e1daf5f9cb.wgsl", + "byteLength": 421, + "sha256": "3087f59456d6581e7cdad1a14086af53281e39d2041a6a93387ba6e1daf5f9cb" + }, + { + "path": "kernels/309f1b67894a30dd3e88cd18af63ffc51e384b6891b5f34dd1a0588344188f6e.wgsl", + "byteLength": 662, + "sha256": "309f1b67894a30dd3e88cd18af63ffc51e384b6891b5f34dd1a0588344188f6e" + }, + { + "path": "kernels/32a5027cac5dd969d63fe5d5c88d7c87abb600c43ad1d70e1c56615ea781eff3.wgsl", + "byteLength": 422, + "sha256": "32a5027cac5dd969d63fe5d5c88d7c87abb600c43ad1d70e1c56615ea781eff3" + }, + { + "path": "kernels/32cb7d055e8ecf035e10d05724e64544393bd3916079992a3d8dce427bb14181.wgsl", + "byteLength": 468, + "sha256": "32cb7d055e8ecf035e10d05724e64544393bd3916079992a3d8dce427bb14181" + }, + { + "path": "kernels/33e8ec04c66adb4988f562f0f9d3e92d29dfda91a56d0ed62be598c7c737f5ba.wgsl", + "byteLength": 411, + "sha256": "33e8ec04c66adb4988f562f0f9d3e92d29dfda91a56d0ed62be598c7c737f5ba" + }, + { + "path": "kernels/3560fe2bb07bf6fb92598b9f9c006029892f16dcb55b418973ed89b2b5086b1b.wgsl", + "byteLength": 394, + "sha256": "3560fe2bb07bf6fb92598b9f9c006029892f16dcb55b418973ed89b2b5086b1b" + }, + { + "path": "kernels/359d61f2ba174e54e2a0920fcf61e84e436fd3eaf7e2832e21fdb24094493667.wgsl", + "byteLength": 553, + "sha256": "359d61f2ba174e54e2a0920fcf61e84e436fd3eaf7e2832e21fdb24094493667" + }, + { + "path": "kernels/35b866864f2f36fad2f64440227cd6088083c96b0ef50192ce71ef159e1d1b11.wgsl", + "byteLength": 853, + "sha256": "35b866864f2f36fad2f64440227cd6088083c96b0ef50192ce71ef159e1d1b11" + }, + { + "path": "kernels/360a02a53c176d885331b307a6972d974ce5c8dad0d961b8521c6fd8b37d7ebe.wgsl", + "byteLength": 660, + "sha256": "360a02a53c176d885331b307a6972d974ce5c8dad0d961b8521c6fd8b37d7ebe" + }, + { + "path": "kernels/3622ffa2072335a35d6c9db5d284ed92b3fb5ed304acc2c606408063e7e21dcd.wgsl", + "byteLength": 415, + "sha256": "3622ffa2072335a35d6c9db5d284ed92b3fb5ed304acc2c606408063e7e21dcd" + }, + { + "path": "kernels/36c55d910d6fdaf8d3a2bba5a559bf7dcf54364986a7f2c0610b523600667d91.wgsl", + "byteLength": 1477, + "sha256": "36c55d910d6fdaf8d3a2bba5a559bf7dcf54364986a7f2c0610b523600667d91" + }, + { + "path": "kernels/3830061b0fc54c85d3d8a783b927c44484b1a3b68b52b8d8a1b980f7553deebf.wgsl", + "byteLength": 406, + "sha256": "3830061b0fc54c85d3d8a783b927c44484b1a3b68b52b8d8a1b980f7553deebf" + }, + { + "path": "kernels/38bd527686bcade9ed19a52788ccd711ca668e76854cc6274c480860fce88ff2.wgsl", + "byteLength": 382, + "sha256": "38bd527686bcade9ed19a52788ccd711ca668e76854cc6274c480860fce88ff2" + }, + { + "path": "kernels/39646bdfafd1ab0cb874474e3f1e9d79b57f10582a1804bc1d3762a492fec851.wgsl", + "byteLength": 413, + "sha256": "39646bdfafd1ab0cb874474e3f1e9d79b57f10582a1804bc1d3762a492fec851" + }, + { + "path": "kernels/39e41393f5850cc4f0b2e8172a3c53c8c7fb874ceb4df2c6f13f9af6128ad7fc.wgsl", + "byteLength": 411, + "sha256": "39e41393f5850cc4f0b2e8172a3c53c8c7fb874ceb4df2c6f13f9af6128ad7fc" + }, + { + "path": "kernels/3a76085983a5330bf07a4166ea4975700403f9d8035a8ef450f7f18b9cf47c66.wgsl", + "byteLength": 417, + "sha256": "3a76085983a5330bf07a4166ea4975700403f9d8035a8ef450f7f18b9cf47c66" + }, + { + "path": "kernels/3b2066052a48ffaf36270fc0f07d7725e7146f7d0cabef87ecc8507eda259a1d.wgsl", + "byteLength": 377, + "sha256": "3b2066052a48ffaf36270fc0f07d7725e7146f7d0cabef87ecc8507eda259a1d" + }, + { + "path": "kernels/3b2b13d75a6ce00e35c674883bbf1969555c8fc9e088e7d2003a5ea57b4552ff.wgsl", + "byteLength": 1478, + "sha256": "3b2b13d75a6ce00e35c674883bbf1969555c8fc9e088e7d2003a5ea57b4552ff" + }, + { + "path": "kernels/3b8210d9acf57a3c1cca9e926547520d5994967f27ce92897a15b14137f7da66.wgsl", + "byteLength": 373, + "sha256": "3b8210d9acf57a3c1cca9e926547520d5994967f27ce92897a15b14137f7da66" + }, + { + "path": "kernels/3bb850bda95bf77706a2839616a401b773f9de0428d1b427e61fb04e2c35fe74.wgsl", + "byteLength": 493, + "sha256": "3bb850bda95bf77706a2839616a401b773f9de0428d1b427e61fb04e2c35fe74" + }, + { + "path": "kernels/3d4359c4f1d0d65e6b6049b73a4e3f5fb67573fb80e29c9321f3671f40786f65.wgsl", + "byteLength": 1385, + "sha256": "3d4359c4f1d0d65e6b6049b73a4e3f5fb67573fb80e29c9321f3671f40786f65" + }, + { + "path": "kernels/3d5b97cfaf8dd0e680b6a9c84e7eca497f9f6e49817d20f1a72dddd7a3303f73.wgsl", + "byteLength": 417, + "sha256": "3d5b97cfaf8dd0e680b6a9c84e7eca497f9f6e49817d20f1a72dddd7a3303f73" + }, + { + "path": "kernels/3daeb9cba5c07ed47ac55e1c2565aa82f7d8e8409037707e7339d1d96d122144.wgsl", + "byteLength": 553, + "sha256": "3daeb9cba5c07ed47ac55e1c2565aa82f7d8e8409037707e7339d1d96d122144" + }, + { + "path": "kernels/3e34409407100d4858c4c109cf62f3eaf2f4c6081166b0ec8679105e6dfbe7fe.wgsl", + "byteLength": 309, + "sha256": "3e34409407100d4858c4c109cf62f3eaf2f4c6081166b0ec8679105e6dfbe7fe" + }, + { + "path": "kernels/3f89d19bd6791657fa702ad00a0517b5f292dbf7d0c196bd5b21c949476d23fd.wgsl", + "byteLength": 497, + "sha256": "3f89d19bd6791657fa702ad00a0517b5f292dbf7d0c196bd5b21c949476d23fd" + }, + { + "path": "kernels/3fa1efae6d90015ba69cb40cef009f49ad7f7a960018fb92a962707deff4f09e.wgsl", + "byteLength": 286, + "sha256": "3fa1efae6d90015ba69cb40cef009f49ad7f7a960018fb92a962707deff4f09e" + }, + { + "path": "kernels/3fea2ac7546eb13332dd11cb7001141e5e06137f7b0b40b5bcf3eaae43278b6e.wgsl", + "byteLength": 1029, + "sha256": "3fea2ac7546eb13332dd11cb7001141e5e06137f7b0b40b5bcf3eaae43278b6e" + }, + { + "path": "kernels/40f115c8647a238bfb3ccb0bb8446bccdc94a0dfadc89111c4920efb2259f41d.wgsl", + "byteLength": 410, + "sha256": "40f115c8647a238bfb3ccb0bb8446bccdc94a0dfadc89111c4920efb2259f41d" + }, + { + "path": "kernels/416348e2f9aab462c4ea190374014f09c7fd3114626ee3f48fb39a096fceab7a.wgsl", + "byteLength": 652, + "sha256": "416348e2f9aab462c4ea190374014f09c7fd3114626ee3f48fb39a096fceab7a" + }, + { + "path": "kernels/429a69a1118b6732c4f0cd10f20d101828b2d0da3ac4b58cb6379ae985432221.wgsl", + "byteLength": 605, + "sha256": "429a69a1118b6732c4f0cd10f20d101828b2d0da3ac4b58cb6379ae985432221" + }, + { + "path": "kernels/42c5af4838daf75fff9d4bb9a5df409511c1d6daed617d05eaf033a977503eac.wgsl", + "byteLength": 548, + "sha256": "42c5af4838daf75fff9d4bb9a5df409511c1d6daed617d05eaf033a977503eac" + }, + { + "path": "kernels/431cc9474b62045f7fbd61f4bac639636753584f37b063a6213820c11612fa3d.wgsl", + "byteLength": 1385, + "sha256": "431cc9474b62045f7fbd61f4bac639636753584f37b063a6213820c11612fa3d" + }, + { + "path": "kernels/43202a5f42d7ade5add5ebd7fa104b08e012c42739fe21cdb9480813afbb12f0.wgsl", + "byteLength": 1381, + "sha256": "43202a5f42d7ade5add5ebd7fa104b08e012c42739fe21cdb9480813afbb12f0" + }, + { + "path": "kernels/4365c6a2818dc6f2b29aa9a1994d3ff2a44af72e3e9276e92e927705e2bbea3e.wgsl", + "byteLength": 663, + "sha256": "4365c6a2818dc6f2b29aa9a1994d3ff2a44af72e3e9276e92e927705e2bbea3e" + }, + { + "path": "kernels/437da2f2f6d8aa65301222936ae6a18a2357c28cd479592e8141f88a97972da0.wgsl", + "byteLength": 1385, + "sha256": "437da2f2f6d8aa65301222936ae6a18a2357c28cd479592e8141f88a97972da0" + }, + { + "path": "kernels/4406ab1e6e4b9eeb91ace297320aa05a55cc481e02894a4a74b655b4070ade36.wgsl", + "byteLength": 417, + "sha256": "4406ab1e6e4b9eeb91ace297320aa05a55cc481e02894a4a74b655b4070ade36" + }, + { + "path": "kernels/4540d87eaec90c9eb42badfe0abfa70252f26b6e7de4dd31ee6903fe50e96bd1.wgsl", + "byteLength": 377, + "sha256": "4540d87eaec90c9eb42badfe0abfa70252f26b6e7de4dd31ee6903fe50e96bd1" + }, + { + "path": "kernels/45a1fd3ed514f208718651026bf2ee30dda66b02cdd950dc71e88eb6bdac0b10.wgsl", + "byteLength": 365, + "sha256": "45a1fd3ed514f208718651026bf2ee30dda66b02cdd950dc71e88eb6bdac0b10" + }, + { + "path": "kernels/466959b3cf0d274924151bdd80808e8451f9d8c2aac1455a44f26fa6d8b44fd0.wgsl", + "byteLength": 421, + "sha256": "466959b3cf0d274924151bdd80808e8451f9d8c2aac1455a44f26fa6d8b44fd0" + }, + { + "path": "kernels/48608b2b7bfbe0b65d9e2d82a94a76683315421acb1bf168b4baf14a3c139f76.wgsl", + "byteLength": 288, + "sha256": "48608b2b7bfbe0b65d9e2d82a94a76683315421acb1bf168b4baf14a3c139f76" + }, + { + "path": "kernels/48ec6f5173dcab06386f158b26dfbecfb5022f620fa9588a9cb947664b01037e.wgsl", + "byteLength": 598, + "sha256": "48ec6f5173dcab06386f158b26dfbecfb5022f620fa9588a9cb947664b01037e" + }, + { + "path": "kernels/4994822b8f6f72d6a49dbf791f601000cb548364e6fd285cfbbda90b6d5b08a1.wgsl", + "byteLength": 294, + "sha256": "4994822b8f6f72d6a49dbf791f601000cb548364e6fd285cfbbda90b6d5b08a1" + }, + { + "path": "kernels/4a4eb52af727f11dfbd69b294a8ab3eb5053bd5a2feea3cfdb35ab10bc1a4426.wgsl", + "byteLength": 307, + "sha256": "4a4eb52af727f11dfbd69b294a8ab3eb5053bd5a2feea3cfdb35ab10bc1a4426" + }, + { + "path": "kernels/4ac112c035a1a4a2f5deae66fac0969000c4666730c2d7b15cb15a157ea0e9b8.wgsl", + "byteLength": 395, + "sha256": "4ac112c035a1a4a2f5deae66fac0969000c4666730c2d7b15cb15a157ea0e9b8" + }, + { + "path": "kernels/4b098a370a6c993f2c974bd5afcc00f7e3686a600c458a060c7e7db3193789ba.wgsl", + "byteLength": 394, + "sha256": "4b098a370a6c993f2c974bd5afcc00f7e3686a600c458a060c7e7db3193789ba" + }, + { + "path": "kernels/4b1a7529fd5c57d5d4593d4af58a9a3b545c7d106d18251f6452f8a562b97952.wgsl", + "byteLength": 389, + "sha256": "4b1a7529fd5c57d5d4593d4af58a9a3b545c7d106d18251f6452f8a562b97952" + }, + { + "path": "kernels/4be963f9a4bb928764fd0efe02769e220b0e69defb2f8b22ab28e41a90d3fc14.wgsl", + "byteLength": 286, + "sha256": "4be963f9a4bb928764fd0efe02769e220b0e69defb2f8b22ab28e41a90d3fc14" + }, + { + "path": "kernels/4d05b472f8cb3485606d782585e1061973f1391d129fb765f9cb0f38c5fbb433.wgsl", + "byteLength": 2305, + "sha256": "4d05b472f8cb3485606d782585e1061973f1391d129fb765f9cb0f38c5fbb433" + }, + { + "path": "kernels/4d3e5f3a99a6c8c9dba5de30be4302f1e442f91d097437e825df97017e389a42.wgsl", + "byteLength": 367, + "sha256": "4d3e5f3a99a6c8c9dba5de30be4302f1e442f91d097437e825df97017e389a42" + }, + { + "path": "kernels/4d46494a55ac0b66fdddd47b9422106ac39e0c7d206f01004e13f93a010e1bf5.wgsl", + "byteLength": 549, + "sha256": "4d46494a55ac0b66fdddd47b9422106ac39e0c7d206f01004e13f93a010e1bf5" + }, + { + "path": "kernels/4d8ebffbbf193b18c13a5cc17d286bf5c92c5ba53ca022af78a9151ec1e5b9c0.wgsl", + "byteLength": 413, + "sha256": "4d8ebffbbf193b18c13a5cc17d286bf5c92c5ba53ca022af78a9151ec1e5b9c0" + }, + { + "path": "kernels/4e0fada2b6f07e141f088694ab936356f2c70b66fb98e95e537c2c9d7ffb518a.wgsl", + "byteLength": 1385, + "sha256": "4e0fada2b6f07e141f088694ab936356f2c70b66fb98e95e537c2c9d7ffb518a" + }, + { + "path": "kernels/4f27100b1e707c866f7cdd701f722bed2969be6e71245d4e4a14e1ef7ebe3fcf.wgsl", + "byteLength": 667, + "sha256": "4f27100b1e707c866f7cdd701f722bed2969be6e71245d4e4a14e1ef7ebe3fcf" + }, + { + "path": "kernels/4f2c0d08150d4b97d90c244db2d41baca81484c2630dbbd6d586f2d8a4b07b8b.wgsl", + "byteLength": 406, + "sha256": "4f2c0d08150d4b97d90c244db2d41baca81484c2630dbbd6d586f2d8a4b07b8b" + }, + { + "path": "kernels/4fa24e8f09b07271534341707a7a688af67c7deca1f114bfaeba20a2e066c9f1.wgsl", + "byteLength": 500, + "sha256": "4fa24e8f09b07271534341707a7a688af67c7deca1f114bfaeba20a2e066c9f1" + }, + { + "path": "kernels/4fad29e3e337840e25132f10b3e3d55225f727ae13525ff0b0bdf31e03f09d74.wgsl", + "byteLength": 305, + "sha256": "4fad29e3e337840e25132f10b3e3d55225f727ae13525ff0b0bdf31e03f09d74" + }, + { + "path": "kernels/50535e4c99d9fb4a272d8260a1415f6b38a7ad1025da64e145f230df697d9b73.wgsl", + "byteLength": 330, + "sha256": "50535e4c99d9fb4a272d8260a1415f6b38a7ad1025da64e145f230df697d9b73" + }, + { + "path": "kernels/51fd4d798491c6a80daff4c18b0495926b7f62269dfc3a78a327faa52ba2a759.wgsl", + "byteLength": 307, + "sha256": "51fd4d798491c6a80daff4c18b0495926b7f62269dfc3a78a327faa52ba2a759" + }, + { + "path": "kernels/52210a661e4d5241f53b3b1caf65456e1988ddd663ded8ead63ee7f7c7e3ff57.wgsl", + "byteLength": 402, + "sha256": "52210a661e4d5241f53b3b1caf65456e1988ddd663ded8ead63ee7f7c7e3ff57" + }, + { + "path": "kernels/5244c41c17f08956963dde4c3784e8e122ba0e3c0d76794c8b3673252f672f27.wgsl", + "byteLength": 1388, + "sha256": "5244c41c17f08956963dde4c3784e8e122ba0e3c0d76794c8b3673252f672f27" + }, + { + "path": "kernels/52d5f0189ff49849070362fea5585100e0c7a9eb6ff6722e3b545c113b965292.wgsl", + "byteLength": 1384, + "sha256": "52d5f0189ff49849070362fea5585100e0c7a9eb6ff6722e3b545c113b965292" + }, + { + "path": "kernels/53d6eb0b5e6d49bfd3bb9fd1b781e13317adf528e047da2416e95f5a3a13b1b4.wgsl", + "byteLength": 381, + "sha256": "53d6eb0b5e6d49bfd3bb9fd1b781e13317adf528e047da2416e95f5a3a13b1b4" + }, + { + "path": "kernels/53e3ac216f0ae3145d66c606c4000249a876dbab48b41877415d9592ee714d8f.wgsl", + "byteLength": 1379, + "sha256": "53e3ac216f0ae3145d66c606c4000249a876dbab48b41877415d9592ee714d8f" + }, + { + "path": "kernels/55b9c48ba429daf80bbae0b4737f895b475abdc9ddfdc88ab2f894f133ec2bf9.wgsl", + "byteLength": 326, + "sha256": "55b9c48ba429daf80bbae0b4737f895b475abdc9ddfdc88ab2f894f133ec2bf9" + }, + { + "path": "kernels/56167a7e8fb1c67fa72948a8baa71866d54cc775be83f8cfa75a947ac0f58b12.wgsl", + "byteLength": 288, + "sha256": "56167a7e8fb1c67fa72948a8baa71866d54cc775be83f8cfa75a947ac0f58b12" + }, + { + "path": "kernels/564b62d37d6845f8049f903d4ba35762c607937d8a9644bfe511fbc7bf90dacd.wgsl", + "byteLength": 847, + "sha256": "564b62d37d6845f8049f903d4ba35762c607937d8a9644bfe511fbc7bf90dacd" + }, + { + "path": "kernels/56ea85fd6d5f7cc9394d6aa0ee2fdeee921dc84957548088041c975ba925c6a0.wgsl", + "byteLength": 604, + "sha256": "56ea85fd6d5f7cc9394d6aa0ee2fdeee921dc84957548088041c975ba925c6a0" + }, + { + "path": "kernels/577120bb3cdd5d1fb64df75a3d9d9bfb7df9a47cbe10c3df4702cdedda8742f2.wgsl", + "byteLength": 665, + "sha256": "577120bb3cdd5d1fb64df75a3d9d9bfb7df9a47cbe10c3df4702cdedda8742f2" + }, + { + "path": "kernels/57dc406322bf3badd8490493ef924bd7e7e0afd542d2d6e409b4d8a3b4b784f7.wgsl", + "byteLength": 286, + "sha256": "57dc406322bf3badd8490493ef924bd7e7e0afd542d2d6e409b4d8a3b4b784f7" + }, + { + "path": "kernels/58077eb80a5fa253f535c97c82dc07edd48455a17cc52583aeee41c7d1bbd0b3.wgsl", + "byteLength": 405, + "sha256": "58077eb80a5fa253f535c97c82dc07edd48455a17cc52583aeee41c7d1bbd0b3" + }, + { + "path": "kernels/58a04f81024c554fa7384cf7989536e51ab65a353203039f95c9787453ee627c.wgsl", + "byteLength": 1388, + "sha256": "58a04f81024c554fa7384cf7989536e51ab65a353203039f95c9787453ee627c" + }, + { + "path": "kernels/59ea88d691b919af03bbb26f0253decfbc35d74f9661cdd3a08570ae85c313d2.wgsl", + "byteLength": 379, + "sha256": "59ea88d691b919af03bbb26f0253decfbc35d74f9661cdd3a08570ae85c313d2" + }, + { + "path": "kernels/5a3a2ba3e1cb848fbbeeafe66425eae65d9fd196646d15eef291188a8179e044.wgsl", + "byteLength": 849, + "sha256": "5a3a2ba3e1cb848fbbeeafe66425eae65d9fd196646d15eef291188a8179e044" + }, + { + "path": "kernels/5b490e5074446b3ca05ffdd5f79c18e32aa5c23339dd93c75956125f4caba51f.wgsl", + "byteLength": 851, + "sha256": "5b490e5074446b3ca05ffdd5f79c18e32aa5c23339dd93c75956125f4caba51f" + }, + { + "path": "kernels/5b657fa4e308a89ca0d0edb8cb2a485d6f048dcdbcffb9e2c3a50073be7ad3ff.wgsl", + "byteLength": 1475, + "sha256": "5b657fa4e308a89ca0d0edb8cb2a485d6f048dcdbcffb9e2c3a50073be7ad3ff" + }, + { + "path": "kernels/5c22e6f60217881c0351e38d19057626a6c2292771c1a83816995245777ac2fd.wgsl", + "byteLength": 397, + "sha256": "5c22e6f60217881c0351e38d19057626a6c2292771c1a83816995245777ac2fd" + }, + { + "path": "kernels/5c9a5ae6121b3b10611e09e5f1bc563b70191f2506a2afc0f32de823a9d2dac4.wgsl", + "byteLength": 554, + "sha256": "5c9a5ae6121b3b10611e09e5f1bc563b70191f2506a2afc0f32de823a9d2dac4" + }, + { + "path": "kernels/5cf28cf1e0aa6d5f0ce563a179880681416b707a70113119e68f1d62dc368c51.wgsl", + "byteLength": 556, + "sha256": "5cf28cf1e0aa6d5f0ce563a179880681416b707a70113119e68f1d62dc368c51" + }, + { + "path": "kernels/5eac5f92aa4d18895369b11adb99ac0d9639d8b615f7240cffe6f6be7046e54a.wgsl", + "byteLength": 845, + "sha256": "5eac5f92aa4d18895369b11adb99ac0d9639d8b615f7240cffe6f6be7046e54a" + }, + { + "path": "kernels/5f4403d78557e88e66d71eb5e53746cc07449a7c421b57eda4f093a09a68a99a.wgsl", + "byteLength": 290, + "sha256": "5f4403d78557e88e66d71eb5e53746cc07449a7c421b57eda4f093a09a68a99a" + }, + { + "path": "kernels/5f57b46016eccc3b50e3685e142b7deadce8f074f124e643e6e7015e2cc27357.wgsl", + "byteLength": 373, + "sha256": "5f57b46016eccc3b50e3685e142b7deadce8f074f124e643e6e7015e2cc27357" + }, + { + "path": "kernels/5f657afde3ab80a1fc4b6739c0b702bc5bd60e52630762e66b210fbb8b42b52a.wgsl", + "byteLength": 403, + "sha256": "5f657afde3ab80a1fc4b6739c0b702bc5bd60e52630762e66b210fbb8b42b52a" + }, + { + "path": "kernels/5f9d7a23bba38f692aefbf2617133c7884ddbe4ea6d985a89a59c1683dcfd6bf.wgsl", + "byteLength": 391, + "sha256": "5f9d7a23bba38f692aefbf2617133c7884ddbe4ea6d985a89a59c1683dcfd6bf" + }, + { + "path": "kernels/5fbfe4534ce5bfff645563250dd536998f537f4d690c4c2fc422723d5af8e3ec.wgsl", + "byteLength": 373, + "sha256": "5fbfe4534ce5bfff645563250dd536998f537f4d690c4c2fc422723d5af8e3ec" + }, + { + "path": "kernels/5fd6e068841f5c054392bef564909dbf086bae9e4030f3625d1143244a08cbbf.wgsl", + "byteLength": 495, + "sha256": "5fd6e068841f5c054392bef564909dbf086bae9e4030f3625d1143244a08cbbf" + }, + { + "path": "kernels/5ffab5e011b6e44aae54b4287fcbe68c4a20cee0779818a3178470f3b6d5ffd6.wgsl", + "byteLength": 663, + "sha256": "5ffab5e011b6e44aae54b4287fcbe68c4a20cee0779818a3178470f3b6d5ffd6" + }, + { + "path": "kernels/605f51996eef0769d3b456a83f7540262d1761589b55d1fd41fb2b4dd8fa249f.wgsl", + "byteLength": 373, + "sha256": "605f51996eef0769d3b456a83f7540262d1761589b55d1fd41fb2b4dd8fa249f" + }, + { + "path": "kernels/60a9a411c756055d21d8ec478436ba82e0fd522ccf1eb4488aef6b25769d96c5.wgsl", + "byteLength": 598, + "sha256": "60a9a411c756055d21d8ec478436ba82e0fd522ccf1eb4488aef6b25769d96c5" + }, + { + "path": "kernels/62241f9af7edde53e203819e23574a91664aff7282197113c8fee316f6c2af8f.wgsl", + "byteLength": 475, + "sha256": "62241f9af7edde53e203819e23574a91664aff7282197113c8fee316f6c2af8f" + }, + { + "path": "kernels/62708aacbfcd0063a897e3348ae69a00d4dd155fce6665b18c5176224b039e12.wgsl", + "byteLength": 664, + "sha256": "62708aacbfcd0063a897e3348ae69a00d4dd155fce6665b18c5176224b039e12" + }, + { + "path": "kernels/62f30a62c18ed78c9bf37bdc56529accbee2264b9eac931ba0b35a80bb917e7c.wgsl", + "byteLength": 372, + "sha256": "62f30a62c18ed78c9bf37bdc56529accbee2264b9eac931ba0b35a80bb917e7c" + }, + { + "path": "kernels/63396da046b345383e1c7b09aee551d08e4c3c45030ff5c8bb76bbc34bb2abc6.wgsl", + "byteLength": 401, + "sha256": "63396da046b345383e1c7b09aee551d08e4c3c45030ff5c8bb76bbc34bb2abc6" + }, + { + "path": "kernels/64f29e6a6e8772f8cfc7449941fd85f70caff7c7e20f316c39b394500e9a8ce1.wgsl", + "byteLength": 319, + "sha256": "64f29e6a6e8772f8cfc7449941fd85f70caff7c7e20f316c39b394500e9a8ce1" + }, + { + "path": "kernels/66910ed3098ead5efda545ccf86d718ce7bb894c0d16e6944cdaed2c0f2a8b9f.wgsl", + "byteLength": 470, + "sha256": "66910ed3098ead5efda545ccf86d718ce7bb894c0d16e6944cdaed2c0f2a8b9f" + }, + { + "path": "kernels/67816e11d408a6230572433502ace2f9a337285eb623360a1cec493e95add139.wgsl", + "byteLength": 395, + "sha256": "67816e11d408a6230572433502ace2f9a337285eb623360a1cec493e95add139" + }, + { + "path": "kernels/67978e951813ede8016ebf553fb8d3b4ce9e15dd184810544879559208d6b7e1.wgsl", + "byteLength": 322, + "sha256": "67978e951813ede8016ebf553fb8d3b4ce9e15dd184810544879559208d6b7e1" + }, + { + "path": "kernels/687a9faf59b35be173c2861749834333b53400d1dd22bf430cef04722237a309.wgsl", + "byteLength": 661, + "sha256": "687a9faf59b35be173c2861749834333b53400d1dd22bf430cef04722237a309" + }, + { + "path": "kernels/690d8dfb579e55be9c90fa8375f6e2ddde55256a6552a59d83e054f34b485ea0.wgsl", + "byteLength": 1475, + "sha256": "690d8dfb579e55be9c90fa8375f6e2ddde55256a6552a59d83e054f34b485ea0" + }, + { + "path": "kernels/691af757595593839af5e5e97ee656472f6e7c7406f57d1d9faae74816d9fc91.wgsl", + "byteLength": 503, + "sha256": "691af757595593839af5e5e97ee656472f6e7c7406f57d1d9faae74816d9fc91" + }, + { + "path": "kernels/695f529f0e562834854d654e481bdf53c35ad4428f76f66595b3c57cbad54423.wgsl", + "byteLength": 595, + "sha256": "695f529f0e562834854d654e481bdf53c35ad4428f76f66595b3c57cbad54423" + }, + { + "path": "kernels/6a045508377e47e95d411257071b7ed8f9097fd220c00de6a5167abb548ebe37.wgsl", + "byteLength": 750, + "sha256": "6a045508377e47e95d411257071b7ed8f9097fd220c00de6a5167abb548ebe37" + }, + { + "path": "kernels/6a7b2e3778a02c76155d46fa84aeb33f594954e82e09b6b7f2915c0a606eb3f5.wgsl", + "byteLength": 471, + "sha256": "6a7b2e3778a02c76155d46fa84aeb33f594954e82e09b6b7f2915c0a606eb3f5" + }, + { + "path": "kernels/6ae4c7f13978e60e3f4ccd5b8172af88d7dc24cfdb236e51b826f13a03d8cd02.wgsl", + "byteLength": 400, + "sha256": "6ae4c7f13978e60e3f4ccd5b8172af88d7dc24cfdb236e51b826f13a03d8cd02" + }, + { + "path": "kernels/6c57b74ac00a3e385675c024ab180b06a05158dcda1371891249af95792f27fc.wgsl", + "byteLength": 396, + "sha256": "6c57b74ac00a3e385675c024ab180b06a05158dcda1371891249af95792f27fc" + }, + { + "path": "kernels/6caa35fcab56c639d1859e1b090a7e5bf016dd7f33ecd2373c24ab625de16e09.wgsl", + "byteLength": 407, + "sha256": "6caa35fcab56c639d1859e1b090a7e5bf016dd7f33ecd2373c24ab625de16e09" + }, + { + "path": "kernels/6d748fa04b83886e523f4d9b826e6865f73b31dfe31385b10bd0b9cc9ec4d1db.wgsl", + "byteLength": 607, + "sha256": "6d748fa04b83886e523f4d9b826e6865f73b31dfe31385b10bd0b9cc9ec4d1db" + }, + { + "path": "kernels/6d82b7ed99a04f03fa0b9d241188d9613fa3ce9ff425cf8ee30a7f4ce6ded13d.wgsl", + "byteLength": 407, + "sha256": "6d82b7ed99a04f03fa0b9d241188d9613fa3ce9ff425cf8ee30a7f4ce6ded13d" + }, + { + "path": "kernels/6de6505af6ba3c1c020424d3a99773ff62d2308a2fbf2295ec2ea7e919e4cbb9.wgsl", + "byteLength": 417, + "sha256": "6de6505af6ba3c1c020424d3a99773ff62d2308a2fbf2295ec2ea7e919e4cbb9" + }, + { + "path": "kernels/6e158cae64ceafa60c5498129bbc4482684844432772c61a9f2cfb62482bdeb4.wgsl", + "byteLength": 660, + "sha256": "6e158cae64ceafa60c5498129bbc4482684844432772c61a9f2cfb62482bdeb4" + }, + { + "path": "kernels/7002f8fdf09f5124ce2875c3540bce3e77750260556fc1a00a8b13b6c1871c30.wgsl", + "byteLength": 383, + "sha256": "7002f8fdf09f5124ce2875c3540bce3e77750260556fc1a00a8b13b6c1871c30" + }, + { + "path": "kernels/7121b5c223da0b0f28991f55cfed3c3f3390caa0bf65a8e58ae380db281ceb6b.wgsl", + "byteLength": 368, + "sha256": "7121b5c223da0b0f28991f55cfed3c3f3390caa0bf65a8e58ae380db281ceb6b" + }, + { + "path": "kernels/7183997261247fa4df7e081c0d6d01036fee95b9b57ef944d5f44f72fc80d5fe.wgsl", + "byteLength": 285, + "sha256": "7183997261247fa4df7e081c0d6d01036fee95b9b57ef944d5f44f72fc80d5fe" + }, + { + "path": "kernels/71d38690bcc7fc30f01f1c8fa2f13a38beff889fcb3ff387861bb70038e92129.wgsl", + "byteLength": 370, + "sha256": "71d38690bcc7fc30f01f1c8fa2f13a38beff889fcb3ff387861bb70038e92129" + }, + { + "path": "kernels/720dc88131b6bf06e6b09185aa7d5986eb755dcfa60d0e040cbbf621c8f3f761.wgsl", + "byteLength": 559, + "sha256": "720dc88131b6bf06e6b09185aa7d5986eb755dcfa60d0e040cbbf621c8f3f761" + }, + { + "path": "kernels/72474f821f837da4ebaab4cc925fdac78b707346be174a7c033c4c6518935abc.wgsl", + "byteLength": 406, + "sha256": "72474f821f837da4ebaab4cc925fdac78b707346be174a7c033c4c6518935abc" + }, + { + "path": "kernels/73b861456466f63d096073357cb34eb5f5819861a2961838b6590969f894fa95.wgsl", + "byteLength": 309, + "sha256": "73b861456466f63d096073357cb34eb5f5819861a2961838b6590969f894fa95" + }, + { + "path": "kernels/742db031d819fdf5a756f37e8e824e2dcb2ca3f30efac3ffbd5918181059ae3a.wgsl", + "byteLength": 393, + "sha256": "742db031d819fdf5a756f37e8e824e2dcb2ca3f30efac3ffbd5918181059ae3a" + }, + { + "path": "kernels/752da00e33abf87b63eba03893a16e7db848f97f1385942d40d8cfb5122d9bd3.wgsl", + "byteLength": 369, + "sha256": "752da00e33abf87b63eba03893a16e7db848f97f1385942d40d8cfb5122d9bd3" + }, + { + "path": "kernels/764403c33cd8994568e068810380cb57e9f2e326dfc09bed63eed1fbed044da1.wgsl", + "byteLength": 311, + "sha256": "764403c33cd8994568e068810380cb57e9f2e326dfc09bed63eed1fbed044da1" + }, + { + "path": "kernels/77f9becbd500abcaf6a8d278cbcb6c7031868ff5bf74f41284940d56894cf9fa.wgsl", + "byteLength": 389, + "sha256": "77f9becbd500abcaf6a8d278cbcb6c7031868ff5bf74f41284940d56894cf9fa" + }, + { + "path": "kernels/7928d1b13d79c16f6c0f9d3130cbdb4193cab6efe3a60b38caa1039688fe56de.wgsl", + "byteLength": 286, + "sha256": "7928d1b13d79c16f6c0f9d3130cbdb4193cab6efe3a60b38caa1039688fe56de" + }, + { + "path": "kernels/793acab25c53175e48dbfd1019e7c5f2bd0176d97e2134d7c290a66cfe702c34.wgsl", + "byteLength": 417, + "sha256": "793acab25c53175e48dbfd1019e7c5f2bd0176d97e2134d7c290a66cfe702c34" + }, + { + "path": "kernels/793b4c977feaf93abb2f6e92796d4971ecf3176f10459317fb7a98b028007c01.wgsl", + "byteLength": 393, + "sha256": "793b4c977feaf93abb2f6e92796d4971ecf3176f10459317fb7a98b028007c01" + }, + { + "path": "kernels/79ab685c48a01097e551291e8bb7ea554f69b07f6fd1494aaa829ddcb0eeb8d1.wgsl", + "byteLength": 665, + "sha256": "79ab685c48a01097e551291e8bb7ea554f69b07f6fd1494aaa829ddcb0eeb8d1" + }, + { + "path": "kernels/7adea2b745b20a2abb96d02a1fca6db5f06f3c5aac850cf8ae1afa6f50868ded.wgsl", + "byteLength": 311, + "sha256": "7adea2b745b20a2abb96d02a1fca6db5f06f3c5aac850cf8ae1afa6f50868ded" + }, + { + "path": "kernels/7b7c42c04ea3c6695ddead641e88b82d8f130015e138fc323eec509b5b56cfa9.wgsl", + "byteLength": 406, + "sha256": "7b7c42c04ea3c6695ddead641e88b82d8f130015e138fc323eec509b5b56cfa9" + }, + { + "path": "kernels/7ea4a12734f1206e9c94a060bf6b24732f46685f0c46a78c3c5fbcd64489d8c3.wgsl", + "byteLength": 407, + "sha256": "7ea4a12734f1206e9c94a060bf6b24732f46685f0c46a78c3c5fbcd64489d8c3" + }, + { + "path": "kernels/7f684886a0c031e32c9cf7a4bff880ae692ddc08ddca971ee20d728b4736d0da.wgsl", + "byteLength": 418, + "sha256": "7f684886a0c031e32c9cf7a4bff880ae692ddc08ddca971ee20d728b4736d0da" + }, + { + "path": "kernels/7fab02b2d46f9419002e2fc6f6e0e4e745ddb737a2c9e7060e45e7125c1be187.wgsl", + "byteLength": 378, + "sha256": "7fab02b2d46f9419002e2fc6f6e0e4e745ddb737a2c9e7060e45e7125c1be187" + }, + { + "path": "kernels/7fe183583b43b627721ba6853b306288d7ceea4b42b630410f47ea9637220a4b.wgsl", + "byteLength": 290, + "sha256": "7fe183583b43b627721ba6853b306288d7ceea4b42b630410f47ea9637220a4b" + }, + { + "path": "kernels/7fed7072c20dc3e66c80b2ac1f737b0e7e70a695e5db34e057f729c945e60ba0.wgsl", + "byteLength": 752, + "sha256": "7fed7072c20dc3e66c80b2ac1f737b0e7e70a695e5db34e057f729c945e60ba0" + }, + { + "path": "kernels/809edbbbbbd45df1163aca9506775b9c2ae0d51f65a31a5396599cfeeb7009fc.wgsl", + "byteLength": 1381, + "sha256": "809edbbbbbd45df1163aca9506775b9c2ae0d51f65a31a5396599cfeeb7009fc" + }, + { + "path": "kernels/80d22263b082805bc9d4499247f92b7a1a783a3e1cdd9c652d304492a1cfd425.wgsl", + "byteLength": 404, + "sha256": "80d22263b082805bc9d4499247f92b7a1a783a3e1cdd9c652d304492a1cfd425" + }, + { + "path": "kernels/80ea575e71114223b547d927628fbb71c676d57d144193e995e6eb39c5b4c161.wgsl", + "byteLength": 1021, + "sha256": "80ea575e71114223b547d927628fbb71c676d57d144193e995e6eb39c5b4c161" + }, + { + "path": "kernels/810f4f0382885bc94f69164288e74f8a736b3644370a205c9c12d330192b00c9.wgsl", + "byteLength": 1385, + "sha256": "810f4f0382885bc94f69164288e74f8a736b3644370a205c9c12d330192b00c9" + }, + { + "path": "kernels/816861e23c92e156c1ac01f21e4f6dd1cbfc14978b1be8a5994fb45b0f845cb8.wgsl", + "byteLength": 328, + "sha256": "816861e23c92e156c1ac01f21e4f6dd1cbfc14978b1be8a5994fb45b0f845cb8" + }, + { + "path": "kernels/8256ea6cdc3500306470c0bb2dcdb44ebdd454dafa218ad6a94dd953b9bbe125.wgsl", + "byteLength": 406, + "sha256": "8256ea6cdc3500306470c0bb2dcdb44ebdd454dafa218ad6a94dd953b9bbe125" + }, + { + "path": "kernels/827ffce28b59c5790739e7f9624b4ef6ebf876973f7ba942702dd8872f47fcd5.wgsl", + "byteLength": 328, + "sha256": "827ffce28b59c5790739e7f9624b4ef6ebf876973f7ba942702dd8872f47fcd5" + }, + { + "path": "kernels/82bc226410ee45662442e25040b6a6456c2532b87e96860e10f8f0135dde892b.wgsl", + "byteLength": 286, + "sha256": "82bc226410ee45662442e25040b6a6456c2532b87e96860e10f8f0135dde892b" + }, + { + "path": "kernels/82d700d77c249d637b7592f92c488497797a3961ea85b74ad2e50cccef3ef78f.wgsl", + "byteLength": 556, + "sha256": "82d700d77c249d637b7592f92c488497797a3961ea85b74ad2e50cccef3ef78f" + }, + { + "path": "kernels/84101fc314579b90d71da4cca3a2c2cdc2074d96d2861c4b8e38c22cc1903138.wgsl", + "byteLength": 394, + "sha256": "84101fc314579b90d71da4cca3a2c2cdc2074d96d2861c4b8e38c22cc1903138" + }, + { + "path": "kernels/84759f77f2f54fed243fc0075b3c0152a1d7f9a659dade7970962d5d41e931b4.wgsl", + "byteLength": 608, + "sha256": "84759f77f2f54fed243fc0075b3c0152a1d7f9a659dade7970962d5d41e931b4" + }, + { + "path": "kernels/8485c3edc4d8013903fedc22091c7530a69a97da8b3dbd0cc5c55f54220709fb.wgsl", + "byteLength": 664, + "sha256": "8485c3edc4d8013903fedc22091c7530a69a97da8b3dbd0cc5c55f54220709fb" + }, + { + "path": "kernels/84f24861effe9e2f3b05f98fe6d4e16f4f8204be40a7eeece0668e57060ecc7b.wgsl", + "byteLength": 401, + "sha256": "84f24861effe9e2f3b05f98fe6d4e16f4f8204be40a7eeece0668e57060ecc7b" + }, + { + "path": "kernels/84ff996d084cbc6b8dca21a8f3267cdb1f4c6b9664c24c3002252f05247c4212.wgsl", + "byteLength": 381, + "sha256": "84ff996d084cbc6b8dca21a8f3267cdb1f4c6b9664c24c3002252f05247c4212" + }, + { + "path": "kernels/85964f8bbe5a2e4d430930e1050ea76871f0f2453c3cd4ba020002c0562ca680.wgsl", + "byteLength": 558, + "sha256": "85964f8bbe5a2e4d430930e1050ea76871f0f2453c3cd4ba020002c0562ca680" + }, + { + "path": "kernels/870f571c2825eaa5aa7203a42631ed44e533c50f236974cb4591aa3c73b231a6.wgsl", + "byteLength": 415, + "sha256": "870f571c2825eaa5aa7203a42631ed44e533c50f236974cb4591aa3c73b231a6" + }, + { + "path": "kernels/87a0173f6b11329ec1cabdb66aac50298a6f8466a8608cdf60ec6dfb19791b46.wgsl", + "byteLength": 308, + "sha256": "87a0173f6b11329ec1cabdb66aac50298a6f8466a8608cdf60ec6dfb19791b46" + }, + { + "path": "kernels/8898353d0c367a3982a48d416f6777c3ce7a854572eeaf55843f3e7ee458c65d.wgsl", + "byteLength": 292, + "sha256": "8898353d0c367a3982a48d416f6777c3ce7a854572eeaf55843f3e7ee458c65d" + }, + { + "path": "kernels/88b50ebddd13f3ff5e2819b8bc956e8fc1346e8f75cacbc3d0edf031b7f1f248.wgsl", + "byteLength": 306, + "sha256": "88b50ebddd13f3ff5e2819b8bc956e8fc1346e8f75cacbc3d0edf031b7f1f248" + }, + { + "path": "kernels/892b773325e143ad086ac3f3475f04c606f781b0ea3261a7168d28e3bdf24b49.wgsl", + "byteLength": 665, + "sha256": "892b773325e143ad086ac3f3475f04c606f781b0ea3261a7168d28e3bdf24b49" + }, + { + "path": "kernels/896006749045a93d89dca7ed7326aa05c5ff29423400569d34ab2256dea6b0e4.wgsl", + "byteLength": 383, + "sha256": "896006749045a93d89dca7ed7326aa05c5ff29423400569d34ab2256dea6b0e4" + }, + { + "path": "kernels/898086c99e03b2cdb78e3e5658c3fff202f1c87d09d8da08659bd1ba85e01b09.wgsl", + "byteLength": 554, + "sha256": "898086c99e03b2cdb78e3e5658c3fff202f1c87d09d8da08659bd1ba85e01b09" + }, + { + "path": "kernels/89f98b79c18e7f4bbbd79cbd8d3e80108d0e1e4407c161d9637b6a88d3fbe06b.wgsl", + "byteLength": 409, + "sha256": "89f98b79c18e7f4bbbd79cbd8d3e80108d0e1e4407c161d9637b6a88d3fbe06b" + }, + { + "path": "kernels/8a46c4e24d014fd6af88a3f370c4b6161be7c63b6c30211bd62af3dbd87293a8.wgsl", + "byteLength": 398, + "sha256": "8a46c4e24d014fd6af88a3f370c4b6161be7c63b6c30211bd62af3dbd87293a8" + }, + { + "path": "kernels/8af32f59dfb78c79ac2187ae707f0897b89fb8bb0e3d832e2edac308eefa603c.wgsl", + "byteLength": 408, + "sha256": "8af32f59dfb78c79ac2187ae707f0897b89fb8bb0e3d832e2edac308eefa603c" + }, + { + "path": "kernels/8affc7c0e85127430e406be35ebb5c5354a8dd26ecc4ae9ab6ace80ce6775f46.wgsl", + "byteLength": 565, + "sha256": "8affc7c0e85127430e406be35ebb5c5354a8dd26ecc4ae9ab6ace80ce6775f46" + }, + { + "path": "kernels/8b5e4c9b7889f2bccebf60987b6f5b8c23542c3475cd8d78656dc7ecffd81f8d.wgsl", + "byteLength": 405, + "sha256": "8b5e4c9b7889f2bccebf60987b6f5b8c23542c3475cd8d78656dc7ecffd81f8d" + }, + { + "path": "kernels/8c2cc45aff0682e734174141c9fcc5edcdac7925ad6128b062befdba21f8695f.wgsl", + "byteLength": 387, + "sha256": "8c2cc45aff0682e734174141c9fcc5edcdac7925ad6128b062befdba21f8695f" + }, + { + "path": "kernels/8c3a77238461b0ae13318bad504e1e0779f3f47d1782fe0ca78f20112c031146.wgsl", + "byteLength": 399, + "sha256": "8c3a77238461b0ae13318bad504e1e0779f3f47d1782fe0ca78f20112c031146" + }, + { + "path": "kernels/8c92c6f1421c6378452dd1e15eae6d7da76404ac7e9a0b756bace66e6f207d21.wgsl", + "byteLength": 384, + "sha256": "8c92c6f1421c6378452dd1e15eae6d7da76404ac7e9a0b756bace66e6f207d21" + }, + { + "path": "kernels/8cce7bfa491959f6a7b62ae9cb861d12e2f4ff05227918a4d06bd80669f0a539.wgsl", + "byteLength": 372, + "sha256": "8cce7bfa491959f6a7b62ae9cb861d12e2f4ff05227918a4d06bd80669f0a539" + }, + { + "path": "kernels/8d0a37e497bcb37e2d5a1746fba59fd69680ed8eeada4835c5d0eeef840d57ab.wgsl", + "byteLength": 303, + "sha256": "8d0a37e497bcb37e2d5a1746fba59fd69680ed8eeada4835c5d0eeef840d57ab" + }, + { + "path": "kernels/8d2d4993e8058293c7308e58f517619651bbfcfc855acd7e3f5a8cfdfd971dab.wgsl", + "byteLength": 324, + "sha256": "8d2d4993e8058293c7308e58f517619651bbfcfc855acd7e3f5a8cfdfd971dab" + }, + { + "path": "kernels/8d3901ffa1bf261d953e73b6ee49a0cb486607d014576f319054a30b2a878d16.wgsl", + "byteLength": 603, + "sha256": "8d3901ffa1bf261d953e73b6ee49a0cb486607d014576f319054a30b2a878d16" + }, + { + "path": "kernels/8d62df48089497dd19fea48680730210decda42b63f69ecdf9688fc4a43efc58.wgsl", + "byteLength": 414, + "sha256": "8d62df48089497dd19fea48680730210decda42b63f69ecdf9688fc4a43efc58" + }, + { + "path": "kernels/8d924efe3620ed999f0cf4e6adc1df91b7def10b99b5ecb839ceaa662b43c82c.wgsl", + "byteLength": 464, + "sha256": "8d924efe3620ed999f0cf4e6adc1df91b7def10b99b5ecb839ceaa662b43c82c" + }, + { + "path": "kernels/8e0a5082868763863aafd2f06c712052ff8e27c61b6a010bfe35849c65245c5c.wgsl", + "byteLength": 431, + "sha256": "8e0a5082868763863aafd2f06c712052ff8e27c61b6a010bfe35849c65245c5c" + }, + { + "path": "kernels/8e3d3b82b0e50fa7a86f44f30fe70b1ee226e613ce06b69776f5624efb029235.wgsl", + "byteLength": 853, + "sha256": "8e3d3b82b0e50fa7a86f44f30fe70b1ee226e613ce06b69776f5624efb029235" + }, + { + "path": "kernels/8edd8a2bae8f26ae570c97da27c254da93d6b2df00784f505002f97830f806b3.wgsl", + "byteLength": 292, + "sha256": "8edd8a2bae8f26ae570c97da27c254da93d6b2df00784f505002f97830f806b3" + }, + { + "path": "kernels/8ee286e06c1271162bea74e14b4bd5b1d66890648217c79435e6b3f1d4181ec8.wgsl", + "byteLength": 403, + "sha256": "8ee286e06c1271162bea74e14b4bd5b1d66890648217c79435e6b3f1d4181ec8" + }, + { + "path": "kernels/8f49f6b8f8a2ee074b9fb925c2ea40d1f3b8af945a801b677a197a98e37fc26d.wgsl", + "byteLength": 1408, + "sha256": "8f49f6b8f8a2ee074b9fb925c2ea40d1f3b8af945a801b677a197a98e37fc26d" + }, + { + "path": "kernels/9044193f1f4724f15ef5fb41040b7fbac5f62fcaea80594737214bf9cd6be41a.wgsl", + "byteLength": 419, + "sha256": "9044193f1f4724f15ef5fb41040b7fbac5f62fcaea80594737214bf9cd6be41a" + }, + { + "path": "kernels/9144d827dae4c52b80abb829178a9ed901ce5dbc6702ad94b0b355e8eaad5ea5.wgsl", + "byteLength": 548, + "sha256": "9144d827dae4c52b80abb829178a9ed901ce5dbc6702ad94b0b355e8eaad5ea5" + }, + { + "path": "kernels/928e4759658bc5813ad5b82855d1a8c13e144cdfe50229dfc10b0624d7490858.wgsl", + "byteLength": 563, + "sha256": "928e4759658bc5813ad5b82855d1a8c13e144cdfe50229dfc10b0624d7490858" + }, + { + "path": "kernels/939eb5e3ec5862e0f1d8caec99b814ed6b2bb3a41a132f7149a503e8df582e3c.wgsl", + "byteLength": 606, + "sha256": "939eb5e3ec5862e0f1d8caec99b814ed6b2bb3a41a132f7149a503e8df582e3c" + }, + { + "path": "kernels/947f5cc8b3f87e1a0d4d322d9d9e71e2ed16ce6e1f7c91118678c164dc1c8752.wgsl", + "byteLength": 381, + "sha256": "947f5cc8b3f87e1a0d4d322d9d9e71e2ed16ce6e1f7c91118678c164dc1c8752" + }, + { + "path": "kernels/94a128c4e3d052323e995364319a5607fe0514a04b040a13cfffd1b11c445775.wgsl", + "byteLength": 288, + "sha256": "94a128c4e3d052323e995364319a5607fe0514a04b040a13cfffd1b11c445775" + }, + { + "path": "kernels/94a2c2e4ddc65deb44fa82c2d58cedd197463b1fdae696a18ace95efbba96118.wgsl", + "byteLength": 1379, + "sha256": "94a2c2e4ddc65deb44fa82c2d58cedd197463b1fdae696a18ace95efbba96118" + }, + { + "path": "kernels/95addfdb139df33bb3d5c05859412434d318cee0340560537dce4d56a05e159c.wgsl", + "byteLength": 395, + "sha256": "95addfdb139df33bb3d5c05859412434d318cee0340560537dce4d56a05e159c" + }, + { + "path": "kernels/95cba13b595301afbefe20da4a65b93d4d5c5f4a29b9e1d5348d32cb193c6b4b.wgsl", + "byteLength": 372, + "sha256": "95cba13b595301afbefe20da4a65b93d4d5c5f4a29b9e1d5348d32cb193c6b4b" + }, + { + "path": "kernels/9625ca0b071511e5261877fd21627ca354ea0219da86a10887e8054afa15dcfd.wgsl", + "byteLength": 367, + "sha256": "9625ca0b071511e5261877fd21627ca354ea0219da86a10887e8054afa15dcfd" + }, + { + "path": "kernels/9701df2bcd72ed6a0b72dca81006d9fcc2336e0250fbd66cf37d4fd80667358f.wgsl", + "byteLength": 421, + "sha256": "9701df2bcd72ed6a0b72dca81006d9fcc2336e0250fbd66cf37d4fd80667358f" + }, + { + "path": "kernels/970aa8fd65c7e96611a4b6f30cb0b71e24bdaefff0ca117243cab1a5a7e645a9.wgsl", + "byteLength": 286, + "sha256": "970aa8fd65c7e96611a4b6f30cb0b71e24bdaefff0ca117243cab1a5a7e645a9" + }, + { + "path": "kernels/97aa9b5cb2a41dbf920a6c15c61964d33dd0d87990a00183ac4b87c614bc376d.wgsl", + "byteLength": 561, + "sha256": "97aa9b5cb2a41dbf920a6c15c61964d33dd0d87990a00183ac4b87c614bc376d" + }, + { + "path": "kernels/97f95797eb6ec79925daae2004583ba556d6376a470860609d4c61bc83e15510.wgsl", + "byteLength": 1388, + "sha256": "97f95797eb6ec79925daae2004583ba556d6376a470860609d4c61bc83e15510" + }, + { + "path": "kernels/985bb9ad33654b9adbd4a256d626e346556a10dad514692800da8ebd7910f0f0.wgsl", + "byteLength": 362, + "sha256": "985bb9ad33654b9adbd4a256d626e346556a10dad514692800da8ebd7910f0f0" + }, + { + "path": "kernels/987d27946334b53b3006cdca1a7158b13a27e01e688047aeafc4b029761b80af.wgsl", + "byteLength": 380, + "sha256": "987d27946334b53b3006cdca1a7158b13a27e01e688047aeafc4b029761b80af" + }, + { + "path": "kernels/99e423f03f9fdfee41f3dcaab73257064ffb2a64110066752208324724505a8b.wgsl", + "byteLength": 383, + "sha256": "99e423f03f9fdfee41f3dcaab73257064ffb2a64110066752208324724505a8b" + }, + { + "path": "kernels/9a9c990c9717c93933b1e7f5204d99a16276a177b7ca2f8c8cf61dbc1f6aaf51.wgsl", + "byteLength": 1384, + "sha256": "9a9c990c9717c93933b1e7f5204d99a16276a177b7ca2f8c8cf61dbc1f6aaf51" + }, + { + "path": "kernels/9b7697d3e1de37277befbd725307f40a5143faae3dcf43182d4ad89d8572ed42.wgsl", + "byteLength": 301, + "sha256": "9b7697d3e1de37277befbd725307f40a5143faae3dcf43182d4ad89d8572ed42" + }, + { + "path": "kernels/9cd8236a30e65989f2ed9c7afcfcf2369b6036ade2a7d81c8e203c2789178074.wgsl", + "byteLength": 556, + "sha256": "9cd8236a30e65989f2ed9c7afcfcf2369b6036ade2a7d81c8e203c2789178074" + }, + { + "path": "kernels/9d12ba7fd89692e99bb291808c5a80ffd5b95478671dde2c936fc3deb8383fa0.wgsl", + "byteLength": 383, + "sha256": "9d12ba7fd89692e99bb291808c5a80ffd5b95478671dde2c936fc3deb8383fa0" + }, + { + "path": "kernels/9d3d7b777701cd320ca11358e554e1019fb041ee4d765e66071c215242906773.wgsl", + "byteLength": 413, + "sha256": "9d3d7b777701cd320ca11358e554e1019fb041ee4d765e66071c215242906773" + }, + { + "path": "kernels/9d504391a987c7be7ccfbb7972c27cf54cd62730c19cbe7949fee2ea059f0c43.wgsl", + "byteLength": 328, + "sha256": "9d504391a987c7be7ccfbb7972c27cf54cd62730c19cbe7949fee2ea059f0c43" + }, + { + "path": "kernels/9f040facf0594804dba5b0f10f53b11b7223a1e1705896f95a8f95aa0fff5eec.wgsl", + "byteLength": 556, + "sha256": "9f040facf0594804dba5b0f10f53b11b7223a1e1705896f95a8f95aa0fff5eec" + }, + { + "path": "kernels/a16a539c1a662c846d6c661e572b0b8e19335f9ef41742f784d738bcfd3cd7a6.wgsl", + "byteLength": 387, + "sha256": "a16a539c1a662c846d6c661e572b0b8e19335f9ef41742f784d738bcfd3cd7a6" + }, + { + "path": "kernels/a1a974f6d8d51fd7c3496ede0966af303ad9f0c0c9ee44cf93ec962d2b0e87e1.wgsl", + "byteLength": 303, + "sha256": "a1a974f6d8d51fd7c3496ede0966af303ad9f0c0c9ee44cf93ec962d2b0e87e1" + }, + { + "path": "kernels/a1cf6b03baf18d389f0a2b95440c17125a8ecc1e633568de985d42cac6e0d1cb.wgsl", + "byteLength": 373, + "sha256": "a1cf6b03baf18d389f0a2b95440c17125a8ecc1e633568de985d42cac6e0d1cb" + }, + { + "path": "kernels/a21c6a35532bc26ccfc46df22f98e1592e3b285e3800544c032edf39425bde1a.wgsl", + "byteLength": 373, + "sha256": "a21c6a35532bc26ccfc46df22f98e1592e3b285e3800544c032edf39425bde1a" + }, + { + "path": "kernels/a21dc37cea5d4adc26465d78d5491b794129ded665b3b3c014438c11519a837c.wgsl", + "byteLength": 667, + "sha256": "a21dc37cea5d4adc26465d78d5491b794129ded665b3b3c014438c11519a837c" + }, + { + "path": "kernels/a24673da4fae6d1c49aa143f8425996b2d036db7b0341987dab330c78ead91d7.wgsl", + "byteLength": 390, + "sha256": "a24673da4fae6d1c49aa143f8425996b2d036db7b0341987dab330c78ead91d7" + }, + { + "path": "kernels/a26ccdf9414d63e640b21dbfb8191252a532ad248ad8a975bf64438d6c861edb.wgsl", + "byteLength": 654, + "sha256": "a26ccdf9414d63e640b21dbfb8191252a532ad248ad8a975bf64438d6c861edb" + }, + { + "path": "kernels/a2bd65fc2709e093644d6cbf0c292b4d71520009a87bedcf4bca8fcb5f5c15b8.wgsl", + "byteLength": 286, + "sha256": "a2bd65fc2709e093644d6cbf0c292b4d71520009a87bedcf4bca8fcb5f5c15b8" + }, + { + "path": "kernels/a2e242b97ac8ec546c9f91b5af599c2231915bdabb57d55cdc21f61a49c21007.wgsl", + "byteLength": 326, + "sha256": "a2e242b97ac8ec546c9f91b5af599c2231915bdabb57d55cdc21f61a49c21007" + }, + { + "path": "kernels/a4803f845cab5f8bb5c34e5f6686e55705cc0dfd573472c6bc83190d2621296a.wgsl", + "byteLength": 1381, + "sha256": "a4803f845cab5f8bb5c34e5f6686e55705cc0dfd573472c6bc83190d2621296a" + }, + { + "path": "kernels/a53c1ce51ebaec593ad667efae9603efe3807db8f0ee060a620ac031cc4f2b92.wgsl", + "byteLength": 326, + "sha256": "a53c1ce51ebaec593ad667efae9603efe3807db8f0ee060a620ac031cc4f2b92" + }, + { + "path": "kernels/a62f6b62277fe048d6bac44a25a2e61399e7e2eab103fccd3a23c29a3c827856.wgsl", + "byteLength": 2305, + "sha256": "a62f6b62277fe048d6bac44a25a2e61399e7e2eab103fccd3a23c29a3c827856" + }, + { + "path": "kernels/a672c3e158716bde7444c8141f3df1da16da739ccdd2eb2ad60f9d42d0775157.wgsl", + "byteLength": 505, + "sha256": "a672c3e158716bde7444c8141f3df1da16da739ccdd2eb2ad60f9d42d0775157" + }, + { + "path": "kernels/a77f14c89662d2d3da8abd8f109667793dc662d307e5e1c61123be753e25437b.wgsl", + "byteLength": 307, + "sha256": "a77f14c89662d2d3da8abd8f109667793dc662d307e5e1c61123be753e25437b" + }, + { + "path": "kernels/a7b0c51677aa6c03cbc5b36f07b4895bfdd46309ffd851a38a38e5761d9eef38.wgsl", + "byteLength": 449, + "sha256": "a7b0c51677aa6c03cbc5b36f07b4895bfdd46309ffd851a38a38e5761d9eef38" + }, + { + "path": "kernels/a7b50e8b6e4d56404b6261383f50b3eed4a2a59c3fadaaffcc974575c32a374f.wgsl", + "byteLength": 373, + "sha256": "a7b50e8b6e4d56404b6261383f50b3eed4a2a59c3fadaaffcc974575c32a374f" + }, + { + "path": "kernels/a831fed0324f7532d7905d47c499e6a3deb56fe99d0dbcc91193b351efa797db.wgsl", + "byteLength": 377, + "sha256": "a831fed0324f7532d7905d47c499e6a3deb56fe99d0dbcc91193b351efa797db" + }, + { + "path": "kernels/a87152b0fd2f78f60d7abb61c2f6c4a9bde8a9dd45d0275b58d760a3da9f71ce.wgsl", + "byteLength": 575, + "sha256": "a87152b0fd2f78f60d7abb61c2f6c4a9bde8a9dd45d0275b58d760a3da9f71ce" + }, + { + "path": "kernels/a9f0eef095f015e2099adf81552a6727c45e70fc11f5e50b777d36b6370ab986.wgsl", + "byteLength": 386, + "sha256": "a9f0eef095f015e2099adf81552a6727c45e70fc11f5e50b777d36b6370ab986" + }, + { + "path": "kernels/a9f6bc361f1ea31f79f0ef6164872eeb04896a45338871a2d779789b47b1920b.wgsl", + "byteLength": 369, + "sha256": "a9f6bc361f1ea31f79f0ef6164872eeb04896a45338871a2d779789b47b1920b" + }, + { + "path": "kernels/a9fa5db20fa8de1de429c6850c3e40ff8180bcdb59373919b84d2438b3b17352.wgsl", + "byteLength": 368, + "sha256": "a9fa5db20fa8de1de429c6850c3e40ff8180bcdb59373919b84d2438b3b17352" + }, + { + "path": "kernels/aa227ae49fab3f75d86e02e6f390be785eabfeafe70e77a5c7eb4ad51895e382.wgsl", + "byteLength": 367, + "sha256": "aa227ae49fab3f75d86e02e6f390be785eabfeafe70e77a5c7eb4ad51895e382" + }, + { + "path": "kernels/aac6395f039e396767ee10d0ad95d3d6206ad4a5c1e5913dfd5c3cfeaf227510.wgsl", + "byteLength": 292, + "sha256": "aac6395f039e396767ee10d0ad95d3d6206ad4a5c1e5913dfd5c3cfeaf227510" + }, + { + "path": "kernels/abdb17daf29310a7828a55a1efeebaa65b6553e236fc20702e8c712e0a46dd5b.wgsl", + "byteLength": 326, + "sha256": "abdb17daf29310a7828a55a1efeebaa65b6553e236fc20702e8c712e0a46dd5b" + }, + { + "path": "kernels/ac173d038b5767711ad9f7cafbceb9ca3ec84aaeb3d07a3037e7cd0f83fead2c.wgsl", + "byteLength": 391, + "sha256": "ac173d038b5767711ad9f7cafbceb9ca3ec84aaeb3d07a3037e7cd0f83fead2c" + }, + { + "path": "kernels/ac61ff8b1e3d15ef1f43e9d610e97d84fcae08527ed0a992d3cebbce5fdd286a.wgsl", + "byteLength": 601, + "sha256": "ac61ff8b1e3d15ef1f43e9d610e97d84fcae08527ed0a992d3cebbce5fdd286a" + }, + { + "path": "kernels/ad72f60d58133272228319f1c066e7cd43ac28573ddeeb7a6f69be01af341f57.wgsl", + "byteLength": 402, + "sha256": "ad72f60d58133272228319f1c066e7cd43ac28573ddeeb7a6f69be01af341f57" + }, + { + "path": "kernels/adf1e58a124e1301625024ae142dca5fb1dd50799fa94b52eaeffb82ea99852c.wgsl", + "byteLength": 307, + "sha256": "adf1e58a124e1301625024ae142dca5fb1dd50799fa94b52eaeffb82ea99852c" + }, + { + "path": "kernels/ae69e698c92571766e36ad8c078b13e42bde56745d45698daaadaca587b7279c.wgsl", + "byteLength": 551, + "sha256": "ae69e698c92571766e36ad8c078b13e42bde56745d45698daaadaca587b7279c" + }, + { + "path": "kernels/aeee4bc86f9b4986043125d462e8fed051591da36bd013e5c7c31c3449353452.wgsl", + "byteLength": 663, + "sha256": "aeee4bc86f9b4986043125d462e8fed051591da36bd013e5c7c31c3449353452" + }, + { + "path": "kernels/b02b0be460d581c720afd68c8b722e8da47e2ee432b5d61bbdf24b6084cb2f26.wgsl", + "byteLength": 415, + "sha256": "b02b0be460d581c720afd68c8b722e8da47e2ee432b5d61bbdf24b6084cb2f26" + }, + { + "path": "kernels/b12eae76f13225c0c5d35fc9309964aba3172712799ff3bd8538bb2c1b34aa33.wgsl", + "byteLength": 390, + "sha256": "b12eae76f13225c0c5d35fc9309964aba3172712799ff3bd8538bb2c1b34aa33" + }, + { + "path": "kernels/b1741cc45db17fa6e66bd797a89a3e3ca7cc70854e55c9e549d4f8500ef5a509.wgsl", + "byteLength": 665, + "sha256": "b1741cc45db17fa6e66bd797a89a3e3ca7cc70854e55c9e549d4f8500ef5a509" + }, + { + "path": "kernels/b199d835db70f888c7b99a3ac6e9ec56f6c47d5bba4eaf352e0a8eabed56411e.wgsl", + "byteLength": 387, + "sha256": "b199d835db70f888c7b99a3ac6e9ec56f6c47d5bba4eaf352e0a8eabed56411e" + }, + { + "path": "kernels/b28ea4a8345a9c9abb2d74bfd620ba5de46616434dbaffdbabf022ea71800839.wgsl", + "byteLength": 290, + "sha256": "b28ea4a8345a9c9abb2d74bfd620ba5de46616434dbaffdbabf022ea71800839" + }, + { + "path": "kernels/b2ae1b161c8a6315f8863e47511607027dfe583aac1db4c1626371ddfa0c64e2.wgsl", + "byteLength": 400, + "sha256": "b2ae1b161c8a6315f8863e47511607027dfe583aac1db4c1626371ddfa0c64e2" + }, + { + "path": "kernels/b2b16798cbe94c919025d76b0435afe47966ffdd1ea53ec74a791c03c4709a28.wgsl", + "byteLength": 380, + "sha256": "b2b16798cbe94c919025d76b0435afe47966ffdd1ea53ec74a791c03c4709a28" + }, + { + "path": "kernels/b3128f8b5ac3b671947588c52e53f26426877fd37a2e7bdfcd9819a6cbb7e3a7.wgsl", + "byteLength": 418, + "sha256": "b3128f8b5ac3b671947588c52e53f26426877fd37a2e7bdfcd9819a6cbb7e3a7" + }, + { + "path": "kernels/b3bb2905555188f535b6b8bc1d050c142b5fea8222d9ef193466f80aa2c54dea.wgsl", + "byteLength": 556, + "sha256": "b3bb2905555188f535b6b8bc1d050c142b5fea8222d9ef193466f80aa2c54dea" + }, + { + "path": "kernels/b3c44f5f11a5fcc5c32ce6a1167f2b1232839113872306dcd7023ad9fe385c29.wgsl", + "byteLength": 288, + "sha256": "b3c44f5f11a5fcc5c32ce6a1167f2b1232839113872306dcd7023ad9fe385c29" + }, + { + "path": "kernels/b44895294a35fd06948d21f6d4c53f7daa28386437f8e19488befb3b41e193b9.wgsl", + "byteLength": 1017, + "sha256": "b44895294a35fd06948d21f6d4c53f7daa28386437f8e19488befb3b41e193b9" + }, + { + "path": "kernels/b57928140994202536cd4f99d2e14f5dba9754f014843673790d5d48c9cbb9ab.wgsl", + "byteLength": 390, + "sha256": "b57928140994202536cd4f99d2e14f5dba9754f014843673790d5d48c9cbb9ab" + }, + { + "path": "kernels/b5984ff6eb9e56ef0f9930f775c1dc3c203eec15924e5fea4c2525b2ce180857.wgsl", + "byteLength": 405, + "sha256": "b5984ff6eb9e56ef0f9930f775c1dc3c203eec15924e5fea4c2525b2ce180857" + }, + { + "path": "kernels/b64a63c60f91d717d7879df834c3443b1675c875093fad7b05da47fac5d61fc4.wgsl", + "byteLength": 413, + "sha256": "b64a63c60f91d717d7879df834c3443b1675c875093fad7b05da47fac5d61fc4" + }, + { + "path": "kernels/b6c3ce0defd66eef66dc3fd6eb9eab3fee12d179332698c3c764009988628b49.wgsl", + "byteLength": 326, + "sha256": "b6c3ce0defd66eef66dc3fd6eb9eab3fee12d179332698c3c764009988628b49" + }, + { + "path": "kernels/bb7f03e6a2277dc56084e9130086507be58871253867c0ce8ad60ee5ce4521b6.wgsl", + "byteLength": 421, + "sha256": "bb7f03e6a2277dc56084e9130086507be58871253867c0ce8ad60ee5ce4521b6" + }, + { + "path": "kernels/bb9029b667eeb13670d1f640cd677c6eabd7a7569686c599e3eeb9482d642b00.wgsl", + "byteLength": 373, + "sha256": "bb9029b667eeb13670d1f640cd677c6eabd7a7569686c599e3eeb9482d642b00" + }, + { + "path": "kernels/bc22275618821f75af681d7a4d901fcd863aefc1ab3cf44da85ef9b0cf8b6790.wgsl", + "byteLength": 665, + "sha256": "bc22275618821f75af681d7a4d901fcd863aefc1ab3cf44da85ef9b0cf8b6790" + }, + { + "path": "kernels/bc3debb5b2d1630349d983f26929555c7a91b4c38435f2c464c6c66a52b9c566.wgsl", + "byteLength": 851, + "sha256": "bc3debb5b2d1630349d983f26929555c7a91b4c38435f2c464c6c66a52b9c566" + }, + { + "path": "kernels/bcb78b92dbbfeb212c190e064bc2f9d8e79c201398cf38c9aa62df6fdba94469.wgsl", + "byteLength": 401, + "sha256": "bcb78b92dbbfeb212c190e064bc2f9d8e79c201398cf38c9aa62df6fdba94469" + }, + { + "path": "kernels/bd70e4fc42ac55f0f52612841bcc3f9fe7df5bbb0fc76f94e56a131a92454658.wgsl", + "byteLength": 416, + "sha256": "bd70e4fc42ac55f0f52612841bcc3f9fe7df5bbb0fc76f94e56a131a92454658" + }, + { + "path": "kernels/bd8a785d4fbf09918f149c7eb5f34bd25f9358bf3412e27799a7c65436c71759.wgsl", + "byteLength": 383, + "sha256": "bd8a785d4fbf09918f149c7eb5f34bd25f9358bf3412e27799a7c65436c71759" + }, + { + "path": "kernels/bda7ebd3bcf25c31938fca1a582e82b972ab742f85f826f085417b0e6f651e60.wgsl", + "byteLength": 556, + "sha256": "bda7ebd3bcf25c31938fca1a582e82b972ab742f85f826f085417b0e6f651e60" + }, + { + "path": "kernels/bef5f6c8b48be4a0ecba85dcd4db622fd9c6bab0faa36f780a7ded694bbfde39.wgsl", + "byteLength": 1025, + "sha256": "bef5f6c8b48be4a0ecba85dcd4db622fd9c6bab0faa36f780a7ded694bbfde39" + }, + { + "path": "kernels/c02ac02d110c0be5d0990d20ab0d8c7a081c74f4e147f083789a203f22fc3258.wgsl", + "byteLength": 383, + "sha256": "c02ac02d110c0be5d0990d20ab0d8c7a081c74f4e147f083789a203f22fc3258" + }, + { + "path": "kernels/c0a7f99d0ce8f9a199b9baa52effe47afa9605f77405c32b32d132be1f7404f1.wgsl", + "byteLength": 286, + "sha256": "c0a7f99d0ce8f9a199b9baa52effe47afa9605f77405c32b32d132be1f7404f1" + }, + { + "path": "kernels/c0b2947798baa198598d75ca0e5dcd31a9fa320499665e34f7bb81d27fc15fb0.wgsl", + "byteLength": 307, + "sha256": "c0b2947798baa198598d75ca0e5dcd31a9fa320499665e34f7bb81d27fc15fb0" + }, + { + "path": "kernels/c1096000361a304457865401d6266a640469ca04c0bbfe2eaa657e656b2fca33.wgsl", + "byteLength": 459, + "sha256": "c1096000361a304457865401d6266a640469ca04c0bbfe2eaa657e656b2fca33" + }, + { + "path": "kernels/c23bee3c3664172bf0a078a96acd2b3ad3136732234975f757d313e696c2c37a.wgsl", + "byteLength": 381, + "sha256": "c23bee3c3664172bf0a078a96acd2b3ad3136732234975f757d313e696c2c37a" + }, + { + "path": "kernels/c24c7e6057a3ab4778def9751ec5123025ec0e36139db626eccc4a9151bc6cc3.wgsl", + "byteLength": 387, + "sha256": "c24c7e6057a3ab4778def9751ec5123025ec0e36139db626eccc4a9151bc6cc3" + }, + { + "path": "kernels/c295fd955666232c92869895d186ebd33a25e4a5bf14df41d5b455fbe304d007.wgsl", + "byteLength": 382, + "sha256": "c295fd955666232c92869895d186ebd33a25e4a5bf14df41d5b455fbe304d007" + }, + { + "path": "kernels/c2c557bad313dd62b6319363dd3b6b7224c3b64768c5303080a9743abb736117.wgsl", + "byteLength": 1410, + "sha256": "c2c557bad313dd62b6319363dd3b6b7224c3b64768c5303080a9743abb736117" + }, + { + "path": "kernels/c2c806bbe93f09247867b4ace45489a5f2fe3ee67f265418eb7aa71a29880276.wgsl", + "byteLength": 315, + "sha256": "c2c806bbe93f09247867b4ace45489a5f2fe3ee67f265418eb7aa71a29880276" + }, + { + "path": "kernels/c2e7cdc03edb25ef7a160965c17c559b6ec7e139c145dc7390b73523bacba5bb.wgsl", + "byteLength": 288, + "sha256": "c2e7cdc03edb25ef7a160965c17c559b6ec7e139c145dc7390b73523bacba5bb" + }, + { + "path": "kernels/c34050971c037d57e84cc2cb44cf16ab73314cd30068d733c5ca430df1eea52d.wgsl", + "byteLength": 663, + "sha256": "c34050971c037d57e84cc2cb44cf16ab73314cd30068d733c5ca430df1eea52d" + }, + { + "path": "kernels/c342e2d29647509fe0f6ac1e2dbbe74032dbe9ecd6229c03557b86f160381d2e.wgsl", + "byteLength": 385, + "sha256": "c342e2d29647509fe0f6ac1e2dbbe74032dbe9ecd6229c03557b86f160381d2e" + }, + { + "path": "kernels/c3735f34cafbac42efa5928641cefdaf7277659cc2675a36756bba97240ba5ae.wgsl", + "byteLength": 414, + "sha256": "c3735f34cafbac42efa5928641cefdaf7277659cc2675a36756bba97240ba5ae" + }, + { + "path": "kernels/c3b8a95df30cf49f5ba2a9aa459e227338c340989ea076b9cf7fc3d09ba103a4.wgsl", + "byteLength": 851, + "sha256": "c3b8a95df30cf49f5ba2a9aa459e227338c340989ea076b9cf7fc3d09ba103a4" + }, + { + "path": "kernels/c4862be63d2532b6891da039edbef2f46737a34518f8a89602821e00447b5933.wgsl", + "byteLength": 385, + "sha256": "c4862be63d2532b6891da039edbef2f46737a34518f8a89602821e00447b5933" + }, + { + "path": "kernels/c6fea77f6311ccf6eef6061338d5de46f7bd66317a5a8448d52c3cfd72f6c541.wgsl", + "byteLength": 1025, + "sha256": "c6fea77f6311ccf6eef6061338d5de46f7bd66317a5a8448d52c3cfd72f6c541" + }, + { + "path": "kernels/c72041e82befee6919af48775291256e22a43dc6445ef0aa288db6b96585a2a9.wgsl", + "byteLength": 286, + "sha256": "c72041e82befee6919af48775291256e22a43dc6445ef0aa288db6b96585a2a9" + }, + { + "path": "kernels/c804a18a7bed0d1c647838cab84658e1a40005fc2100decef96e2ed66e1f8c0b.wgsl", + "byteLength": 415, + "sha256": "c804a18a7bed0d1c647838cab84658e1a40005fc2100decef96e2ed66e1f8c0b" + }, + { + "path": "kernels/c83a2a6faf563ec3bbad43a3e108d58c09cd8aeed01b38e4e82d1c3c9b650c21.wgsl", + "byteLength": 378, + "sha256": "c83a2a6faf563ec3bbad43a3e108d58c09cd8aeed01b38e4e82d1c3c9b650c21" + }, + { + "path": "kernels/c8c077eea97ee78f1f10dacccd47d60cd76278ea99d0863ce3ca8f16601785bd.wgsl", + "byteLength": 411, + "sha256": "c8c077eea97ee78f1f10dacccd47d60cd76278ea99d0863ce3ca8f16601785bd" + }, + { + "path": "kernels/c90428425f6d220b441e97e3b894adfb090869c98b17f53afbd2f9fb202b4525.wgsl", + "byteLength": 307, + "sha256": "c90428425f6d220b441e97e3b894adfb090869c98b17f53afbd2f9fb202b4525" + }, + { + "path": "kernels/c9d90936ab6b78afdcd34c23c05b9b3cd93c021ccf9ac1645714b6a919f6dfbd.wgsl", + "byteLength": 663, + "sha256": "c9d90936ab6b78afdcd34c23c05b9b3cd93c021ccf9ac1645714b6a919f6dfbd" + }, + { + "path": "kernels/c9dce107dfa3160c552e0381c1859565c3e7e014e76b9a5c9845a7aa9979866a.wgsl", + "byteLength": 377, + "sha256": "c9dce107dfa3160c552e0381c1859565c3e7e014e76b9a5c9845a7aa9979866a" + }, + { + "path": "kernels/ca9a3115f8f3881eee99e421cb4f259113b13bb4c107348279bb92c643a52197.wgsl", + "byteLength": 311, + "sha256": "ca9a3115f8f3881eee99e421cb4f259113b13bb4c107348279bb92c643a52197" + }, + { + "path": "kernels/cc250879ffbf43ba05860b5a86f6a824e8ca7b4c9f820137a68e1ba633e09738.wgsl", + "byteLength": 573, + "sha256": "cc250879ffbf43ba05860b5a86f6a824e8ca7b4c9f820137a68e1ba633e09738" + }, + { + "path": "kernels/ccb303d2d38ef10c1cf514f01ec2fa3b2541734aca8a34b3e8bb8d71d03a6688.wgsl", + "byteLength": 603, + "sha256": "ccb303d2d38ef10c1cf514f01ec2fa3b2541734aca8a34b3e8bb8d71d03a6688" + }, + { + "path": "kernels/cd74e23e4f4177562ffb4c00641720b63d154cea3600f6177e01985d74784f37.wgsl", + "byteLength": 419, + "sha256": "cd74e23e4f4177562ffb4c00641720b63d154cea3600f6177e01985d74784f37" + }, + { + "path": "kernels/cdc784b39918d10424edc08d2e44da0075863e8fd41ae362f5695a248363531d.wgsl", + "byteLength": 1406, + "sha256": "cdc784b39918d10424edc08d2e44da0075863e8fd41ae362f5695a248363531d" + }, + { + "path": "kernels/d0be84d22b9e3b0cf73729e9a6fad1c6cf7d03fa01b45b8765ed70158578f2a9.wgsl", + "byteLength": 408, + "sha256": "d0be84d22b9e3b0cf73729e9a6fad1c6cf7d03fa01b45b8765ed70158578f2a9" + }, + { + "path": "kernels/d155dd8abb0fe375aea320241d54486b2489a35ad76150cc77c4778bfbb9d957.wgsl", + "byteLength": 390, + "sha256": "d155dd8abb0fe375aea320241d54486b2489a35ad76150cc77c4778bfbb9d957" + }, + { + "path": "kernels/d2866fd21f58839ea7d43bf83fde4243c38e4f1771034520abb020be5d819a96.wgsl", + "byteLength": 375, + "sha256": "d2866fd21f58839ea7d43bf83fde4243c38e4f1771034520abb020be5d819a96" + }, + { + "path": "kernels/d418d3ee7df4b3d5c78742deeebd6338ae749b09cf5eadb52cc4e68bbd9ce3fa.wgsl", + "byteLength": 663, + "sha256": "d418d3ee7df4b3d5c78742deeebd6338ae749b09cf5eadb52cc4e68bbd9ce3fa" + }, + { + "path": "kernels/d44354e74d5bfca2fb879607683c5d04cb30c4e1a694270584a01c0c6b3d9be8.wgsl", + "byteLength": 288, + "sha256": "d44354e74d5bfca2fb879607683c5d04cb30c4e1a694270584a01c0c6b3d9be8" + }, + { + "path": "kernels/d8757289e027d60366190dda56db53f6d6a3358fd813e84ca58f2076ddb0bf3e.wgsl", + "byteLength": 378, + "sha256": "d8757289e027d60366190dda56db53f6d6a3358fd813e84ca58f2076ddb0bf3e" + }, + { + "path": "kernels/d8c79a22e83e4a3b75b732bffa9ca673713bb57d580c5af4e59c805645ff1ca3.wgsl", + "byteLength": 309, + "sha256": "d8c79a22e83e4a3b75b732bffa9ca673713bb57d580c5af4e59c805645ff1ca3" + }, + { + "path": "kernels/da7c63a84d7f2c46e8234a34c0905cfad6229740145070df00819509f8ab39de.wgsl", + "byteLength": 288, + "sha256": "da7c63a84d7f2c46e8234a34c0905cfad6229740145070df00819509f8ab39de" + }, + { + "path": "kernels/dd544e5a005b68617e9a3557e1d24dd6282a5a62f47cae4cc41b619d3a1cd603.wgsl", + "byteLength": 582, + "sha256": "dd544e5a005b68617e9a3557e1d24dd6282a5a62f47cae4cc41b619d3a1cd603" + }, + { + "path": "kernels/de276eae1430ed164ae977ce4b005301ea0f2652bed1f879acb3a355e600ff5e.wgsl", + "byteLength": 365, + "sha256": "de276eae1430ed164ae977ce4b005301ea0f2652bed1f879acb3a355e600ff5e" + }, + { + "path": "kernels/de4b2b6e4d6c225d58c25261df5c8f73711c3bbbd04a31d1ea5c5bffc827c6e9.wgsl", + "byteLength": 315, + "sha256": "de4b2b6e4d6c225d58c25261df5c8f73711c3bbbd04a31d1ea5c5bffc827c6e9" + }, + { + "path": "kernels/de637d523e83fc454a935515d5d0b5fd029fe23bb9dcd734e82e682fd741b32d.wgsl", + "byteLength": 1385, + "sha256": "de637d523e83fc454a935515d5d0b5fd029fe23bb9dcd734e82e682fd741b32d" + }, + { + "path": "kernels/deb451a300a279d0325fe3be090515d4daae6b3232d87b8e2c050991388ac00f.wgsl", + "byteLength": 373, + "sha256": "deb451a300a279d0325fe3be090515d4daae6b3232d87b8e2c050991388ac00f" + }, + { + "path": "kernels/deee894ecb86334ff82870260fc5edbc36439c1d3bce09fab5708c03d699b390.wgsl", + "byteLength": 367, + "sha256": "deee894ecb86334ff82870260fc5edbc36439c1d3bce09fab5708c03d699b390" + }, + { + "path": "kernels/e01dc46d731ca9d3358814482da28b4edb8496243937be85ddde86a02a215169.wgsl", + "byteLength": 377, + "sha256": "e01dc46d731ca9d3358814482da28b4edb8496243937be85ddde86a02a215169" + }, + { + "path": "kernels/e0811c2ada7eb4498201ac912dc9198cdd5f5904d94b2caa1b7a37e7bd9dc030.wgsl", + "byteLength": 1410, + "sha256": "e0811c2ada7eb4498201ac912dc9198cdd5f5904d94b2caa1b7a37e7bd9dc030" + }, + { + "path": "kernels/e1866b6254f7909c12ae9d54062b0ecf0067d708abb37c1e051ef870bd2203d7.wgsl", + "byteLength": 419, + "sha256": "e1866b6254f7909c12ae9d54062b0ecf0067d708abb37c1e051ef870bd2203d7" + }, + { + "path": "kernels/e1a249dce7a17d3c8504f99f72c8bdd539676dfd8fc7efe939ddb9348d423084.wgsl", + "byteLength": 1025, + "sha256": "e1a249dce7a17d3c8504f99f72c8bdd539676dfd8fc7efe939ddb9348d423084" + }, + { + "path": "kernels/e26328df0e65bd3b1aa31d12ed34e71b1b4b309d708bd58badcabad803bca34a.wgsl", + "byteLength": 415, + "sha256": "e26328df0e65bd3b1aa31d12ed34e71b1b4b309d708bd58badcabad803bca34a" + }, + { + "path": "kernels/e369b5c120d84bfebbc35e3da096c33e55d20a607aecd5d82da5de4c95176e00.wgsl", + "byteLength": 610, + "sha256": "e369b5c120d84bfebbc35e3da096c33e55d20a607aecd5d82da5de4c95176e00" + }, + { + "path": "kernels/e38b21c1b50403e478d2d4956df390560aa740de2dcba8d69322d996c998adf4.wgsl", + "byteLength": 408, + "sha256": "e38b21c1b50403e478d2d4956df390560aa740de2dcba8d69322d996c998adf4" + }, + { + "path": "kernels/e3c6a64e01b6ea79adf125ff00a6dcf00f0b65aee0f4a3d14fdbc20e5dfeb22d.wgsl", + "byteLength": 411, + "sha256": "e3c6a64e01b6ea79adf125ff00a6dcf00f0b65aee0f4a3d14fdbc20e5dfeb22d" + }, + { + "path": "kernels/e625a45b19e2fcc344b9bacb77fedc85870817ec32f34118246c8cb7b01f71e9.wgsl", + "byteLength": 1382, + "sha256": "e625a45b19e2fcc344b9bacb77fedc85870817ec32f34118246c8cb7b01f71e9" + }, + { + "path": "kernels/e6571e9ffa79d4f7888d606a5845a6fe7d39e3b7944eafb979c162a384245c66.wgsl", + "byteLength": 385, + "sha256": "e6571e9ffa79d4f7888d606a5845a6fe7d39e3b7944eafb979c162a384245c66" + }, + { + "path": "kernels/e74eaedc2b731f96007caaea3db1518767845c24bc917b9c2b71553e22139130.wgsl", + "byteLength": 383, + "sha256": "e74eaedc2b731f96007caaea3db1518767845c24bc917b9c2b71553e22139130" + }, + { + "path": "kernels/e829b3bd2efe5b094dc36238e2a933a1e30c942efddfc80e79862a55c57e6e20.wgsl", + "byteLength": 459, + "sha256": "e829b3bd2efe5b094dc36238e2a933a1e30c942efddfc80e79862a55c57e6e20" + }, + { + "path": "kernels/e84c817e08236e486418f6b0b81f5abd27756f82be67cfbc15736410ac3c7e5d.wgsl", + "byteLength": 299, + "sha256": "e84c817e08236e486418f6b0b81f5abd27756f82be67cfbc15736410ac3c7e5d" + }, + { + "path": "kernels/e8f318242666dd54f6bcb99ee9bea81797d22fb0c3530388b72aee83bccdc96a.wgsl", + "byteLength": 1385, + "sha256": "e8f318242666dd54f6bcb99ee9bea81797d22fb0c3530388b72aee83bccdc96a" + }, + { + "path": "kernels/e91fae5817b3b5e4b0025d4fa70d4cfa10b010d038a3f45c6348d25379df287d.wgsl", + "byteLength": 413, + "sha256": "e91fae5817b3b5e4b0025d4fa70d4cfa10b010d038a3f45c6348d25379df287d" + }, + { + "path": "kernels/eb062a9b5fdad085ac68638dd1218cd210d2aad87bd96e2adf505571076b881b.wgsl", + "byteLength": 661, + "sha256": "eb062a9b5fdad085ac68638dd1218cd210d2aad87bd96e2adf505571076b881b" + }, + { + "path": "kernels/eb52355cc0ef7f698f9c4a5667eb20a31652d69cdab4e0f0774b81464b9528ca.wgsl", + "byteLength": 652, + "sha256": "eb52355cc0ef7f698f9c4a5667eb20a31652d69cdab4e0f0774b81464b9528ca" + }, + { + "path": "kernels/eb77480d0d0529a45f6e0a1967f433c32b47ac7282ccc895f89d076949a71fbf.wgsl", + "byteLength": 663, + "sha256": "eb77480d0d0529a45f6e0a1967f433c32b47ac7282ccc895f89d076949a71fbf" + }, + { + "path": "kernels/ec17c9e66b2ad1dbed2547b1df93357497b8fca1052cd2375de06b2925123a97.wgsl", + "byteLength": 1385, + "sha256": "ec17c9e66b2ad1dbed2547b1df93357497b8fca1052cd2375de06b2925123a97" + }, + { + "path": "kernels/ec606c53f8610fff07d8464d8f1cd2a909203cd4064d1be19ad9bdb42263794d.wgsl", + "byteLength": 596, + "sha256": "ec606c53f8610fff07d8464d8f1cd2a909203cd4064d1be19ad9bdb42263794d" + }, + { + "path": "kernels/edfa4ff396bf5cc3be28d9051639c4dda6fec1302d7a2bd34d89ec903af94af1.wgsl", + "byteLength": 307, + "sha256": "edfa4ff396bf5cc3be28d9051639c4dda6fec1302d7a2bd34d89ec903af94af1" + }, + { + "path": "kernels/eea033222d278c8aa8f4b0de36243adba4e5b6ce274d24a3dcd365ad42c19a38.wgsl", + "byteLength": 410, + "sha256": "eea033222d278c8aa8f4b0de36243adba4e5b6ce274d24a3dcd365ad42c19a38" + }, + { + "path": "kernels/ef364f47cced448917d1b6842c708dee101d53d7a781014f9a822214cea72bf8.wgsl", + "byteLength": 849, + "sha256": "ef364f47cced448917d1b6842c708dee101d53d7a781014f9a822214cea72bf8" + }, + { + "path": "kernels/ef9aa0463882f8482e3a4e9ee97d5101a06c94645292cfdcf2deeff81ee4a284.wgsl", + "byteLength": 292, + "sha256": "ef9aa0463882f8482e3a4e9ee97d5101a06c94645292cfdcf2deeff81ee4a284" + }, + { + "path": "kernels/efacc40901cd20fbccdbd5fff0b0b52af2860746708640ae1907d6be212f5f86.wgsl", + "byteLength": 660, + "sha256": "efacc40901cd20fbccdbd5fff0b0b52af2860746708640ae1907d6be212f5f86" + }, + { + "path": "kernels/efcecdf33b6927a4add3f254d95cad6d18d755d65e3f4873e8b7f5c057646a9b.wgsl", + "byteLength": 374, + "sha256": "efcecdf33b6927a4add3f254d95cad6d18d755d65e3f4873e8b7f5c057646a9b" + }, + { + "path": "kernels/f114c5cb9f1a7e377d9a3bcb28ab15b72807ece1796cf9c02fc74e7ce7318cc3.wgsl", + "byteLength": 341, + "sha256": "f114c5cb9f1a7e377d9a3bcb28ab15b72807ece1796cf9c02fc74e7ce7318cc3" + }, + { + "path": "kernels/f233dea95d020538ac476af9846f67cba0d137fd562d5f652cb333f0b3273c76.wgsl", + "byteLength": 322, + "sha256": "f233dea95d020538ac476af9846f67cba0d137fd562d5f652cb333f0b3273c76" + }, + { + "path": "kernels/f23ccedb2e02f7ccd40a4171c0a1ced4c4e7eec4dc1ed9604f668f691baa68e2.wgsl", + "byteLength": 294, + "sha256": "f23ccedb2e02f7ccd40a4171c0a1ced4c4e7eec4dc1ed9604f668f691baa68e2" + }, + { + "path": "kernels/f276cf6656b999339df464b61934487f5c8eb7a0957cf6d902254ab1aa2ffcd0.wgsl", + "byteLength": 561, + "sha256": "f276cf6656b999339df464b61934487f5c8eb7a0957cf6d902254ab1aa2ffcd0" + }, + { + "path": "kernels/f2ee90b3d949141c23610237d27d44a7b833aacae8cdbc2e42a595d5eb7b5537.wgsl", + "byteLength": 408, + "sha256": "f2ee90b3d949141c23610237d27d44a7b833aacae8cdbc2e42a595d5eb7b5537" + }, + { + "path": "kernels/f30ef45cea0a5e5df2b57e6af796e4798fb3c745a9b0bc926c24ce3cc9dec0da.wgsl", + "byteLength": 310, + "sha256": "f30ef45cea0a5e5df2b57e6af796e4798fb3c745a9b0bc926c24ce3cc9dec0da" + }, + { + "path": "kernels/f43cdd9c75fc256957b1b144a0587e8c8ddea861f991e1cdb6c9098e8b5d6ed7.wgsl", + "byteLength": 394, + "sha256": "f43cdd9c75fc256957b1b144a0587e8c8ddea861f991e1cdb6c9098e8b5d6ed7" + }, + { + "path": "kernels/f45156a1c571e56cf0730c88fcd58dbb5716b2cea086ebb9e0dfedfe5dcbf658.wgsl", + "byteLength": 308, + "sha256": "f45156a1c571e56cf0730c88fcd58dbb5716b2cea086ebb9e0dfedfe5dcbf658" + }, + { + "path": "kernels/f51f5d699193197f0dc7c2d586d727e8e41e465e70ef66e208e568c544524cf4.wgsl", + "byteLength": 411, + "sha256": "f51f5d699193197f0dc7c2d586d727e8e41e465e70ef66e208e568c544524cf4" + }, + { + "path": "kernels/f5b51b1e0e52bd87a70a0ca169186ebb5734cbdc2b8f375ba0241485b1df4e66.wgsl", + "byteLength": 371, + "sha256": "f5b51b1e0e52bd87a70a0ca169186ebb5734cbdc2b8f375ba0241485b1df4e66" + }, + { + "path": "kernels/f5e16141122c02a1ec56f8155742fd5314ab581eac810352c06abea3f9c57690.wgsl", + "byteLength": 312, + "sha256": "f5e16141122c02a1ec56f8155742fd5314ab581eac810352c06abea3f9c57690" + }, + { + "path": "kernels/f5f6f056866d42771d34664166a72300424224e9d6bd1d57de1805e7476a2050.wgsl", + "byteLength": 378, + "sha256": "f5f6f056866d42771d34664166a72300424224e9d6bd1d57de1805e7476a2050" + }, + { + "path": "kernels/f64c470f9333da8111720c1b00d9aa0e63ea21435bba9c9550e93a2c75c639bd.wgsl", + "byteLength": 1029, + "sha256": "f64c470f9333da8111720c1b00d9aa0e63ea21435bba9c9550e93a2c75c639bd" + }, + { + "path": "kernels/f66b0b2ea4229895bb6599fb5d3528be17eb9020c19829b54dd0fbb4d4857039.wgsl", + "byteLength": 381, + "sha256": "f66b0b2ea4229895bb6599fb5d3528be17eb9020c19829b54dd0fbb4d4857039" + }, + { + "path": "kernels/f6ccc1a43bc7cbaab21e08ce5de522f383236035c835289025961d70c49c60e8.wgsl", + "byteLength": 296, + "sha256": "f6ccc1a43bc7cbaab21e08ce5de522f383236035c835289025961d70c49c60e8" + }, + { + "path": "kernels/f73912607dffcf0ee27e9e1e1d342a3bef8f998e02cd06a8352524ef35a96d17.wgsl", + "byteLength": 599, + "sha256": "f73912607dffcf0ee27e9e1e1d342a3bef8f998e02cd06a8352524ef35a96d17" + }, + { + "path": "kernels/f84306aa81033babc4c37ecfb91a411dba2ccee17202615deefb2206add106e2.wgsl", + "byteLength": 367, + "sha256": "f84306aa81033babc4c37ecfb91a411dba2ccee17202615deefb2206add106e2" + }, + { + "path": "kernels/f8460b61ea8ab5946764c8a8fa3a6aa4a51c4db1e30f5f1d3e3f0f2f1635a964.wgsl", + "byteLength": 390, + "sha256": "f8460b61ea8ab5946764c8a8fa3a6aa4a51c4db1e30f5f1d3e3f0f2f1635a964" + }, + { + "path": "kernels/f95724b4a3d2dbafaccd23a45f68234bb49e4a39168942060ca628960993f33d.wgsl", + "byteLength": 408, + "sha256": "f95724b4a3d2dbafaccd23a45f68234bb49e4a39168942060ca628960993f33d" + }, + { + "path": "kernels/f994142054bcb47d6a554524dd8de9c3054467a1d07011027c47f475d0909c19.wgsl", + "byteLength": 845, + "sha256": "f994142054bcb47d6a554524dd8de9c3054467a1d07011027c47f475d0909c19" + }, + { + "path": "kernels/fa7c163b443e5f494b83f24da518fcad3e353d6e85facc3e3478f6005f964bd6.wgsl", + "byteLength": 396, + "sha256": "fa7c163b443e5f494b83f24da518fcad3e353d6e85facc3e3478f6005f964bd6" + }, + { + "path": "kernels/fa90a055381629df20c59052b5e44670510dd1666b9f2b06a554dfed9a002953.wgsl", + "byteLength": 371, + "sha256": "fa90a055381629df20c59052b5e44670510dd1666b9f2b06a554dfed9a002953" + }, + { + "path": "kernels/fb200142bcbd435ed588a9fc45924edb21845ff3ab0ddb0271c5d5d03adf04bb.wgsl", + "byteLength": 374, + "sha256": "fb200142bcbd435ed588a9fc45924edb21845ff3ab0ddb0271c5d5d03adf04bb" + }, + { + "path": "kernels/fe8df26d9dca2aca6a22429dd9ab2c28acaba4e0caac80bf83ea8683b267ff25.wgsl", + "byteLength": 1382, + "sha256": "fe8df26d9dca2aca6a22429dd9ab2c28acaba4e0caac80bf83ea8683b267ff25" + }, + { + "path": "kernels/ff97954146b9a2a73ef2cfaa925f51254fc65b4eabcafb4ed57005054acd64b3.wgsl", + "byteLength": 663, + "sha256": "ff97954146b9a2a73ef2cfaa925f51254fc65b4eabcafb4ed57005054acd64b3" + }, + { + "path": "kernels/ffd61bbf56bbbbf8d09f9d601173f529b4c4039901ae92ddbbbf3aab411547a1.wgsl", + "byteLength": 656, + "sha256": "ffd61bbf56bbbbf8d09f9d601173f529b4c4039901ae92ddbbbf3aab411547a1" + } + ], + "metadata": { + "repository": "Qwen/Qwen3.5-2B", + "revision": "15852e8c16360a2fea060d615a32b45270f8a8fc", + "architecture": "qwen3_5", + "modalities": [ + "text", + "image" + ], + "license": "apache-2.0", + "sourceWeights": [ + { + "path": "model.safetensors-00001-of-00001.safetensors", + "sha256": "aa33250c4fc64891ddfaba3a314fd9542ea371843c387178b425fbcc5ed680b1" + } + ], + "profile": "fp32-multimodal", + "prefill": "multimodal-block", + "checkpointCertified": false, + "quantizationSelection": { + "include": [], + "exclude": [] + } + }, + "validation": { + "checkpointCertified": false, + "hardware": [] + }, + "generation": { + "contextLength": 4096, + "inputIds": "input_ids", + "positionIds": "position_ids", + "attentionMask": "attention_mask", + "logits": "linear_186", + "eosTokenIds": [ + 248044 + ], + "tokenizer": "tokenizer/tokenizer.json", + "tokenizerConfig": "tokenizer/tokenizer_config.json", + "chatTemplate": "tokenizer/chat_template.jinja", + "vision": { + "imageTokenId": 248056, + "imageEmbedding": "image_embedding", + "isImage": "is_image", + "cachePosition": "cache_position", + "hiddenSize": 2048, + "minPixels": 65536, + "maxPixels": 262144, + "factor": 32, + "models": [ + { + "path": "vision/256x384/manifest.json", + "grid": [ + 1, + 16, + 24 + ], + "outputIndex": 1 + }, + { + "path": "vision/416x608/manifest.json", + "grid": [ + 1, + 26, + 38 + ], + "outputIndex": 1 + }, + { + "path": "vision/384x256/manifest.json", + "grid": [ + 1, + 24, + 16 + ], + "outputIndex": 1 + } + ] + }, + "prefillEntrypoints": { + "4": "prefill-mm-4", + "16": "prefill-mm-16", + "64": "prefill-mm-64" + }, + "prefillDefault": true + } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/source/LICENSE b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/source/LICENSE new file mode 100644 index 0000000000000000000000000000000000000000..f938136e3adacfd92be087f6e113b5d6d97f678f --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/source/LICENSE @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright 2026 Alibaba Cloud + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. \ No newline at end of file diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/source/config.json b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/source/config.json new file mode 100644 index 0000000000000000000000000000000000000000..d30a15be1bbfd610f58ad80f1fbeb6778f58a80f --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/source/config.json @@ -0,0 +1,96 @@ +{ + "architectures": [ + "Qwen3_5ForConditionalGeneration" + ], + "image_token_id": 248056, + "model_type": "qwen3_5", + "text_config": { + "attention_bias": false, + "attention_dropout": 0.0, + "attn_output_gate": true, + "dtype": "bfloat16", + "eos_token_id": 248044, + "full_attention_interval": 4, + "head_dim": 256, + "hidden_act": "silu", + "hidden_size": 2048, + "initializer_range": 0.02, + "intermediate_size": 6144, + "layer_types": [ + "linear_attention", + "linear_attention", + "linear_attention", + "full_attention", + "linear_attention", + "linear_attention", + "linear_attention", + "full_attention", + "linear_attention", + "linear_attention", + "linear_attention", + "full_attention", + "linear_attention", + "linear_attention", + "linear_attention", + "full_attention", + "linear_attention", + "linear_attention", + "linear_attention", + "full_attention", + "linear_attention", + "linear_attention", + "linear_attention", + "full_attention" + ], + "linear_conv_kernel_dim": 4, + "linear_key_head_dim": 128, + "linear_num_key_heads": 16, + "linear_num_value_heads": 16, + "linear_value_head_dim": 128, + "max_position_embeddings": 262144, + "mlp_only_layers": [], + "model_type": "qwen3_5_text", + "mtp_num_hidden_layers": 1, + "mtp_use_dedicated_embeddings": false, + "num_attention_heads": 8, + "num_hidden_layers": 24, + "num_key_value_heads": 2, + "rms_norm_eps": 1e-06, + "tie_word_embeddings": true, + "use_cache": true, + "vocab_size": 248320, + "mamba_ssm_dtype": "float32", + "rope_parameters": { + "mrope_interleaved": true, + "mrope_section": [ + 11, + 11, + 10 + ], + "rope_type": "default", + "rope_theta": 10000000, + "partial_rotary_factor": 0.25 + } + }, + "tie_word_embeddings": true, + "transformers_version": "4.57.0.dev0", + "video_token_id": 248057, + "vision_config": { + "deepstack_visual_indexes": [], + "depth": 24, + "hidden_act": "gelu_pytorch_tanh", + "hidden_size": 1024, + "in_channels": 3, + "initializer_range": 0.02, + "intermediate_size": 4096, + "model_type": "qwen3_5", + "num_heads": 16, + "num_position_embeddings": 2304, + "out_hidden_size": 2048, + "patch_size": 16, + "spatial_merge_size": 2, + "temporal_patch_size": 2 + }, + "vision_end_token_id": 248054, + "vision_start_token_id": 248053 +} \ No newline at end of file diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/source/preprocessor_config.json b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/source/preprocessor_config.json new file mode 100644 index 0000000000000000000000000000000000000000..2ea84a437d448ff71b08df68fdd949d5cc4ebb64 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/source/preprocessor_config.json @@ -0,0 +1,21 @@ +{ + "size": { + "longest_edge": 16777216, + "shortest_edge": 65536 + }, + "patch_size": 16, + "temporal_patch_size": 2, + "merge_size": 2, + "image_mean": [ + 0.5, + 0.5, + 0.5 + ], + "image_std": [ + 0.5, + 0.5, + 0.5 + ], + "processor_class": "Qwen3VLProcessor", + "image_processor_type": "Qwen2VLImageProcessorFast" +} \ No newline at end of file diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/tokenizer/chat_template.jinja b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/tokenizer/chat_template.jinja new file mode 100644 index 0000000000000000000000000000000000000000..0ef09f214eaa6d9bca297988afc1454b5827b2c7 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/tokenizer/chat_template.jinja @@ -0,0 +1,154 @@ +{%- set image_count = namespace(value=0) %} +{%- set video_count = namespace(value=0) %} +{%- macro render_content(content, do_vision_count, is_system_content=false) %} + {%- if content is string %} + {{- content }} + {%- elif content is iterable and content is not mapping %} + {%- for item in content %} + {%- if 'image' in item or 'image_url' in item or item.type == 'image' %} + {%- if is_system_content %} + {{- raise_exception('System message cannot contain images.') }} + {%- endif %} + {%- if do_vision_count %} + {%- set image_count.value = image_count.value + 1 %} + {%- endif %} + {%- if add_vision_id %} + {{- 'Picture ' ~ image_count.value ~ ': ' }} + {%- endif %} + {{- '<|vision_start|><|image_pad|><|vision_end|>' }} + {%- elif 'video' in item or item.type == 'video' %} + {%- if is_system_content %} + {{- raise_exception('System message cannot contain videos.') }} + {%- endif %} + {%- if do_vision_count %} + {%- set video_count.value = video_count.value + 1 %} + {%- endif %} + {%- if add_vision_id %} + {{- 'Video ' ~ video_count.value ~ ': ' }} + {%- endif %} + {{- '<|vision_start|><|video_pad|><|vision_end|>' }} + {%- elif 'text' in item %} + {{- item.text }} + {%- else %} + {{- raise_exception('Unexpected item type in content.') }} + {%- endif %} + {%- endfor %} + {%- elif content is none or content is undefined %} + {{- '' }} + {%- else %} + {{- raise_exception('Unexpected content type.') }} + {%- endif %} +{%- endmacro %} +{%- if not messages %} + {{- raise_exception('No messages provided.') }} +{%- endif %} +{%- if tools and tools is iterable and tools is not mapping %} + {{- '<|im_start|>system\n' }} + {{- "# Tools\n\nYou have access to the following functions:\n\n" }} + {%- for tool in tools %} + {{- "\n" }} + {{- tool | tojson }} + {%- endfor %} + {{- "\n" }} + {{- '\n\nIf you choose to call a function ONLY reply in the following format with NO suffix:\n\n\n\n\nvalue_1\n\n\nThis is the value for the second parameter\nthat can span\nmultiple lines\n\n\n\n\n\nReminder:\n- Function calls MUST follow the specified format: an inner block must be nested within XML tags\n- Required parameters MUST be specified\n- You may provide optional reasoning for your function call in natural language BEFORE the function call, but NOT after\n- If there is no function call available, answer the question like normal with your current knowledge and do not tell the user about function calls\n' }} + {%- if messages[0].role == 'system' %} + {%- set content = render_content(messages[0].content, false, true)|trim %} + {%- if content %} + {{- '\n\n' + content }} + {%- endif %} + {%- endif %} + {{- '<|im_end|>\n' }} +{%- else %} + {%- if messages[0].role == 'system' %} + {%- set content = render_content(messages[0].content, false, true)|trim %} + {{- '<|im_start|>system\n' + content + '<|im_end|>\n' }} + {%- endif %} +{%- endif %} +{%- set ns = namespace(multi_step_tool=true, last_query_index=messages|length - 1) %} +{%- for message in messages[::-1] %} + {%- set index = (messages|length - 1) - loop.index0 %} + {%- if ns.multi_step_tool and message.role == "user" %} + {%- set content = render_content(message.content, false)|trim %} + {%- if not(content.startswith('') and content.endswith('')) %} + {%- set ns.multi_step_tool = false %} + {%- set ns.last_query_index = index %} + {%- endif %} + {%- endif %} +{%- endfor %} +{%- if ns.multi_step_tool %} + {{- raise_exception('No user query found in messages.') }} +{%- endif %} +{%- for message in messages %} + {%- set content = render_content(message.content, true)|trim %} + {%- if message.role == "system" %} + {%- if not loop.first %} + {{- raise_exception('System message must be at the beginning.') }} + {%- endif %} + {%- elif message.role == "user" %} + {{- '<|im_start|>' + message.role + '\n' + content + '<|im_end|>' + '\n' }} + {%- elif message.role == "assistant" %} + {%- set reasoning_content = '' %} + {%- if message.reasoning_content is string %} + {%- set reasoning_content = message.reasoning_content %} + {%- else %} + {%- if '' in content %} + {%- set reasoning_content = content.split('')[0].rstrip('\n').split('')[-1].lstrip('\n') %} + {%- set content = content.split('')[-1].lstrip('\n') %} + {%- endif %} + {%- endif %} + {%- set reasoning_content = reasoning_content|trim %} + {%- if loop.index0 > ns.last_query_index %} + {{- '<|im_start|>' + message.role + '\n\n' + reasoning_content + '\n\n\n' + content }} + {%- else %} + {{- '<|im_start|>' + message.role + '\n' + content }} + {%- endif %} + {%- if message.tool_calls and message.tool_calls is iterable and message.tool_calls is not mapping %} + {%- for tool_call in message.tool_calls %} + {%- if tool_call.function is defined %} + {%- set tool_call = tool_call.function %} + {%- endif %} + {%- if loop.first %} + {%- if content|trim %} + {{- '\n\n\n\n' }} + {%- else %} + {{- '\n\n' }} + {%- endif %} + {%- else %} + {{- '\n\n\n' }} + {%- endif %} + {%- if tool_call.arguments is defined %} + {%- for args_name, args_value in tool_call.arguments|items %} + {{- '\n' }} + {%- set args_value = args_value | tojson | safe if args_value is mapping or (args_value is sequence and args_value is not string) else args_value | string %} + {{- args_value }} + {{- '\n\n' }} + {%- endfor %} + {%- endif %} + {{- '\n' }} + {%- endfor %} + {%- endif %} + {{- '<|im_end|>\n' }} + {%- elif message.role == "tool" %} + {%- if loop.previtem and loop.previtem.role != "tool" %} + {{- '<|im_start|>user' }} + {%- endif %} + {{- '\n\n' }} + {{- content }} + {{- '\n' }} + {%- if not loop.last and loop.nextitem.role != "tool" %} + {{- '<|im_end|>\n' }} + {%- elif loop.last %} + {{- '<|im_end|>\n' }} + {%- endif %} + {%- else %} + {{- raise_exception('Unexpected message role.') }} + {%- endif %} +{%- endfor %} +{%- if add_generation_prompt %} + {{- '<|im_start|>assistant\n' }} + {%- if enable_thinking is defined and enable_thinking is true %} + {{- '\n' }} + {%- else %} + {{- '\n\n\n\n' }} + {%- endif %} +{%- endif %} \ No newline at end of file diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/tokenizer/tokenizer.json b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/tokenizer/tokenizer.json new file mode 100644 index 0000000000000000000000000000000000000000..a73a846725794819aa6e1c9e97d8dc9671c2006d --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/tokenizer/tokenizer.json @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5f9e4d4901a92b997e463c1f46055088b6cca5ca61a6522d1b9f64c4bb81cb42 +size 12807982 diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/tokenizer/tokenizer_config.json b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/tokenizer/tokenizer_config.json new file mode 100644 index 0000000000000000000000000000000000000000..fae3ce993e07c092ad024dde45e592379fde91bb --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/tokenizer/tokenizer_config.json @@ -0,0 +1,305 @@ +{ + "add_prefix_space": false, + "added_tokens_decoder": { + "248044": { + "content": "<|endoftext|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": true + }, + "248045": { + "content": "<|im_start|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": true + }, + "248046": { + "content": "<|im_end|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": true + }, + "248047": { + "content": "<|object_ref_start|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": true + }, + "248048": { + "content": "<|object_ref_end|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": true + }, + "248049": { + "content": "<|box_start|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": true + }, + "248050": { + "content": "<|box_end|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": true + }, + "248051": { + "content": "<|quad_start|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": true + }, + "248052": { + "content": "<|quad_end|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": true + }, + "248053": { + "content": "<|vision_start|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": true + }, + "248054": { + "content": "<|vision_end|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": true + }, + "248055": { + "content": "<|vision_pad|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": true + }, + "248056": { + "content": "<|image_pad|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": true + }, + "248057": { + "content": "<|video_pad|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": true + }, + "248058": { + "content": "", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": false + }, + "248059": { + "content": "", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": false + }, + "248060": { + "content": "<|fim_prefix|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": false + }, + "248061": { + "content": "<|fim_middle|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": false + }, + "248062": { + "content": "<|fim_suffix|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": false + }, + "248063": { + "content": "<|fim_pad|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": false + }, + "248064": { + "content": "<|repo_name|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": false + }, + "248065": { + "content": "<|file_sep|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": false + }, + "248066": { + "content": "", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": false + }, + "248067": { + "content": "", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": false + }, + "248068": { + "content": "", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": false + }, + "248069": { + "content": "", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": false + }, + "248070": { + "content": "<|audio_start|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": true + }, + "248071": { + "content": "<|audio_end|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": true + }, + "248072": { + "content": "", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": true + }, + "248073": { + "content": "", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": true + }, + "248074": { + "content": "", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": true + }, + "248075": { + "content": "", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": true + }, + "248076": { + "content": "<|audio_pad|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": true + } + }, + "additional_special_tokens": [ + "<|im_start|>", + "<|im_end|>", + "<|object_ref_start|>", + "<|object_ref_end|>", + "<|box_start|>", + "<|box_end|>", + "<|quad_start|>", + "<|quad_end|>", + "<|vision_start|>", + "<|vision_end|>", + "<|vision_pad|>", + "<|image_pad|>", + "<|video_pad|>" + ], + "bos_token": null, + "chat_template": "{%- set image_count = namespace(value=0) %}\n{%- set video_count = namespace(value=0) %}\n{%- macro render_content(content, do_vision_count, is_system_content=false) %}\n {%- if content is string %}\n {{- content }}\n {%- elif content is iterable and content is not mapping %}\n {%- for item in content %}\n {%- if 'image' in item or 'image_url' in item or item.type == 'image' %}\n {%- if is_system_content %}\n {{- raise_exception('System message cannot contain images.') }}\n {%- endif %}\n {%- if do_vision_count %}\n {%- set image_count.value = image_count.value + 1 %}\n {%- endif %}\n {%- if add_vision_id %}\n {{- 'Picture ' ~ image_count.value ~ ': ' }}\n {%- endif %}\n {{- '<|vision_start|><|image_pad|><|vision_end|>' }}\n {%- elif 'video' in item or item.type == 'video' %}\n {%- if is_system_content %}\n {{- raise_exception('System message cannot contain videos.') }}\n {%- endif %}\n {%- if do_vision_count %}\n {%- set video_count.value = video_count.value + 1 %}\n {%- endif %}\n {%- if add_vision_id %}\n {{- 'Video ' ~ video_count.value ~ ': ' }}\n {%- endif %}\n {{- '<|vision_start|><|video_pad|><|vision_end|>' }}\n {%- elif 'text' in item %}\n {{- item.text }}\n {%- else %}\n {{- raise_exception('Unexpected item type in content.') }}\n {%- endif %}\n {%- endfor %}\n {%- elif content is none or content is undefined %}\n {{- '' }}\n {%- else %}\n {{- raise_exception('Unexpected content type.') }}\n {%- endif %}\n{%- endmacro %}\n{%- if not messages %}\n {{- raise_exception('No messages provided.') }}\n{%- endif %}\n{%- if tools and tools is iterable and tools is not mapping %}\n {{- '<|im_start|>system\\n' }}\n {{- \"# Tools\\n\\nYou have access to the following functions:\\n\\n\" }}\n {%- for tool in tools %}\n {{- \"\\n\" }}\n {{- tool | tojson }}\n {%- endfor %}\n {{- \"\\n\" }}\n {{- '\\n\\nIf you choose to call a function ONLY reply in the following format with NO suffix:\\n\\n\\n\\n\\nvalue_1\\n\\n\\nThis is the value for the second parameter\\nthat can span\\nmultiple lines\\n\\n\\n\\n\\n\\nReminder:\\n- Function calls MUST follow the specified format: an inner block must be nested within XML tags\\n- Required parameters MUST be specified\\n- You may provide optional reasoning for your function call in natural language BEFORE the function call, but NOT after\\n- If there is no function call available, answer the question like normal with your current knowledge and do not tell the user about function calls\\n' }}\n {%- if messages[0].role == 'system' %}\n {%- set content = render_content(messages[0].content, false, true)|trim %}\n {%- if content %}\n {{- '\\n\\n' + content }}\n {%- endif %}\n {%- endif %}\n {{- '<|im_end|>\\n' }}\n{%- else %}\n {%- if messages[0].role == 'system' %}\n {%- set content = render_content(messages[0].content, false, true)|trim %}\n {{- '<|im_start|>system\\n' + content + '<|im_end|>\\n' }}\n {%- endif %}\n{%- endif %}\n{%- set ns = namespace(multi_step_tool=true, last_query_index=messages|length - 1) %}\n{%- for message in messages[::-1] %}\n {%- set index = (messages|length - 1) - loop.index0 %}\n {%- if ns.multi_step_tool and message.role == \"user\" %}\n {%- set content = render_content(message.content, false)|trim %}\n {%- if not(content.startswith('') and content.endswith('')) %}\n {%- set ns.multi_step_tool = false %}\n {%- set ns.last_query_index = index %}\n {%- endif %}\n {%- endif %}\n{%- endfor %}\n{%- if ns.multi_step_tool %}\n {{- raise_exception('No user query found in messages.') }}\n{%- endif %}\n{%- for message in messages %}\n {%- set content = render_content(message.content, true)|trim %}\n {%- if message.role == \"system\" %}\n {%- if not loop.first %}\n {{- raise_exception('System message must be at the beginning.') }}\n {%- endif %}\n {%- elif message.role == \"user\" %}\n {{- '<|im_start|>' + message.role + '\\n' + content + '<|im_end|>' + '\\n' }}\n {%- elif message.role == \"assistant\" %}\n {%- set reasoning_content = '' %}\n {%- if message.reasoning_content is string %}\n {%- set reasoning_content = message.reasoning_content %}\n {%- else %}\n {%- if '' in content %}\n {%- set reasoning_content = content.split('')[0].rstrip('\\n').split('')[-1].lstrip('\\n') %}\n {%- set content = content.split('')[-1].lstrip('\\n') %}\n {%- endif %}\n {%- endif %}\n {%- set reasoning_content = reasoning_content|trim %}\n {%- if loop.index0 > ns.last_query_index %}\n {{- '<|im_start|>' + message.role + '\\n\\n' + reasoning_content + '\\n\\n\\n' + content }}\n {%- else %}\n {{- '<|im_start|>' + message.role + '\\n' + content }}\n {%- endif %}\n {%- if message.tool_calls and message.tool_calls is iterable and message.tool_calls is not mapping %}\n {%- for tool_call in message.tool_calls %}\n {%- if tool_call.function is defined %}\n {%- set tool_call = tool_call.function %}\n {%- endif %}\n {%- if loop.first %}\n {%- if content|trim %}\n {{- '\\n\\n\\n\\n' }}\n {%- else %}\n {{- '\\n\\n' }}\n {%- endif %}\n {%- else %}\n {{- '\\n\\n\\n' }}\n {%- endif %}\n {%- if tool_call.arguments is defined %}\n {%- for args_name, args_value in tool_call.arguments|items %}\n {{- '\\n' }}\n {%- set args_value = args_value | tojson | safe if args_value is mapping or (args_value is sequence and args_value is not string) else args_value | string %}\n {{- args_value }}\n {{- '\\n\\n' }}\n {%- endfor %}\n {%- endif %}\n {{- '\\n' }}\n {%- endfor %}\n {%- endif %}\n {{- '<|im_end|>\\n' }}\n {%- elif message.role == \"tool\" %}\n {%- if loop.previtem and loop.previtem.role != \"tool\" %}\n {{- '<|im_start|>user' }}\n {%- endif %}\n {{- '\\n\\n' }}\n {{- content }}\n {{- '\\n' }}\n {%- if not loop.last and loop.nextitem.role != \"tool\" %}\n {{- '<|im_end|>\\n' }}\n {%- elif loop.last %}\n {{- '<|im_end|>\\n' }}\n {%- endif %}\n {%- else %}\n {{- raise_exception('Unexpected message role.') }}\n {%- endif %}\n{%- endfor %}\n{%- if add_generation_prompt %}\n {{- '<|im_start|>assistant\\n' }}\n {%- if enable_thinking is defined and enable_thinking is true %}\n {{- '\\n' }}\n {%- else %}\n {{- '\\n\\n\\n\\n' }}\n {%- endif %}\n{%- endif %}", + "clean_up_tokenization_spaces": false, + "eos_token": "<|im_end|>", + "errors": "replace", + "model_max_length": 262144, + "pad_token": "<|endoftext|>", + "split_special_tokens": false, + "tokenizer_class": "Qwen2Tokenizer", + "unk_token": null, + "add_bos_token": false, + "pretokenize_regex": "(?i:'s|'t|'re|'ve|'m|'ll|'d)|[^\\r\\n\\p{L}\\p{N}]?[\\p{L}\\p{M}]+|\\p{N}| ?[^\\s\\p{L}\\p{M}\\p{N}]+[\\r\\n]*|\\s*[\\r\\n]+|\\s+(?!\\S)|\\s+", + "extra_special_tokens": { + "audio_bos_token": "<|audio_start|>", + "audio_eos_token": "<|audio_end|>", + "audio_token": "<|audio_pad|>", + "image_token": "<|image_pad|>", + "video_token": "<|video_pad|>", + "vision_bos_token": "<|vision_start|>", + "vision_eos_token": "<|vision_end|>" + } +} \ No newline at end of file diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/graph.json b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/graph.json new file mode 100644 index 0000000000000000000000000000000000000000..a8f05e81421fee0fcea7c92c1b0750399623fc5a --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/graph.json @@ -0,0 +1,51123 @@ +{ + "inputs": [ + "pixels" + ], + "outputs": [ + "add_96", + "linear_97" + ], + "tensors": { + "p_visual_patch_embed_proj_weight": { + "shape": [ + 1024, + 3, + 2, + 16, + 16 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 6291456, + "parts": [ + { + "path": "weights/00000.bin", + "offset": 0, + "byteLength": 6291456 + } + ] + }, + "p_visual_patch_embed_proj_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00000.bin", + "offset": 6291456, + "byteLength": 4096 + } + ] + }, + "p_visual_pos_embed_weight": { + "shape": [ + 2304, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4718592, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00000.bin", + "offset": 6295552, + "byteLength": 4718592 + } + ] + }, + "p_visual_blocks_0_norm1_weight": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00000.bin", + "offset": 11014144, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_0_norm1_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00000.bin", + "offset": 11018240, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_0_attn_qkv_weight": { + "shape": [ + 3072, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 6291456, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00000.bin", + "offset": 11022336, + "byteLength": 6291456 + } + ] + }, + "p_visual_blocks_0_attn_qkv_bias": { + "shape": [ + 3072 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 12288, + "parts": [ + { + "path": "weights/00000.bin", + "offset": 17313792, + "byteLength": 12288 + } + ] + }, + "p_visual_blocks_0_attn_proj_weight": { + "shape": [ + 1024, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 2097152, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00000.bin", + "offset": 17326080, + "byteLength": 2097152 + } + ] + }, + "p_visual_blocks_0_attn_proj_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00000.bin", + "offset": 19423232, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_0_norm2_weight": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00000.bin", + "offset": 19427328, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_0_norm2_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00000.bin", + "offset": 19431424, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_0_mlp_linear_fc1_weight": { + "shape": [ + 4096, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 8388608, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00000.bin", + "offset": 19435520, + "byteLength": 8388608 + } + ] + }, + "p_visual_blocks_0_mlp_linear_fc1_bias": { + "shape": [ + 4096 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 16384, + "parts": [ + { + "path": "weights/00000.bin", + "offset": 27824128, + "byteLength": 16384 + } + ] + }, + "p_visual_blocks_0_mlp_linear_fc2_weight": { + "shape": [ + 1024, + 4096 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 8388608, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00000.bin", + "offset": 27840512, + "byteLength": 8388608 + } + ] + }, + "p_visual_blocks_0_mlp_linear_fc2_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00000.bin", + "offset": 36229120, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_1_norm1_weight": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00000.bin", + "offset": 36233216, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_1_norm1_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00000.bin", + "offset": 36237312, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_1_attn_qkv_weight": { + "shape": [ + 3072, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 6291456, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00000.bin", + "offset": 36241408, + "byteLength": 6291456 + } + ] + }, + "p_visual_blocks_1_attn_qkv_bias": { + "shape": [ + 3072 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 12288, + "parts": [ + { + "path": "weights/00000.bin", + "offset": 42532864, + "byteLength": 12288 + } + ] + }, + "p_visual_blocks_1_attn_proj_weight": { + "shape": [ + 1024, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 2097152, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00000.bin", + "offset": 42545152, + "byteLength": 2097152 + } + ] + }, + "p_visual_blocks_1_attn_proj_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00000.bin", + "offset": 44642304, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_1_norm2_weight": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00000.bin", + "offset": 44646400, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_1_norm2_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00000.bin", + "offset": 44650496, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_1_mlp_linear_fc1_weight": { + "shape": [ + 4096, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 8388608, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00000.bin", + "offset": 44654592, + "byteLength": 8388608 + } + ] + }, + "p_visual_blocks_1_mlp_linear_fc1_bias": { + "shape": [ + 4096 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 16384, + "parts": [ + { + "path": "weights/00000.bin", + "offset": 53043200, + "byteLength": 16384 + } + ] + }, + "p_visual_blocks_1_mlp_linear_fc2_weight": { + "shape": [ + 1024, + 4096 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 8388608, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00000.bin", + "offset": 53059584, + "byteLength": 8388608 + } + ] + }, + "p_visual_blocks_1_mlp_linear_fc2_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00000.bin", + "offset": 61448192, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_2_norm1_weight": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00000.bin", + "offset": 61452288, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_2_norm1_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00000.bin", + "offset": 61456384, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_2_attn_qkv_weight": { + "shape": [ + 3072, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 6291456, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00000.bin", + "offset": 61460480, + "byteLength": 5648384 + }, + { + "path": "weights/00001.bin", + "offset": 0, + "byteLength": 643072 + } + ] + }, + "p_visual_blocks_2_attn_qkv_bias": { + "shape": [ + 3072 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 12288, + "parts": [ + { + "path": "weights/00001.bin", + "offset": 643072, + "byteLength": 12288 + } + ] + }, + "p_visual_blocks_2_attn_proj_weight": { + "shape": [ + 1024, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 2097152, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00001.bin", + "offset": 655360, + "byteLength": 2097152 + } + ] + }, + "p_visual_blocks_2_attn_proj_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00001.bin", + "offset": 2752512, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_2_norm2_weight": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00001.bin", + "offset": 2756608, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_2_norm2_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00001.bin", + "offset": 2760704, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_2_mlp_linear_fc1_weight": { + "shape": [ + 4096, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 8388608, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00001.bin", + "offset": 2764800, + "byteLength": 8388608 + } + ] + }, + "p_visual_blocks_2_mlp_linear_fc1_bias": { + "shape": [ + 4096 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 16384, + "parts": [ + { + "path": "weights/00001.bin", + "offset": 11153408, + "byteLength": 16384 + } + ] + }, + "p_visual_blocks_2_mlp_linear_fc2_weight": { + "shape": [ + 1024, + 4096 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 8388608, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00001.bin", + "offset": 11169792, + "byteLength": 8388608 + } + ] + }, + "p_visual_blocks_2_mlp_linear_fc2_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00001.bin", + "offset": 19558400, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_3_norm1_weight": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00001.bin", + "offset": 19562496, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_3_norm1_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00001.bin", + "offset": 19566592, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_3_attn_qkv_weight": { + "shape": [ + 3072, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 6291456, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00001.bin", + "offset": 19570688, + "byteLength": 6291456 + } + ] + }, + "p_visual_blocks_3_attn_qkv_bias": { + "shape": [ + 3072 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 12288, + "parts": [ + { + "path": "weights/00001.bin", + "offset": 25862144, + "byteLength": 12288 + } + ] + }, + "p_visual_blocks_3_attn_proj_weight": { + "shape": [ + 1024, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 2097152, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00001.bin", + "offset": 25874432, + "byteLength": 2097152 + } + ] + }, + "p_visual_blocks_3_attn_proj_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00001.bin", + "offset": 27971584, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_3_norm2_weight": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00001.bin", + "offset": 27975680, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_3_norm2_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00001.bin", + "offset": 27979776, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_3_mlp_linear_fc1_weight": { + "shape": [ + 4096, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 8388608, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00001.bin", + "offset": 27983872, + "byteLength": 8388608 + } + ] + }, + "p_visual_blocks_3_mlp_linear_fc1_bias": { + "shape": [ + 4096 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 16384, + "parts": [ + { + "path": "weights/00001.bin", + "offset": 36372480, + "byteLength": 16384 + } + ] + }, + "p_visual_blocks_3_mlp_linear_fc2_weight": { + "shape": [ + 1024, + 4096 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 8388608, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00001.bin", + "offset": 36388864, + "byteLength": 8388608 + } + ] + }, + "p_visual_blocks_3_mlp_linear_fc2_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00001.bin", + "offset": 44777472, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_4_norm1_weight": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00001.bin", + "offset": 44781568, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_4_norm1_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00001.bin", + "offset": 44785664, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_4_attn_qkv_weight": { + "shape": [ + 3072, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 6291456, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00001.bin", + "offset": 44789760, + "byteLength": 6291456 + } + ] + }, + "p_visual_blocks_4_attn_qkv_bias": { + "shape": [ + 3072 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 12288, + "parts": [ + { + "path": "weights/00001.bin", + "offset": 51081216, + "byteLength": 12288 + } + ] + }, + "p_visual_blocks_4_attn_proj_weight": { + "shape": [ + 1024, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 2097152, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00001.bin", + "offset": 51093504, + "byteLength": 2097152 + } + ] + }, + "p_visual_blocks_4_attn_proj_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00001.bin", + "offset": 53190656, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_4_norm2_weight": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00001.bin", + "offset": 53194752, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_4_norm2_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00001.bin", + "offset": 53198848, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_4_mlp_linear_fc1_weight": { + "shape": [ + 4096, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 8388608, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00001.bin", + "offset": 53202944, + "byteLength": 8388608 + } + ] + }, + "p_visual_blocks_4_mlp_linear_fc1_bias": { + "shape": [ + 4096 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 16384, + "parts": [ + { + "path": "weights/00001.bin", + "offset": 61591552, + "byteLength": 16384 + } + ] + }, + "p_visual_blocks_4_mlp_linear_fc2_weight": { + "shape": [ + 1024, + 4096 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 8388608, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00001.bin", + "offset": 61607936, + "byteLength": 5500928 + }, + { + "path": "weights/00002.bin", + "offset": 0, + "byteLength": 2887680 + } + ] + }, + "p_visual_blocks_4_mlp_linear_fc2_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00002.bin", + "offset": 2887680, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_5_norm1_weight": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00002.bin", + "offset": 2891776, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_5_norm1_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00002.bin", + "offset": 2895872, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_5_attn_qkv_weight": { + "shape": [ + 3072, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 6291456, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00002.bin", + "offset": 2899968, + "byteLength": 6291456 + } + ] + }, + "p_visual_blocks_5_attn_qkv_bias": { + "shape": [ + 3072 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 12288, + "parts": [ + { + "path": "weights/00002.bin", + "offset": 9191424, + "byteLength": 12288 + } + ] + }, + "p_visual_blocks_5_attn_proj_weight": { + "shape": [ + 1024, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 2097152, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00002.bin", + "offset": 9203712, + "byteLength": 2097152 + } + ] + }, + "p_visual_blocks_5_attn_proj_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00002.bin", + "offset": 11300864, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_5_norm2_weight": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00002.bin", + "offset": 11304960, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_5_norm2_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00002.bin", + "offset": 11309056, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_5_mlp_linear_fc1_weight": { + "shape": [ + 4096, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 8388608, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00002.bin", + "offset": 11313152, + "byteLength": 8388608 + } + ] + }, + "p_visual_blocks_5_mlp_linear_fc1_bias": { + "shape": [ + 4096 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 16384, + "parts": [ + { + "path": "weights/00002.bin", + "offset": 19701760, + "byteLength": 16384 + } + ] + }, + "p_visual_blocks_5_mlp_linear_fc2_weight": { + "shape": [ + 1024, + 4096 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 8388608, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00002.bin", + "offset": 19718144, + "byteLength": 8388608 + } + ] + }, + "p_visual_blocks_5_mlp_linear_fc2_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00002.bin", + "offset": 28106752, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_6_norm1_weight": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00002.bin", + "offset": 28110848, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_6_norm1_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00002.bin", + "offset": 28114944, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_6_attn_qkv_weight": { + "shape": [ + 3072, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 6291456, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00002.bin", + "offset": 28119040, + "byteLength": 6291456 + } + ] + }, + "p_visual_blocks_6_attn_qkv_bias": { + "shape": [ + 3072 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 12288, + "parts": [ + { + "path": "weights/00002.bin", + "offset": 34410496, + "byteLength": 12288 + } + ] + }, + "p_visual_blocks_6_attn_proj_weight": { + "shape": [ + 1024, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 2097152, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00002.bin", + "offset": 34422784, + "byteLength": 2097152 + } + ] + }, + "p_visual_blocks_6_attn_proj_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00002.bin", + "offset": 36519936, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_6_norm2_weight": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00002.bin", + "offset": 36524032, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_6_norm2_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00002.bin", + "offset": 36528128, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_6_mlp_linear_fc1_weight": { + "shape": [ + 4096, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 8388608, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00002.bin", + "offset": 36532224, + "byteLength": 8388608 + } + ] + }, + "p_visual_blocks_6_mlp_linear_fc1_bias": { + "shape": [ + 4096 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 16384, + "parts": [ + { + "path": "weights/00002.bin", + "offset": 44920832, + "byteLength": 16384 + } + ] + }, + "p_visual_blocks_6_mlp_linear_fc2_weight": { + "shape": [ + 1024, + 4096 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 8388608, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00002.bin", + "offset": 44937216, + "byteLength": 8388608 + } + ] + }, + "p_visual_blocks_6_mlp_linear_fc2_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00002.bin", + "offset": 53325824, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_7_norm1_weight": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00002.bin", + "offset": 53329920, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_7_norm1_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00002.bin", + "offset": 53334016, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_7_attn_qkv_weight": { + "shape": [ + 3072, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 6291456, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00002.bin", + "offset": 53338112, + "byteLength": 6291456 + } + ] + }, + "p_visual_blocks_7_attn_qkv_bias": { + "shape": [ + 3072 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 12288, + "parts": [ + { + "path": "weights/00002.bin", + "offset": 59629568, + "byteLength": 12288 + } + ] + }, + "p_visual_blocks_7_attn_proj_weight": { + "shape": [ + 1024, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 2097152, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00002.bin", + "offset": 59641856, + "byteLength": 2097152 + } + ] + }, + "p_visual_blocks_7_attn_proj_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00002.bin", + "offset": 61739008, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_7_norm2_weight": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00002.bin", + "offset": 61743104, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_7_norm2_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00002.bin", + "offset": 61747200, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_7_mlp_linear_fc1_weight": { + "shape": [ + 4096, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 8388608, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00002.bin", + "offset": 61751296, + "byteLength": 5357568 + }, + { + "path": "weights/00003.bin", + "offset": 0, + "byteLength": 3031040 + } + ] + }, + "p_visual_blocks_7_mlp_linear_fc1_bias": { + "shape": [ + 4096 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 16384, + "parts": [ + { + "path": "weights/00003.bin", + "offset": 3031040, + "byteLength": 16384 + } + ] + }, + "p_visual_blocks_7_mlp_linear_fc2_weight": { + "shape": [ + 1024, + 4096 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 8388608, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00003.bin", + "offset": 3047424, + "byteLength": 8388608 + } + ] + }, + "p_visual_blocks_7_mlp_linear_fc2_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00003.bin", + "offset": 11436032, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_8_norm1_weight": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00003.bin", + "offset": 11440128, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_8_norm1_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00003.bin", + "offset": 11444224, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_8_attn_qkv_weight": { + "shape": [ + 3072, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 6291456, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00003.bin", + "offset": 11448320, + "byteLength": 6291456 + } + ] + }, + "p_visual_blocks_8_attn_qkv_bias": { + "shape": [ + 3072 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 12288, + "parts": [ + { + "path": "weights/00003.bin", + "offset": 17739776, + "byteLength": 12288 + } + ] + }, + "p_visual_blocks_8_attn_proj_weight": { + "shape": [ + 1024, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 2097152, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00003.bin", + "offset": 17752064, + "byteLength": 2097152 + } + ] + }, + "p_visual_blocks_8_attn_proj_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00003.bin", + "offset": 19849216, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_8_norm2_weight": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00003.bin", + "offset": 19853312, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_8_norm2_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00003.bin", + "offset": 19857408, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_8_mlp_linear_fc1_weight": { + "shape": [ + 4096, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 8388608, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00003.bin", + "offset": 19861504, + "byteLength": 8388608 + } + ] + }, + "p_visual_blocks_8_mlp_linear_fc1_bias": { + "shape": [ + 4096 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 16384, + "parts": [ + { + "path": "weights/00003.bin", + "offset": 28250112, + "byteLength": 16384 + } + ] + }, + "p_visual_blocks_8_mlp_linear_fc2_weight": { + "shape": [ + 1024, + 4096 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 8388608, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00003.bin", + "offset": 28266496, + "byteLength": 8388608 + } + ] + }, + "p_visual_blocks_8_mlp_linear_fc2_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00003.bin", + "offset": 36655104, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_9_norm1_weight": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00003.bin", + "offset": 36659200, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_9_norm1_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00003.bin", + "offset": 36663296, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_9_attn_qkv_weight": { + "shape": [ + 3072, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 6291456, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00003.bin", + "offset": 36667392, + "byteLength": 6291456 + } + ] + }, + "p_visual_blocks_9_attn_qkv_bias": { + "shape": [ + 3072 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 12288, + "parts": [ + { + "path": "weights/00003.bin", + "offset": 42958848, + "byteLength": 12288 + } + ] + }, + "p_visual_blocks_9_attn_proj_weight": { + "shape": [ + 1024, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 2097152, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00003.bin", + "offset": 42971136, + "byteLength": 2097152 + } + ] + }, + "p_visual_blocks_9_attn_proj_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00003.bin", + "offset": 45068288, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_9_norm2_weight": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00003.bin", + "offset": 45072384, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_9_norm2_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00003.bin", + "offset": 45076480, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_9_mlp_linear_fc1_weight": { + "shape": [ + 4096, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 8388608, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00003.bin", + "offset": 45080576, + "byteLength": 8388608 + } + ] + }, + "p_visual_blocks_9_mlp_linear_fc1_bias": { + "shape": [ + 4096 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 16384, + "parts": [ + { + "path": "weights/00003.bin", + "offset": 53469184, + "byteLength": 16384 + } + ] + }, + "p_visual_blocks_9_mlp_linear_fc2_weight": { + "shape": [ + 1024, + 4096 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 8388608, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00003.bin", + "offset": 53485568, + "byteLength": 8388608 + } + ] + }, + "p_visual_blocks_9_mlp_linear_fc2_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00003.bin", + "offset": 61874176, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_10_norm1_weight": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00003.bin", + "offset": 61878272, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_10_norm1_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00003.bin", + "offset": 61882368, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_10_attn_qkv_weight": { + "shape": [ + 3072, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 6291456, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00003.bin", + "offset": 61886464, + "byteLength": 5222400 + }, + { + "path": "weights/00004.bin", + "offset": 0, + "byteLength": 1069056 + } + ] + }, + "p_visual_blocks_10_attn_qkv_bias": { + "shape": [ + 3072 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 12288, + "parts": [ + { + "path": "weights/00004.bin", + "offset": 1069056, + "byteLength": 12288 + } + ] + }, + "p_visual_blocks_10_attn_proj_weight": { + "shape": [ + 1024, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 2097152, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00004.bin", + "offset": 1081344, + "byteLength": 2097152 + } + ] + }, + "p_visual_blocks_10_attn_proj_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00004.bin", + "offset": 3178496, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_10_norm2_weight": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00004.bin", + "offset": 3182592, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_10_norm2_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00004.bin", + "offset": 3186688, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_10_mlp_linear_fc1_weight": { + "shape": [ + 4096, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 8388608, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00004.bin", + "offset": 3190784, + "byteLength": 8388608 + } + ] + }, + "p_visual_blocks_10_mlp_linear_fc1_bias": { + "shape": [ + 4096 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 16384, + "parts": [ + { + "path": "weights/00004.bin", + "offset": 11579392, + "byteLength": 16384 + } + ] + }, + "p_visual_blocks_10_mlp_linear_fc2_weight": { + "shape": [ + 1024, + 4096 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 8388608, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00004.bin", + "offset": 11595776, + "byteLength": 8388608 + } + ] + }, + "p_visual_blocks_10_mlp_linear_fc2_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00004.bin", + "offset": 19984384, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_11_norm1_weight": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00004.bin", + "offset": 19988480, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_11_norm1_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00004.bin", + "offset": 19992576, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_11_attn_qkv_weight": { + "shape": [ + 3072, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 6291456, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00004.bin", + "offset": 19996672, + "byteLength": 6291456 + } + ] + }, + "p_visual_blocks_11_attn_qkv_bias": { + "shape": [ + 3072 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 12288, + "parts": [ + { + "path": "weights/00004.bin", + "offset": 26288128, + "byteLength": 12288 + } + ] + }, + "p_visual_blocks_11_attn_proj_weight": { + "shape": [ + 1024, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 2097152, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00004.bin", + "offset": 26300416, + "byteLength": 2097152 + } + ] + }, + "p_visual_blocks_11_attn_proj_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00004.bin", + "offset": 28397568, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_11_norm2_weight": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00004.bin", + "offset": 28401664, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_11_norm2_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00004.bin", + "offset": 28405760, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_11_mlp_linear_fc1_weight": { + "shape": [ + 4096, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 8388608, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00004.bin", + "offset": 28409856, + "byteLength": 8388608 + } + ] + }, + "p_visual_blocks_11_mlp_linear_fc1_bias": { + "shape": [ + 4096 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 16384, + "parts": [ + { + "path": "weights/00004.bin", + "offset": 36798464, + "byteLength": 16384 + } + ] + }, + "p_visual_blocks_11_mlp_linear_fc2_weight": { + "shape": [ + 1024, + 4096 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 8388608, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00004.bin", + "offset": 36814848, + "byteLength": 8388608 + } + ] + }, + "p_visual_blocks_11_mlp_linear_fc2_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00004.bin", + "offset": 45203456, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_12_norm1_weight": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00004.bin", + "offset": 45207552, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_12_norm1_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00004.bin", + "offset": 45211648, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_12_attn_qkv_weight": { + "shape": [ + 3072, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 6291456, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00004.bin", + "offset": 45215744, + "byteLength": 6291456 + } + ] + }, + "p_visual_blocks_12_attn_qkv_bias": { + "shape": [ + 3072 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 12288, + "parts": [ + { + "path": "weights/00004.bin", + "offset": 51507200, + "byteLength": 12288 + } + ] + }, + "p_visual_blocks_12_attn_proj_weight": { + "shape": [ + 1024, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 2097152, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00004.bin", + "offset": 51519488, + "byteLength": 2097152 + } + ] + }, + "p_visual_blocks_12_attn_proj_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00004.bin", + "offset": 53616640, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_12_norm2_weight": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00004.bin", + "offset": 53620736, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_12_norm2_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00004.bin", + "offset": 53624832, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_12_mlp_linear_fc1_weight": { + "shape": [ + 4096, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 8388608, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00004.bin", + "offset": 53628928, + "byteLength": 8388608 + } + ] + }, + "p_visual_blocks_12_mlp_linear_fc1_bias": { + "shape": [ + 4096 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 16384, + "parts": [ + { + "path": "weights/00004.bin", + "offset": 62017536, + "byteLength": 16384 + } + ] + }, + "p_visual_blocks_12_mlp_linear_fc2_weight": { + "shape": [ + 1024, + 4096 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 8388608, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00004.bin", + "offset": 62033920, + "byteLength": 5074944 + }, + { + "path": "weights/00005.bin", + "offset": 0, + "byteLength": 3313664 + } + ] + }, + "p_visual_blocks_12_mlp_linear_fc2_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00005.bin", + "offset": 3313664, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_13_norm1_weight": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00005.bin", + "offset": 3317760, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_13_norm1_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00005.bin", + "offset": 3321856, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_13_attn_qkv_weight": { + "shape": [ + 3072, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 6291456, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00005.bin", + "offset": 3325952, + "byteLength": 6291456 + } + ] + }, + "p_visual_blocks_13_attn_qkv_bias": { + "shape": [ + 3072 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 12288, + "parts": [ + { + "path": "weights/00005.bin", + "offset": 9617408, + "byteLength": 12288 + } + ] + }, + "p_visual_blocks_13_attn_proj_weight": { + "shape": [ + 1024, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 2097152, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00005.bin", + "offset": 9629696, + "byteLength": 2097152 + } + ] + }, + "p_visual_blocks_13_attn_proj_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00005.bin", + "offset": 11726848, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_13_norm2_weight": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00005.bin", + "offset": 11730944, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_13_norm2_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00005.bin", + "offset": 11735040, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_13_mlp_linear_fc1_weight": { + "shape": [ + 4096, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 8388608, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00005.bin", + "offset": 11739136, + "byteLength": 8388608 + } + ] + }, + "p_visual_blocks_13_mlp_linear_fc1_bias": { + "shape": [ + 4096 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 16384, + "parts": [ + { + "path": "weights/00005.bin", + "offset": 20127744, + "byteLength": 16384 + } + ] + }, + "p_visual_blocks_13_mlp_linear_fc2_weight": { + "shape": [ + 1024, + 4096 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 8388608, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00005.bin", + "offset": 20144128, + "byteLength": 8388608 + } + ] + }, + "p_visual_blocks_13_mlp_linear_fc2_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00005.bin", + "offset": 28532736, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_14_norm1_weight": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00005.bin", + "offset": 28536832, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_14_norm1_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00005.bin", + "offset": 28540928, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_14_attn_qkv_weight": { + "shape": [ + 3072, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 6291456, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00005.bin", + "offset": 28545024, + "byteLength": 6291456 + } + ] + }, + "p_visual_blocks_14_attn_qkv_bias": { + "shape": [ + 3072 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 12288, + "parts": [ + { + "path": "weights/00005.bin", + "offset": 34836480, + "byteLength": 12288 + } + ] + }, + "p_visual_blocks_14_attn_proj_weight": { + "shape": [ + 1024, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 2097152, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00005.bin", + "offset": 34848768, + "byteLength": 2097152 + } + ] + }, + "p_visual_blocks_14_attn_proj_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00005.bin", + "offset": 36945920, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_14_norm2_weight": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00005.bin", + "offset": 36950016, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_14_norm2_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00005.bin", + "offset": 36954112, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_14_mlp_linear_fc1_weight": { + "shape": [ + 4096, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 8388608, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00005.bin", + "offset": 36958208, + "byteLength": 8388608 + } + ] + }, + "p_visual_blocks_14_mlp_linear_fc1_bias": { + "shape": [ + 4096 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 16384, + "parts": [ + { + "path": "weights/00005.bin", + "offset": 45346816, + "byteLength": 16384 + } + ] + }, + "p_visual_blocks_14_mlp_linear_fc2_weight": { + "shape": [ + 1024, + 4096 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 8388608, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00005.bin", + "offset": 45363200, + "byteLength": 8388608 + } + ] + }, + "p_visual_blocks_14_mlp_linear_fc2_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00005.bin", + "offset": 53751808, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_15_norm1_weight": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00005.bin", + "offset": 53755904, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_15_norm1_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00005.bin", + "offset": 53760000, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_15_attn_qkv_weight": { + "shape": [ + 3072, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 6291456, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00005.bin", + "offset": 53764096, + "byteLength": 6291456 + } + ] + }, + "p_visual_blocks_15_attn_qkv_bias": { + "shape": [ + 3072 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 12288, + "parts": [ + { + "path": "weights/00005.bin", + "offset": 60055552, + "byteLength": 12288 + } + ] + }, + "p_visual_blocks_15_attn_proj_weight": { + "shape": [ + 1024, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 2097152, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00005.bin", + "offset": 60067840, + "byteLength": 2097152 + } + ] + }, + "p_visual_blocks_15_attn_proj_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00005.bin", + "offset": 62164992, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_15_norm2_weight": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00005.bin", + "offset": 62169088, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_15_norm2_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00005.bin", + "offset": 62173184, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_15_mlp_linear_fc1_weight": { + "shape": [ + 4096, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 8388608, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00005.bin", + "offset": 62177280, + "byteLength": 4931584 + }, + { + "path": "weights/00006.bin", + "offset": 0, + "byteLength": 3457024 + } + ] + }, + "p_visual_blocks_15_mlp_linear_fc1_bias": { + "shape": [ + 4096 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 16384, + "parts": [ + { + "path": "weights/00006.bin", + "offset": 3457024, + "byteLength": 16384 + } + ] + }, + "p_visual_blocks_15_mlp_linear_fc2_weight": { + "shape": [ + 1024, + 4096 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 8388608, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00006.bin", + "offset": 3473408, + "byteLength": 8388608 + } + ] + }, + "p_visual_blocks_15_mlp_linear_fc2_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00006.bin", + "offset": 11862016, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_16_norm1_weight": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00006.bin", + "offset": 11866112, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_16_norm1_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00006.bin", + "offset": 11870208, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_16_attn_qkv_weight": { + "shape": [ + 3072, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 6291456, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00006.bin", + "offset": 11874304, + "byteLength": 6291456 + } + ] + }, + "p_visual_blocks_16_attn_qkv_bias": { + "shape": [ + 3072 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 12288, + "parts": [ + { + "path": "weights/00006.bin", + "offset": 18165760, + "byteLength": 12288 + } + ] + }, + "p_visual_blocks_16_attn_proj_weight": { + "shape": [ + 1024, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 2097152, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00006.bin", + "offset": 18178048, + "byteLength": 2097152 + } + ] + }, + "p_visual_blocks_16_attn_proj_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00006.bin", + "offset": 20275200, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_16_norm2_weight": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00006.bin", + "offset": 20279296, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_16_norm2_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00006.bin", + "offset": 20283392, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_16_mlp_linear_fc1_weight": { + "shape": [ + 4096, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 8388608, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00006.bin", + "offset": 20287488, + "byteLength": 8388608 + } + ] + }, + "p_visual_blocks_16_mlp_linear_fc1_bias": { + "shape": [ + 4096 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 16384, + "parts": [ + { + "path": "weights/00006.bin", + "offset": 28676096, + "byteLength": 16384 + } + ] + }, + "p_visual_blocks_16_mlp_linear_fc2_weight": { + "shape": [ + 1024, + 4096 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 8388608, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00006.bin", + "offset": 28692480, + "byteLength": 8388608 + } + ] + }, + "p_visual_blocks_16_mlp_linear_fc2_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00006.bin", + "offset": 37081088, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_17_norm1_weight": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00006.bin", + "offset": 37085184, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_17_norm1_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00006.bin", + "offset": 37089280, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_17_attn_qkv_weight": { + "shape": [ + 3072, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 6291456, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00006.bin", + "offset": 37093376, + "byteLength": 6291456 + } + ] + }, + "p_visual_blocks_17_attn_qkv_bias": { + "shape": [ + 3072 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 12288, + "parts": [ + { + "path": "weights/00006.bin", + "offset": 43384832, + "byteLength": 12288 + } + ] + }, + "p_visual_blocks_17_attn_proj_weight": { + "shape": [ + 1024, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 2097152, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00006.bin", + "offset": 43397120, + "byteLength": 2097152 + } + ] + }, + "p_visual_blocks_17_attn_proj_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00006.bin", + "offset": 45494272, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_17_norm2_weight": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00006.bin", + "offset": 45498368, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_17_norm2_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00006.bin", + "offset": 45502464, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_17_mlp_linear_fc1_weight": { + "shape": [ + 4096, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 8388608, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00006.bin", + "offset": 45506560, + "byteLength": 8388608 + } + ] + }, + "p_visual_blocks_17_mlp_linear_fc1_bias": { + "shape": [ + 4096 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 16384, + "parts": [ + { + "path": "weights/00006.bin", + "offset": 53895168, + "byteLength": 16384 + } + ] + }, + "p_visual_blocks_17_mlp_linear_fc2_weight": { + "shape": [ + 1024, + 4096 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 8388608, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00006.bin", + "offset": 53911552, + "byteLength": 8388608 + } + ] + }, + "p_visual_blocks_17_mlp_linear_fc2_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00006.bin", + "offset": 62300160, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_18_norm1_weight": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00006.bin", + "offset": 62304256, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_18_norm1_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00006.bin", + "offset": 62308352, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_18_attn_qkv_weight": { + "shape": [ + 3072, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 6291456, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00006.bin", + "offset": 62312448, + "byteLength": 4796416 + }, + { + "path": "weights/00007.bin", + "offset": 0, + "byteLength": 1495040 + } + ] + }, + "p_visual_blocks_18_attn_qkv_bias": { + "shape": [ + 3072 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 12288, + "parts": [ + { + "path": "weights/00007.bin", + "offset": 1495040, + "byteLength": 12288 + } + ] + }, + "p_visual_blocks_18_attn_proj_weight": { + "shape": [ + 1024, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 2097152, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00007.bin", + "offset": 1507328, + "byteLength": 2097152 + } + ] + }, + "p_visual_blocks_18_attn_proj_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00007.bin", + "offset": 3604480, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_18_norm2_weight": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00007.bin", + "offset": 3608576, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_18_norm2_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00007.bin", + "offset": 3612672, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_18_mlp_linear_fc1_weight": { + "shape": [ + 4096, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 8388608, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00007.bin", + "offset": 3616768, + "byteLength": 8388608 + } + ] + }, + "p_visual_blocks_18_mlp_linear_fc1_bias": { + "shape": [ + 4096 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 16384, + "parts": [ + { + "path": "weights/00007.bin", + "offset": 12005376, + "byteLength": 16384 + } + ] + }, + "p_visual_blocks_18_mlp_linear_fc2_weight": { + "shape": [ + 1024, + 4096 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 8388608, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00007.bin", + "offset": 12021760, + "byteLength": 8388608 + } + ] + }, + "p_visual_blocks_18_mlp_linear_fc2_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00007.bin", + "offset": 20410368, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_19_norm1_weight": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00007.bin", + "offset": 20414464, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_19_norm1_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00007.bin", + "offset": 20418560, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_19_attn_qkv_weight": { + "shape": [ + 3072, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 6291456, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00007.bin", + "offset": 20422656, + "byteLength": 6291456 + } + ] + }, + "p_visual_blocks_19_attn_qkv_bias": { + "shape": [ + 3072 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 12288, + "parts": [ + { + "path": "weights/00007.bin", + "offset": 26714112, + "byteLength": 12288 + } + ] + }, + "p_visual_blocks_19_attn_proj_weight": { + "shape": [ + 1024, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 2097152, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00007.bin", + "offset": 26726400, + "byteLength": 2097152 + } + ] + }, + "p_visual_blocks_19_attn_proj_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00007.bin", + "offset": 28823552, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_19_norm2_weight": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00007.bin", + "offset": 28827648, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_19_norm2_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00007.bin", + "offset": 28831744, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_19_mlp_linear_fc1_weight": { + "shape": [ + 4096, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 8388608, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00007.bin", + "offset": 28835840, + "byteLength": 8388608 + } + ] + }, + "p_visual_blocks_19_mlp_linear_fc1_bias": { + "shape": [ + 4096 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 16384, + "parts": [ + { + "path": "weights/00007.bin", + "offset": 37224448, + "byteLength": 16384 + } + ] + }, + "p_visual_blocks_19_mlp_linear_fc2_weight": { + "shape": [ + 1024, + 4096 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 8388608, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00007.bin", + "offset": 37240832, + "byteLength": 8388608 + } + ] + }, + "p_visual_blocks_19_mlp_linear_fc2_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00007.bin", + "offset": 45629440, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_20_norm1_weight": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00007.bin", + "offset": 45633536, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_20_norm1_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00007.bin", + "offset": 45637632, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_20_attn_qkv_weight": { + "shape": [ + 3072, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 6291456, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00007.bin", + "offset": 45641728, + "byteLength": 6291456 + } + ] + }, + "p_visual_blocks_20_attn_qkv_bias": { + "shape": [ + 3072 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 12288, + "parts": [ + { + "path": "weights/00007.bin", + "offset": 51933184, + "byteLength": 12288 + } + ] + }, + "p_visual_blocks_20_attn_proj_weight": { + "shape": [ + 1024, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 2097152, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00007.bin", + "offset": 51945472, + "byteLength": 2097152 + } + ] + }, + "p_visual_blocks_20_attn_proj_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00007.bin", + "offset": 54042624, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_20_norm2_weight": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00007.bin", + "offset": 54046720, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_20_norm2_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00007.bin", + "offset": 54050816, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_20_mlp_linear_fc1_weight": { + "shape": [ + 4096, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 8388608, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00007.bin", + "offset": 54054912, + "byteLength": 8388608 + } + ] + }, + "p_visual_blocks_20_mlp_linear_fc1_bias": { + "shape": [ + 4096 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 16384, + "parts": [ + { + "path": "weights/00007.bin", + "offset": 62443520, + "byteLength": 16384 + } + ] + }, + "p_visual_blocks_20_mlp_linear_fc2_weight": { + "shape": [ + 1024, + 4096 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 8388608, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00007.bin", + "offset": 62459904, + "byteLength": 4648960 + }, + { + "path": "weights/00008.bin", + "offset": 0, + "byteLength": 3739648 + } + ] + }, + "p_visual_blocks_20_mlp_linear_fc2_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00008.bin", + "offset": 3739648, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_21_norm1_weight": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00008.bin", + "offset": 3743744, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_21_norm1_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00008.bin", + "offset": 3747840, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_21_attn_qkv_weight": { + "shape": [ + 3072, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 6291456, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00008.bin", + "offset": 3751936, + "byteLength": 6291456 + } + ] + }, + "p_visual_blocks_21_attn_qkv_bias": { + "shape": [ + 3072 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 12288, + "parts": [ + { + "path": "weights/00008.bin", + "offset": 10043392, + "byteLength": 12288 + } + ] + }, + "p_visual_blocks_21_attn_proj_weight": { + "shape": [ + 1024, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 2097152, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00008.bin", + "offset": 10055680, + "byteLength": 2097152 + } + ] + }, + "p_visual_blocks_21_attn_proj_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00008.bin", + "offset": 12152832, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_21_norm2_weight": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00008.bin", + "offset": 12156928, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_21_norm2_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00008.bin", + "offset": 12161024, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_21_mlp_linear_fc1_weight": { + "shape": [ + 4096, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 8388608, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00008.bin", + "offset": 12165120, + "byteLength": 8388608 + } + ] + }, + "p_visual_blocks_21_mlp_linear_fc1_bias": { + "shape": [ + 4096 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 16384, + "parts": [ + { + "path": "weights/00008.bin", + "offset": 20553728, + "byteLength": 16384 + } + ] + }, + "p_visual_blocks_21_mlp_linear_fc2_weight": { + "shape": [ + 1024, + 4096 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 8388608, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00008.bin", + "offset": 20570112, + "byteLength": 8388608 + } + ] + }, + "p_visual_blocks_21_mlp_linear_fc2_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00008.bin", + "offset": 28958720, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_22_norm1_weight": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00008.bin", + "offset": 28962816, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_22_norm1_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00008.bin", + "offset": 28966912, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_22_attn_qkv_weight": { + "shape": [ + 3072, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 6291456, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00008.bin", + "offset": 28971008, + "byteLength": 6291456 + } + ] + }, + "p_visual_blocks_22_attn_qkv_bias": { + "shape": [ + 3072 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 12288, + "parts": [ + { + "path": "weights/00008.bin", + "offset": 35262464, + "byteLength": 12288 + } + ] + }, + "p_visual_blocks_22_attn_proj_weight": { + "shape": [ + 1024, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 2097152, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00008.bin", + "offset": 35274752, + "byteLength": 2097152 + } + ] + }, + "p_visual_blocks_22_attn_proj_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00008.bin", + "offset": 37371904, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_22_norm2_weight": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00008.bin", + "offset": 37376000, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_22_norm2_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00008.bin", + "offset": 37380096, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_22_mlp_linear_fc1_weight": { + "shape": [ + 4096, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 8388608, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00008.bin", + "offset": 37384192, + "byteLength": 8388608 + } + ] + }, + "p_visual_blocks_22_mlp_linear_fc1_bias": { + "shape": [ + 4096 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 16384, + "parts": [ + { + "path": "weights/00008.bin", + "offset": 45772800, + "byteLength": 16384 + } + ] + }, + "p_visual_blocks_22_mlp_linear_fc2_weight": { + "shape": [ + 1024, + 4096 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 8388608, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00008.bin", + "offset": 45789184, + "byteLength": 8388608 + } + ] + }, + "p_visual_blocks_22_mlp_linear_fc2_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00008.bin", + "offset": 54177792, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_23_norm1_weight": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00008.bin", + "offset": 54181888, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_23_norm1_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00008.bin", + "offset": 54185984, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_23_attn_qkv_weight": { + "shape": [ + 3072, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 6291456, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00008.bin", + "offset": 54190080, + "byteLength": 6291456 + } + ] + }, + "p_visual_blocks_23_attn_qkv_bias": { + "shape": [ + 3072 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 12288, + "parts": [ + { + "path": "weights/00008.bin", + "offset": 60481536, + "byteLength": 12288 + } + ] + }, + "p_visual_blocks_23_attn_proj_weight": { + "shape": [ + 1024, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 2097152, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00008.bin", + "offset": 60493824, + "byteLength": 2097152 + } + ] + }, + "p_visual_blocks_23_attn_proj_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00008.bin", + "offset": 62590976, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_23_norm2_weight": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00008.bin", + "offset": 62595072, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_23_norm2_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00008.bin", + "offset": 62599168, + "byteLength": 4096 + } + ] + }, + "p_visual_blocks_23_mlp_linear_fc1_weight": { + "shape": [ + 4096, + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 8388608, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00008.bin", + "offset": 62603264, + "byteLength": 4505600 + }, + { + "path": "weights/00009.bin", + "offset": 0, + "byteLength": 3883008 + } + ] + }, + "p_visual_blocks_23_mlp_linear_fc1_bias": { + "shape": [ + 4096 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 16384, + "parts": [ + { + "path": "weights/00009.bin", + "offset": 3883008, + "byteLength": 16384 + } + ] + }, + "p_visual_blocks_23_mlp_linear_fc2_weight": { + "shape": [ + 1024, + 4096 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 8388608, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00009.bin", + "offset": 3899392, + "byteLength": 8388608 + } + ] + }, + "p_visual_blocks_23_mlp_linear_fc2_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00009.bin", + "offset": 12288000, + "byteLength": 4096 + } + ] + }, + "p_visual_merger_norm_weight": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00009.bin", + "offset": 12292096, + "byteLength": 4096 + } + ] + }, + "p_visual_merger_norm_bias": { + "shape": [ + 1024 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 4096, + "parts": [ + { + "path": "weights/00009.bin", + "offset": 12296192, + "byteLength": 4096 + } + ] + }, + "p_visual_merger_linear_fc1_weight": { + "shape": [ + 4096, + 4096 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 33554432, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00009.bin", + "offset": 12300288, + "byteLength": 33554432 + } + ] + }, + "p_visual_merger_linear_fc1_bias": { + "shape": [ + 4096 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 16384, + "parts": [ + { + "path": "weights/00009.bin", + "offset": 45854720, + "byteLength": 16384 + } + ] + }, + "p_visual_merger_linear_fc2_weight": { + "shape": [ + 2048, + 4096 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 16777216, + "storageDtype": "bfloat16", + "parts": [ + { + "path": "weights/00009.bin", + "offset": 45871104, + "byteLength": 16777216 + } + ] + }, + "p_visual_merger_linear_fc2_bias": { + "shape": [ + 2048 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 8192, + "parts": [ + { + "path": "weights/00009.bin", + "offset": 62648320, + "byteLength": 8192 + } + ] + }, + "b_indices": { + "shape": [ + 384, + 4 + ], + "dtype": "int32", + "role": "constant", + "byteLength": 6144, + "indexBounds": [ + 0, + 2304 + ], + "parts": [ + { + "path": "weights/00009.bin", + "offset": 62656512, + "byteLength": 6144 + } + ] + }, + "b_interpolation_weights": { + "shape": [ + 384, + 4 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 6144, + "parts": [ + { + "path": "weights/00009.bin", + "offset": 62662656, + "byteLength": 6144 + } + ] + }, + "b_positions": { + "shape": [ + 384, + 2 + ], + "dtype": "int32", + "role": "constant", + "byteLength": 3072, + "parts": [ + { + "path": "weights/00009.bin", + "offset": 62668800, + "byteLength": 3072 + } + ] + }, + "b_visual_rotary_pos_emb_inv_freq": { + "shape": [ + 16 + ], + "dtype": "float32", + "role": "constant", + "byteLength": 64, + "parts": [ + { + "path": "weights/00009.bin", + "offset": 62671872, + "byteLength": 64 + } + ] + }, + "pixels": { + "shape": [ + 384, + 1536 + ], + "dtype": "float32", + "role": "input", + "byteLength": 2359296 + }, + "view": { + "shape": [ + 384, + 3, + 2, + 16, + 16 + ], + "dtype": "float32", + "role": "value", + "byteLength": 2359296 + }, + "conv3d": { + "shape": [ + 384, + 1024, + 1, + 1, + 1 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "view_1": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "embedding": { + "shape": [ + 384, + 4, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 6291456 + }, + "unsqueeze": { + "shape": [ + 384, + 4, + 1 + ], + "dtype": "float32", + "role": "value", + "byteLength": 6144 + }, + "mul": { + "shape": [ + 384, + 4, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 6291456 + }, + "sum_1": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_1": { + "shape": [ + 384, + 2, + 1 + ], + "dtype": "int32", + "role": "value", + "byteLength": 3072 + }, + "mul_1": { + "shape": [ + 384, + 2, + 16 + ], + "dtype": "float32", + "role": "value", + "byteLength": 49152 + }, + "view_2": { + "shape": [ + 384, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 49152 + }, + "view_3": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "view_4": { + "shape": [ + 384, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 49152 + }, + "cat": { + "shape": [ + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 98304 + }, + "cos": { + "shape": [ + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 98304 + }, + "sin": { + "shape": [ + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 98304 + }, + "layer_norm": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear": { + "shape": [ + 384, + 3072 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "view_5": { + "shape": [ + 384, + 3, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "permute": { + "shape": [ + 3, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "select": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "select_1": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "select_2": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_2": { + "shape": [ + 384, + 1, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 98304 + }, + "unsqueeze_3": { + "shape": [ + 384, + 1, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 98304 + }, + "mul_2": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_1": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "slice_2": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "neg": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "cat_1": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_3": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_1": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_4": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_3": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "slice_4": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "neg_1": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "cat_2": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_5": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_2": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_4": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_1": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_5": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_2": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_6": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_5": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_6": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_7": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_3": { + "shape": [ + 1, + 16, + 64, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "matmul": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "mul_6": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "softmax": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "matmul_1": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_4": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "clone": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "cat_3": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "view_6": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_1": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_3": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "layer_norm_1": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_2": { + "shape": [ + 384, + 4096 + ], + "dtype": "float32", + "role": "value", + "byteLength": 6291456 + }, + "gelu": { + "shape": [ + 384, + 4096 + ], + "dtype": "float32", + "role": "value", + "byteLength": 6291456 + }, + "linear_3": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_4": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "layer_norm_2": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_4": { + "shape": [ + 384, + 3072 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "view_7": { + "shape": [ + 384, + 3, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "permute_1": { + "shape": [ + 3, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "select_3": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "select_4": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "select_5": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_7": { + "shape": [ + 384, + 1, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 98304 + }, + "unsqueeze_8": { + "shape": [ + 384, + 1, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 98304 + }, + "mul_7": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_8": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "slice_9": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "neg_2": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "cat_4": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_8": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_5": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_9": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_10": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "slice_11": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "neg_3": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "cat_5": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_10": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_6": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_5": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_9": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_6": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_10": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_7": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_11": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_12": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_13": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_14": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_8": { + "shape": [ + 1, + 16, + 64, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "matmul_2": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "mul_11": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "softmax_1": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "matmul_3": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_9": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "clone_1": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "cat_6": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "view_8": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_5": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_7": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "layer_norm_3": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_6": { + "shape": [ + 384, + 4096 + ], + "dtype": "float32", + "role": "value", + "byteLength": 6291456 + }, + "gelu_1": { + "shape": [ + 384, + 4096 + ], + "dtype": "float32", + "role": "value", + "byteLength": 6291456 + }, + "linear_7": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_8": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "layer_norm_4": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_8": { + "shape": [ + 384, + 3072 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "view_9": { + "shape": [ + 384, + 3, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "permute_2": { + "shape": [ + 3, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "select_6": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "select_7": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "select_8": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_12": { + "shape": [ + 384, + 1, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 98304 + }, + "unsqueeze_13": { + "shape": [ + 384, + 1, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 98304 + }, + "mul_12": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_15": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "slice_16": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "neg_4": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "cat_7": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_13": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_9": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_14": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_17": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "slice_18": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "neg_5": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "cat_8": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_15": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_10": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_10": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_14": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_11": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_15": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_12": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_16": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_19": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_20": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_21": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_13": { + "shape": [ + 1, + 16, + 64, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "matmul_4": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "mul_16": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "softmax_2": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "matmul_5": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_14": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "clone_2": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "cat_9": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "view_10": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_9": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_11": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "layer_norm_5": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_10": { + "shape": [ + 384, + 4096 + ], + "dtype": "float32", + "role": "value", + "byteLength": 6291456 + }, + "gelu_2": { + "shape": [ + 384, + 4096 + ], + "dtype": "float32", + "role": "value", + "byteLength": 6291456 + }, + "linear_11": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_12": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "layer_norm_6": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_12": { + "shape": [ + 384, + 3072 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "view_11": { + "shape": [ + 384, + 3, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "permute_3": { + "shape": [ + 3, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "select_9": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "select_10": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "select_11": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_17": { + "shape": [ + 384, + 1, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 98304 + }, + "unsqueeze_18": { + "shape": [ + 384, + 1, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 98304 + }, + "mul_17": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_22": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "slice_23": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "neg_6": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "cat_10": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_18": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_13": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_19": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_24": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "slice_25": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "neg_7": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "cat_11": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_20": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_14": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_15": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_19": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_16": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_20": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_17": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_21": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_26": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_27": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_28": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_18": { + "shape": [ + 1, + 16, + 64, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "matmul_6": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "mul_21": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "softmax_3": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "matmul_7": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_19": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "clone_3": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "cat_12": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "view_12": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_13": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_15": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "layer_norm_7": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_14": { + "shape": [ + 384, + 4096 + ], + "dtype": "float32", + "role": "value", + "byteLength": 6291456 + }, + "gelu_3": { + "shape": [ + 384, + 4096 + ], + "dtype": "float32", + "role": "value", + "byteLength": 6291456 + }, + "linear_15": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_16": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "layer_norm_8": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_16": { + "shape": [ + 384, + 3072 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "view_13": { + "shape": [ + 384, + 3, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "permute_4": { + "shape": [ + 3, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "select_12": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "select_13": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "select_14": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_22": { + "shape": [ + 384, + 1, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 98304 + }, + "unsqueeze_23": { + "shape": [ + 384, + 1, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 98304 + }, + "mul_22": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_29": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "slice_30": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "neg_8": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "cat_13": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_23": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_17": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_24": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_31": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "slice_32": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "neg_9": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "cat_14": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_25": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_18": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_20": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_24": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_21": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_25": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_22": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_26": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_33": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_34": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_35": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_23": { + "shape": [ + 1, + 16, + 64, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "matmul_8": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "mul_26": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "softmax_4": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "matmul_9": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_24": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "clone_4": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "cat_15": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "view_14": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_17": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_19": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "layer_norm_9": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_18": { + "shape": [ + 384, + 4096 + ], + "dtype": "float32", + "role": "value", + "byteLength": 6291456 + }, + "gelu_4": { + "shape": [ + 384, + 4096 + ], + "dtype": "float32", + "role": "value", + "byteLength": 6291456 + }, + "linear_19": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_20": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "layer_norm_10": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_20": { + "shape": [ + 384, + 3072 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "view_15": { + "shape": [ + 384, + 3, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "permute_5": { + "shape": [ + 3, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "select_15": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "select_16": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "select_17": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_27": { + "shape": [ + 384, + 1, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 98304 + }, + "unsqueeze_28": { + "shape": [ + 384, + 1, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 98304 + }, + "mul_27": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_36": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "slice_37": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "neg_10": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "cat_16": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_28": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_21": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_29": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_38": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "slice_39": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "neg_11": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "cat_17": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_30": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_22": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_25": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_29": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_26": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_30": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_27": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_31": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_40": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_41": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_42": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_28": { + "shape": [ + 1, + 16, + 64, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "matmul_10": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "mul_31": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "softmax_5": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "matmul_11": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_29": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "clone_5": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "cat_18": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "view_16": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_21": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_23": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "layer_norm_11": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_22": { + "shape": [ + 384, + 4096 + ], + "dtype": "float32", + "role": "value", + "byteLength": 6291456 + }, + "gelu_5": { + "shape": [ + 384, + 4096 + ], + "dtype": "float32", + "role": "value", + "byteLength": 6291456 + }, + "linear_23": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_24": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "layer_norm_12": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_24": { + "shape": [ + 384, + 3072 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "view_17": { + "shape": [ + 384, + 3, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "permute_6": { + "shape": [ + 3, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "select_18": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "select_19": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "select_20": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_32": { + "shape": [ + 384, + 1, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 98304 + }, + "unsqueeze_33": { + "shape": [ + 384, + 1, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 98304 + }, + "mul_32": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_43": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "slice_44": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "neg_12": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "cat_19": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_33": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_25": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_34": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_45": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "slice_46": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "neg_13": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "cat_20": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_35": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_26": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_30": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_34": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_31": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_35": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_32": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_36": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_47": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_48": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_49": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_33": { + "shape": [ + 1, + 16, + 64, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "matmul_12": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "mul_36": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "softmax_6": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "matmul_13": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_34": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "clone_6": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "cat_21": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "view_18": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_25": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_27": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "layer_norm_13": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_26": { + "shape": [ + 384, + 4096 + ], + "dtype": "float32", + "role": "value", + "byteLength": 6291456 + }, + "gelu_6": { + "shape": [ + 384, + 4096 + ], + "dtype": "float32", + "role": "value", + "byteLength": 6291456 + }, + "linear_27": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_28": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "layer_norm_14": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_28": { + "shape": [ + 384, + 3072 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "view_19": { + "shape": [ + 384, + 3, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "permute_7": { + "shape": [ + 3, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "select_21": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "select_22": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "select_23": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_37": { + "shape": [ + 384, + 1, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 98304 + }, + "unsqueeze_38": { + "shape": [ + 384, + 1, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 98304 + }, + "mul_37": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_50": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "slice_51": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "neg_14": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "cat_22": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_38": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_29": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_39": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_52": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "slice_53": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "neg_15": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "cat_23": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_40": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_30": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_35": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_39": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_36": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_40": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_37": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_41": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_54": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_55": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_56": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_38": { + "shape": [ + 1, + 16, + 64, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "matmul_14": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "mul_41": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "softmax_7": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "matmul_15": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_39": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "clone_7": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "cat_24": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "view_20": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_29": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_31": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "layer_norm_15": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_30": { + "shape": [ + 384, + 4096 + ], + "dtype": "float32", + "role": "value", + "byteLength": 6291456 + }, + "gelu_7": { + "shape": [ + 384, + 4096 + ], + "dtype": "float32", + "role": "value", + "byteLength": 6291456 + }, + "linear_31": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_32": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "layer_norm_16": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_32": { + "shape": [ + 384, + 3072 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "view_21": { + "shape": [ + 384, + 3, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "permute_8": { + "shape": [ + 3, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "select_24": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "select_25": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "select_26": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_42": { + "shape": [ + 384, + 1, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 98304 + }, + "unsqueeze_43": { + "shape": [ + 384, + 1, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 98304 + }, + "mul_42": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_57": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "slice_58": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "neg_16": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "cat_25": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_43": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_33": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_44": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_59": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "slice_60": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "neg_17": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "cat_26": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_45": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_34": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_40": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_44": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_41": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_45": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_42": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_46": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_61": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_62": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_63": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_43": { + "shape": [ + 1, + 16, + 64, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "matmul_16": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "mul_46": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "softmax_8": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "matmul_17": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_44": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "clone_8": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "cat_27": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "view_22": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_33": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_35": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "layer_norm_17": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_34": { + "shape": [ + 384, + 4096 + ], + "dtype": "float32", + "role": "value", + "byteLength": 6291456 + }, + "gelu_8": { + "shape": [ + 384, + 4096 + ], + "dtype": "float32", + "role": "value", + "byteLength": 6291456 + }, + "linear_35": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_36": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "layer_norm_18": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_36": { + "shape": [ + 384, + 3072 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "view_23": { + "shape": [ + 384, + 3, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "permute_9": { + "shape": [ + 3, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "select_27": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "select_28": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "select_29": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_47": { + "shape": [ + 384, + 1, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 98304 + }, + "unsqueeze_48": { + "shape": [ + 384, + 1, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 98304 + }, + "mul_47": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_64": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "slice_65": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "neg_18": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "cat_28": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_48": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_37": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_49": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_66": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "slice_67": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "neg_19": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "cat_29": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_50": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_38": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_45": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_49": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_46": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_50": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_47": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_51": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_68": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_69": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_70": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_48": { + "shape": [ + 1, + 16, + 64, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "matmul_18": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "mul_51": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "softmax_9": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "matmul_19": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_49": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "clone_9": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "cat_30": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "view_24": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_37": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_39": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "layer_norm_19": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_38": { + "shape": [ + 384, + 4096 + ], + "dtype": "float32", + "role": "value", + "byteLength": 6291456 + }, + "gelu_9": { + "shape": [ + 384, + 4096 + ], + "dtype": "float32", + "role": "value", + "byteLength": 6291456 + }, + "linear_39": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_40": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "layer_norm_20": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_40": { + "shape": [ + 384, + 3072 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "view_25": { + "shape": [ + 384, + 3, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "permute_10": { + "shape": [ + 3, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "select_30": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "select_31": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "select_32": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_52": { + "shape": [ + 384, + 1, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 98304 + }, + "unsqueeze_53": { + "shape": [ + 384, + 1, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 98304 + }, + "mul_52": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_71": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "slice_72": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "neg_20": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "cat_31": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_53": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_41": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_54": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_73": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "slice_74": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "neg_21": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "cat_32": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_55": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_42": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_50": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_54": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_51": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_55": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_52": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_56": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_75": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_76": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_77": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_53": { + "shape": [ + 1, + 16, + 64, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "matmul_20": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "mul_56": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "softmax_10": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "matmul_21": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_54": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "clone_10": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "cat_33": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "view_26": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_41": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_43": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "layer_norm_21": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_42": { + "shape": [ + 384, + 4096 + ], + "dtype": "float32", + "role": "value", + "byteLength": 6291456 + }, + "gelu_10": { + "shape": [ + 384, + 4096 + ], + "dtype": "float32", + "role": "value", + "byteLength": 6291456 + }, + "linear_43": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_44": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "layer_norm_22": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_44": { + "shape": [ + 384, + 3072 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "view_27": { + "shape": [ + 384, + 3, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "permute_11": { + "shape": [ + 3, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "select_33": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "select_34": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "select_35": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_57": { + "shape": [ + 384, + 1, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 98304 + }, + "unsqueeze_58": { + "shape": [ + 384, + 1, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 98304 + }, + "mul_57": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_78": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "slice_79": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "neg_22": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "cat_34": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_58": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_45": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_59": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_80": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "slice_81": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "neg_23": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "cat_35": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_60": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_46": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_55": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_59": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_56": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_60": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_57": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_61": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_82": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_83": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_84": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_58": { + "shape": [ + 1, + 16, + 64, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "matmul_22": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "mul_61": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "softmax_11": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "matmul_23": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_59": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "clone_11": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "cat_36": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "view_28": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_45": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_47": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "layer_norm_23": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_46": { + "shape": [ + 384, + 4096 + ], + "dtype": "float32", + "role": "value", + "byteLength": 6291456 + }, + "gelu_11": { + "shape": [ + 384, + 4096 + ], + "dtype": "float32", + "role": "value", + "byteLength": 6291456 + }, + "linear_47": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_48": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "layer_norm_24": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_48": { + "shape": [ + 384, + 3072 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "view_29": { + "shape": [ + 384, + 3, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "permute_12": { + "shape": [ + 3, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "select_36": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "select_37": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "select_38": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_62": { + "shape": [ + 384, + 1, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 98304 + }, + "unsqueeze_63": { + "shape": [ + 384, + 1, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 98304 + }, + "mul_62": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_85": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "slice_86": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "neg_24": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "cat_37": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_63": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_49": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_64": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_87": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "slice_88": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "neg_25": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "cat_38": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_65": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_50": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_60": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_64": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_61": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_65": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_62": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_66": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_89": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_90": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_91": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_63": { + "shape": [ + 1, + 16, + 64, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "matmul_24": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "mul_66": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "softmax_12": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "matmul_25": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_64": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "clone_12": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "cat_39": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "view_30": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_49": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_51": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "layer_norm_25": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_50": { + "shape": [ + 384, + 4096 + ], + "dtype": "float32", + "role": "value", + "byteLength": 6291456 + }, + "gelu_12": { + "shape": [ + 384, + 4096 + ], + "dtype": "float32", + "role": "value", + "byteLength": 6291456 + }, + "linear_51": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_52": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "layer_norm_26": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_52": { + "shape": [ + 384, + 3072 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "view_31": { + "shape": [ + 384, + 3, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "permute_13": { + "shape": [ + 3, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "select_39": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "select_40": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "select_41": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_67": { + "shape": [ + 384, + 1, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 98304 + }, + "unsqueeze_68": { + "shape": [ + 384, + 1, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 98304 + }, + "mul_67": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_92": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "slice_93": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "neg_26": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "cat_40": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_68": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_53": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_69": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_94": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "slice_95": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "neg_27": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "cat_41": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_70": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_54": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_65": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_69": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_66": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_70": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_67": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_71": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_96": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_97": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_98": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_68": { + "shape": [ + 1, + 16, + 64, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "matmul_26": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "mul_71": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "softmax_13": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "matmul_27": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_69": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "clone_13": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "cat_42": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "view_32": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_53": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_55": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "layer_norm_27": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_54": { + "shape": [ + 384, + 4096 + ], + "dtype": "float32", + "role": "value", + "byteLength": 6291456 + }, + "gelu_13": { + "shape": [ + 384, + 4096 + ], + "dtype": "float32", + "role": "value", + "byteLength": 6291456 + }, + "linear_55": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_56": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "layer_norm_28": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_56": { + "shape": [ + 384, + 3072 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "view_33": { + "shape": [ + 384, + 3, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "permute_14": { + "shape": [ + 3, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "select_42": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "select_43": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "select_44": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_72": { + "shape": [ + 384, + 1, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 98304 + }, + "unsqueeze_73": { + "shape": [ + 384, + 1, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 98304 + }, + "mul_72": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_99": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "slice_100": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "neg_28": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "cat_43": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_73": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_57": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_74": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_101": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "slice_102": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "neg_29": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "cat_44": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_75": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_58": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_70": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_74": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_71": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_75": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_72": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_76": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_103": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_104": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_105": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_73": { + "shape": [ + 1, + 16, + 64, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "matmul_28": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "mul_76": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "softmax_14": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "matmul_29": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_74": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "clone_14": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "cat_45": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "view_34": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_57": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_59": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "layer_norm_29": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_58": { + "shape": [ + 384, + 4096 + ], + "dtype": "float32", + "role": "value", + "byteLength": 6291456 + }, + "gelu_14": { + "shape": [ + 384, + 4096 + ], + "dtype": "float32", + "role": "value", + "byteLength": 6291456 + }, + "linear_59": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_60": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "layer_norm_30": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_60": { + "shape": [ + 384, + 3072 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "view_35": { + "shape": [ + 384, + 3, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "permute_15": { + "shape": [ + 3, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "select_45": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "select_46": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "select_47": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_77": { + "shape": [ + 384, + 1, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 98304 + }, + "unsqueeze_78": { + "shape": [ + 384, + 1, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 98304 + }, + "mul_77": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_106": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "slice_107": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "neg_30": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "cat_46": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_78": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_61": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_79": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_108": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "slice_109": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "neg_31": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "cat_47": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_80": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_62": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_75": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_79": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_76": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_80": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_77": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_81": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_110": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_111": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_112": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_78": { + "shape": [ + 1, + 16, + 64, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "matmul_30": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "mul_81": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "softmax_15": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "matmul_31": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_79": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "clone_15": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "cat_48": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "view_36": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_61": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_63": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "layer_norm_31": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_62": { + "shape": [ + 384, + 4096 + ], + "dtype": "float32", + "role": "value", + "byteLength": 6291456 + }, + "gelu_15": { + "shape": [ + 384, + 4096 + ], + "dtype": "float32", + "role": "value", + "byteLength": 6291456 + }, + "linear_63": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_64": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "layer_norm_32": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_64": { + "shape": [ + 384, + 3072 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "view_37": { + "shape": [ + 384, + 3, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "permute_16": { + "shape": [ + 3, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "select_48": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "select_49": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "select_50": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_82": { + "shape": [ + 384, + 1, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 98304 + }, + "unsqueeze_83": { + "shape": [ + 384, + 1, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 98304 + }, + "mul_82": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_113": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "slice_114": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "neg_32": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "cat_49": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_83": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_65": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_84": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_115": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "slice_116": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "neg_33": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "cat_50": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_85": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_66": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_80": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_84": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_81": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_85": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_82": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_86": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_117": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_118": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_119": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_83": { + "shape": [ + 1, + 16, + 64, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "matmul_32": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "mul_86": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "softmax_16": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "matmul_33": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_84": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "clone_16": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "cat_51": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "view_38": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_65": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_67": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "layer_norm_33": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_66": { + "shape": [ + 384, + 4096 + ], + "dtype": "float32", + "role": "value", + "byteLength": 6291456 + }, + "gelu_16": { + "shape": [ + 384, + 4096 + ], + "dtype": "float32", + "role": "value", + "byteLength": 6291456 + }, + "linear_67": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_68": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "layer_norm_34": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_68": { + "shape": [ + 384, + 3072 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "view_39": { + "shape": [ + 384, + 3, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "permute_17": { + "shape": [ + 3, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "select_51": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "select_52": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "select_53": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_87": { + "shape": [ + 384, + 1, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 98304 + }, + "unsqueeze_88": { + "shape": [ + 384, + 1, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 98304 + }, + "mul_87": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_120": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "slice_121": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "neg_34": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "cat_52": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_88": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_69": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_89": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_122": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "slice_123": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "neg_35": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "cat_53": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_90": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_70": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_85": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_89": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_86": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_90": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_87": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_91": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_124": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_125": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_126": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_88": { + "shape": [ + 1, + 16, + 64, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "matmul_34": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "mul_91": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "softmax_17": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "matmul_35": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_89": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "clone_17": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "cat_54": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "view_40": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_69": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_71": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "layer_norm_35": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_70": { + "shape": [ + 384, + 4096 + ], + "dtype": "float32", + "role": "value", + "byteLength": 6291456 + }, + "gelu_17": { + "shape": [ + 384, + 4096 + ], + "dtype": "float32", + "role": "value", + "byteLength": 6291456 + }, + "linear_71": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_72": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "layer_norm_36": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_72": { + "shape": [ + 384, + 3072 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "view_41": { + "shape": [ + 384, + 3, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "permute_18": { + "shape": [ + 3, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "select_54": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "select_55": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "select_56": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_92": { + "shape": [ + 384, + 1, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 98304 + }, + "unsqueeze_93": { + "shape": [ + 384, + 1, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 98304 + }, + "mul_92": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_127": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "slice_128": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "neg_36": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "cat_55": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_93": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_73": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_94": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_129": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "slice_130": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "neg_37": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "cat_56": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_95": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_74": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_90": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_94": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_91": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_95": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_92": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_96": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_131": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_132": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_133": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_93": { + "shape": [ + 1, + 16, + 64, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "matmul_36": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "mul_96": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "softmax_18": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "matmul_37": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_94": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "clone_18": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "cat_57": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "view_42": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_73": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_75": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "layer_norm_37": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_74": { + "shape": [ + 384, + 4096 + ], + "dtype": "float32", + "role": "value", + "byteLength": 6291456 + }, + "gelu_18": { + "shape": [ + 384, + 4096 + ], + "dtype": "float32", + "role": "value", + "byteLength": 6291456 + }, + "linear_75": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_76": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "layer_norm_38": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_76": { + "shape": [ + 384, + 3072 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "view_43": { + "shape": [ + 384, + 3, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "permute_19": { + "shape": [ + 3, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "select_57": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "select_58": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "select_59": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_97": { + "shape": [ + 384, + 1, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 98304 + }, + "unsqueeze_98": { + "shape": [ + 384, + 1, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 98304 + }, + "mul_97": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_134": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "slice_135": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "neg_38": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "cat_58": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_98": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_77": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_99": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_136": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "slice_137": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "neg_39": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "cat_59": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_100": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_78": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_95": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_99": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_96": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_100": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_97": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_101": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_138": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_139": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_140": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_98": { + "shape": [ + 1, + 16, + 64, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "matmul_38": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "mul_101": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "softmax_19": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "matmul_39": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_99": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "clone_19": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "cat_60": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "view_44": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_77": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_79": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "layer_norm_39": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_78": { + "shape": [ + 384, + 4096 + ], + "dtype": "float32", + "role": "value", + "byteLength": 6291456 + }, + "gelu_19": { + "shape": [ + 384, + 4096 + ], + "dtype": "float32", + "role": "value", + "byteLength": 6291456 + }, + "linear_79": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_80": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "layer_norm_40": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_80": { + "shape": [ + 384, + 3072 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "view_45": { + "shape": [ + 384, + 3, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "permute_20": { + "shape": [ + 3, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "select_60": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "select_61": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "select_62": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_102": { + "shape": [ + 384, + 1, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 98304 + }, + "unsqueeze_103": { + "shape": [ + 384, + 1, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 98304 + }, + "mul_102": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_141": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "slice_142": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "neg_40": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "cat_61": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_103": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_81": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_104": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_143": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "slice_144": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "neg_41": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "cat_62": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_105": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_82": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_100": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_104": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_101": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_105": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_102": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_106": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_145": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_146": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_147": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_103": { + "shape": [ + 1, + 16, + 64, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "matmul_40": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "mul_106": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "softmax_20": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "matmul_41": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_104": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "clone_20": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "cat_63": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "view_46": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_81": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_83": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "layer_norm_41": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_82": { + "shape": [ + 384, + 4096 + ], + "dtype": "float32", + "role": "value", + "byteLength": 6291456 + }, + "gelu_20": { + "shape": [ + 384, + 4096 + ], + "dtype": "float32", + "role": "value", + "byteLength": 6291456 + }, + "linear_83": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_84": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "layer_norm_42": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_84": { + "shape": [ + 384, + 3072 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "view_47": { + "shape": [ + 384, + 3, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "permute_21": { + "shape": [ + 3, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "select_63": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "select_64": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "select_65": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_107": { + "shape": [ + 384, + 1, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 98304 + }, + "unsqueeze_108": { + "shape": [ + 384, + 1, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 98304 + }, + "mul_107": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_148": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "slice_149": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "neg_42": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "cat_64": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_108": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_85": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_109": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_150": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "slice_151": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "neg_43": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "cat_65": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_110": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_86": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_105": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_109": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_106": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_110": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_107": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_111": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_152": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_153": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_154": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_108": { + "shape": [ + 1, + 16, + 64, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "matmul_42": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "mul_111": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "softmax_21": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "matmul_43": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_109": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "clone_21": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "cat_66": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "view_48": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_85": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_87": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "layer_norm_43": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_86": { + "shape": [ + 384, + 4096 + ], + "dtype": "float32", + "role": "value", + "byteLength": 6291456 + }, + "gelu_21": { + "shape": [ + 384, + 4096 + ], + "dtype": "float32", + "role": "value", + "byteLength": 6291456 + }, + "linear_87": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_88": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "layer_norm_44": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_88": { + "shape": [ + 384, + 3072 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "view_49": { + "shape": [ + 384, + 3, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "permute_22": { + "shape": [ + 3, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "select_66": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "select_67": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "select_68": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_112": { + "shape": [ + 384, + 1, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 98304 + }, + "unsqueeze_113": { + "shape": [ + 384, + 1, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 98304 + }, + "mul_112": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_155": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "slice_156": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "neg_44": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "cat_67": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_113": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_89": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_114": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_157": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "slice_158": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "neg_45": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "cat_68": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_115": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_90": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_110": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_114": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_111": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_115": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_112": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_116": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_159": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_160": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_161": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_113": { + "shape": [ + 1, + 16, + 64, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "matmul_44": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "mul_116": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "softmax_22": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "matmul_45": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_114": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "clone_22": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "cat_69": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "view_50": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_89": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_91": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "layer_norm_45": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_90": { + "shape": [ + 384, + 4096 + ], + "dtype": "float32", + "role": "value", + "byteLength": 6291456 + }, + "gelu_22": { + "shape": [ + 384, + 4096 + ], + "dtype": "float32", + "role": "value", + "byteLength": 6291456 + }, + "linear_91": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_92": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "layer_norm_46": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_92": { + "shape": [ + 384, + 3072 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "view_51": { + "shape": [ + 384, + 3, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "permute_23": { + "shape": [ + 3, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 4718592 + }, + "select_69": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "select_70": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "select_71": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_117": { + "shape": [ + 384, + 1, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 98304 + }, + "unsqueeze_118": { + "shape": [ + 384, + 1, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 98304 + }, + "mul_117": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_162": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "slice_163": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "neg_46": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "cat_70": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_118": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_93": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_119": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_164": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "slice_165": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "neg_47": { + "shape": [ + 384, + 16, + 32 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + }, + "cat_71": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "mul_120": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_94": { + "shape": [ + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_115": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_119": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_116": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_120": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_117": { + "shape": [ + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "unsqueeze_121": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_166": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_167": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "slice_168": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_118": { + "shape": [ + 1, + 16, + 64, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "matmul_46": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "mul_121": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "softmax_23": { + "shape": [ + 1, + 16, + 384, + 384 + ], + "dtype": "float32", + "role": "value", + "byteLength": 9437184 + }, + "matmul_47": { + "shape": [ + 1, + 16, + 384, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "transpose_119": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "clone_23": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "cat_72": { + "shape": [ + 1, + 384, + 16, + 64 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "view_52": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_93": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_95": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "layer_norm_47": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_94": { + "shape": [ + 384, + 4096 + ], + "dtype": "float32", + "role": "value", + "byteLength": 6291456 + }, + "gelu_23": { + "shape": [ + 384, + 4096 + ], + "dtype": "float32", + "role": "value", + "byteLength": 6291456 + }, + "linear_95": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "add_96": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "layer_norm_48": { + "shape": [ + 384, + 1024 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "view_53": { + "shape": [ + 96, + 4096 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_96": { + "shape": [ + 96, + 4096 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "gelu_24": { + "shape": [ + 96, + 4096 + ], + "dtype": "float32", + "role": "value", + "byteLength": 1572864 + }, + "linear_97": { + "shape": [ + 96, + 2048 + ], + "dtype": "float32", + "role": "value", + "byteLength": 786432 + } + }, + "nodes": [ + { + "id": "view", + "op": "aten.view.default", + "args": [ + { + "tensor": "pixels" + }, + [ + -1, + 3, + 2, + 16, + 16 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1096, in forward\n hidden_states = self.patch_embed(hidden_states)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 859, in forward\n hidden_states = hidden_states.view(\n ^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "conv3d", + "op": "aten.conv3d.default", + "args": [ + { + "tensor": "view" + }, + { + "tensor": "p_visual_patch_embed_proj_weight" + }, + { + "tensor": "p_visual_patch_embed_proj_bias" + }, + [ + 2, + 16, + 16 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1096, in forward\n hidden_states = self.patch_embed(hidden_states)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 862, in forward\n hidden_states = self.proj(hidden_states.to(dtype=target_dtype)).view(-1, self.embed_dim)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "view_1", + "op": "aten.view.default", + "args": [ + { + "tensor": "conv3d" + }, + [ + -1, + 1024 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1096, in forward\n hidden_states = self.patch_embed(hidden_states)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 862, in forward\n hidden_states = self.proj(hidden_states.to(dtype=target_dtype)).view(-1, self.embed_dim)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "embedding", + "op": "aten.embedding.default", + "args": [ + { + "tensor": "p_visual_pos_embed_weight" + }, + { + "tensor": "b_indices" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1097, in forward\n pos_embeds = (self.pos_embed(interp_indices) * interp_weights[:, :, None]).sum(1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "b_interpolation_weights" + }, + 2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1097, in forward\n pos_embeds = (self.pos_embed(interp_indices) * interp_weights[:, :, None]).sum(1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "embedding" + }, + { + "tensor": "unsqueeze" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1097, in forward\n pos_embeds = (self.pos_embed(interp_indices) * interp_weights[:, :, None]).sum(1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "sum_1", + "op": "aten.sum.dim_IntList", + "args": [ + { + "tensor": "mul" + }, + [ + 1 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1097, in forward\n pos_embeds = (self.pos_embed(interp_indices) * interp_weights[:, :, None]).sum(1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "view_1" + }, + { + "tensor": "sum_1" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1098, in forward\n hidden_states = hidden_states + pos_embeds.to(hidden_states.dtype)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_1", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "b_positions" + }, + -1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1099, in forward\n rotary_pos_emb = self.rotary_pos_emb(position_ids)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 81, in forward\n return (position_ids.unsqueeze(-1) * self.inv_freq).flatten(1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_1", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "unsqueeze_1" + }, + { + "tensor": "b_visual_rotary_pos_emb_inv_freq" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1099, in forward\n rotary_pos_emb = self.rotary_pos_emb(position_ids)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 81, in forward\n return (position_ids.unsqueeze(-1) * self.inv_freq).flatten(1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "view_2", + "op": "aten.view.default", + "args": [ + { + "tensor": "mul_1" + }, + [ + 384, + 32 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1099, in forward\n rotary_pos_emb = self.rotary_pos_emb(position_ids)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 81, in forward\n return (position_ids.unsqueeze(-1) * self.inv_freq).flatten(1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "view_3", + "op": "aten.view.default", + "args": [ + { + "tensor": "add" + }, + [ + 384, + -1 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1102, in forward\n hidden_states = hidden_states.reshape(seq_len, -1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "view_4", + "op": "aten.view.default", + "args": [ + { + "tensor": "view_2" + }, + [ + 384, + -1 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1103, in forward\n rotary_pos_emb = rotary_pos_emb.reshape(seq_len, -1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "view_4" + }, + { + "tensor": "view_4" + } + ], + -1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1104, in forward\n emb = torch.cat((rotary_pos_emb, rotary_pos_emb), dim=-1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "cos", + "op": "aten.cos.default", + "args": [ + { + "tensor": "cat" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1105, in forward\n position_embeddings = (emb.cos(), emb.sin())\n ^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "sin", + "op": "aten.sin.default", + "args": [ + { + "tensor": "cat" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1105, in forward\n position_embeddings = (emb.cos(), emb.sin())\n ^^^^^^^^^^" + }, + { + "id": "layer_norm", + "op": "aten.layer_norm.default", + "args": [ + { + "tensor": "view_3" + }, + [ + 1024 + ], + { + "tensor": "p_visual_blocks_0_norm1_weight" + }, + { + "tensor": "p_visual_blocks_0_norm1_bias" + }, + 1e-06, + false + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1000, in forward\n self.norm1(hidden_states)," + }, + { + "id": "linear", + "op": "aten.linear.default", + "args": [ + { + "tensor": "layer_norm" + }, + { + "tensor": "p_visual_blocks_0_attn_qkv_weight" + }, + { + "tensor": "p_visual_blocks_0_attn_qkv_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "view_5", + "op": "aten.view.default", + "args": [ + { + "tensor": "linear" + }, + [ + 384, + 3, + 16, + -1 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "permute", + "op": "aten.permute.default", + "args": [ + { + "tensor": "view_5" + }, + [ + 1, + 0, + 2, + 3 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute" + }, + 0, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_1", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_2", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute" + }, + 0, + 2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "unsqueeze_2", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "cos" + }, + -2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 888, in apply_rotary_pos_emb_vision\n cos, sin = cos.unsqueeze(-2).float(), sin.unsqueeze(-2).float()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_3", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "sin" + }, + -2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 888, in apply_rotary_pos_emb_vision\n cos, sin = cos.unsqueeze(-2).float(), sin.unsqueeze(-2).float()\n ^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_2", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "select" + }, + { + "tensor": "unsqueeze_2" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_1", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select" + }, + 2, + 0, + 32 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 551, in rotate_half\n x1 = x[..., : x.shape[-1] // 2]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_2", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select" + }, + 2, + 32, + 9223372036854775807 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 552, in rotate_half\n x2 = x[..., x.shape[-1] // 2 :]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "neg", + "op": "aten.neg.default", + "args": [ + { + "tensor": "slice_2" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_1", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "neg" + }, + { + "tensor": "slice_1" + } + ], + -1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_3", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "cat_1" + }, + { + "tensor": "unsqueeze_3" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_1", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "mul_2" + }, + { + "tensor": "mul_3" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_4", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "select_1" + }, + { + "tensor": "unsqueeze_2" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_3", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_1" + }, + 2, + 0, + 32 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 551, in rotate_half\n x1 = x[..., : x.shape[-1] // 2]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_4", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_1" + }, + 2, + 32, + 9223372036854775807 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 552, in rotate_half\n x2 = x[..., x.shape[-1] // 2 :]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "neg_1", + "op": "aten.neg.default", + "args": [ + { + "tensor": "slice_4" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_2", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "neg_1" + }, + { + "tensor": "slice_3" + } + ], + -1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_5", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "cat_2" + }, + { + "tensor": "unsqueeze_3" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_2", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "mul_4" + }, + { + "tensor": "mul_5" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "add_1" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 925, in forward\n query_states = query_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_4", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 925, in forward\n query_states = query_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_1", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "add_2" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 926, in forward\n key_states = key_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_5", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_1" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 926, in forward\n key_states = key_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_2", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "select_2" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 927, in forward\n value_states = value_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_6", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_2" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 927, in forward\n value_states = value_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_5", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_4" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "slice_6", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_5" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "slice_7", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_6" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "transpose_3", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "slice_6" + }, + 2, + 3 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "matmul", + "op": "aten.matmul.default", + "args": [ + { + "tensor": "slice_5" + }, + { + "tensor": "transpose_3" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_6", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "matmul" + }, + 0.125 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "softmax", + "op": "aten.softmax.int", + "args": [ + { + "tensor": "mul_6" + }, + -1, + { + "dtype": "float32" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 624, in eager_attention_forward\n attn_weights = nn.functional.softmax(attn_weights, dim=-1, dtype=torch.float32).to(query.dtype)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "matmul_1", + "op": "aten.matmul.default", + "args": [ + { + "tensor": "softmax" + }, + { + "tensor": "slice_7" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 626, in eager_attention_forward\n attn_output = torch.matmul(attn_weights, value_states)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_4", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "matmul_1" + }, + 1, + 2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 627, in eager_attention_forward\n attn_output = attn_output.transpose(1, 2).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "clone", + "op": "aten.clone.default", + "args": [ + { + "tensor": "transpose_4" + } + ], + "kwargs": { + "memory_format": { + "memoryFormat": "contiguous_format" + } + }, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 627, in eager_attention_forward\n attn_output = attn_output.transpose(1, 2).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_3", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "clone" + } + ], + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 972, in forward\n attn_output = torch.cat(attn_outputs, dim=1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "view_6", + "op": "aten.view.default", + "args": [ + { + "tensor": "cat_3" + }, + [ + 384, + -1 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 974, in forward\n attn_output = attn_output.reshape(seq_length, -1).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "linear_1", + "op": "aten.linear.default", + "args": [ + { + "tensor": "view_6" + }, + { + "tensor": "p_visual_blocks_0_attn_proj_weight" + }, + { + "tensor": "p_visual_blocks_0_attn_proj_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 975, in forward\n attn_output = self.proj(attn_output)\n ^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_3", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "view_3" + }, + { + "tensor": "linear_1" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "layer_norm_1", + "op": "aten.layer_norm.default", + "args": [ + { + "tensor": "add_3" + }, + [ + 1024 + ], + { + "tensor": "p_visual_blocks_0_norm2_weight" + }, + { + "tensor": "p_visual_blocks_0_norm2_bias" + }, + 1e-06, + false + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "linear_2", + "op": "aten.linear.default", + "args": [ + { + "tensor": "layer_norm_1" + }, + { + "tensor": "p_visual_blocks_0_mlp_linear_fc1_weight" + }, + { + "tensor": "p_visual_blocks_0_mlp_linear_fc1_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "gelu", + "op": "aten.gelu.default", + "args": [ + { + "tensor": "linear_2" + } + ], + "kwargs": { + "approximate": "tanh" + }, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/activations.py\", line 51, in forward\n return self.act(input)\n ^^^^^^^^^^^^^^^" + }, + { + "id": "linear_3", + "op": "aten.linear.default", + "args": [ + { + "tensor": "gelu" + }, + { + "tensor": "p_visual_blocks_0_mlp_linear_fc2_weight" + }, + { + "tensor": "p_visual_blocks_0_mlp_linear_fc2_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_4", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "add_3" + }, + { + "tensor": "linear_3" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "layer_norm_2", + "op": "aten.layer_norm.default", + "args": [ + { + "tensor": "add_4" + }, + [ + 1024 + ], + { + "tensor": "p_visual_blocks_1_norm1_weight" + }, + { + "tensor": "p_visual_blocks_1_norm1_bias" + }, + 1e-06, + false + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1000, in forward\n self.norm1(hidden_states)," + }, + { + "id": "linear_4", + "op": "aten.linear.default", + "args": [ + { + "tensor": "layer_norm_2" + }, + { + "tensor": "p_visual_blocks_1_attn_qkv_weight" + }, + { + "tensor": "p_visual_blocks_1_attn_qkv_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "view_7", + "op": "aten.view.default", + "args": [ + { + "tensor": "linear_4" + }, + [ + 384, + 3, + 16, + -1 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "permute_1", + "op": "aten.permute.default", + "args": [ + { + "tensor": "view_7" + }, + [ + 1, + 0, + 2, + 3 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_3", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_1" + }, + 0, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_4", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_1" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_5", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_1" + }, + 0, + 2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "unsqueeze_7", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "cos" + }, + -2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 888, in apply_rotary_pos_emb_vision\n cos, sin = cos.unsqueeze(-2).float(), sin.unsqueeze(-2).float()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_8", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "sin" + }, + -2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 888, in apply_rotary_pos_emb_vision\n cos, sin = cos.unsqueeze(-2).float(), sin.unsqueeze(-2).float()\n ^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_7", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "select_3" + }, + { + "tensor": "unsqueeze_7" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_8", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_3" + }, + 2, + 0, + 32 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 551, in rotate_half\n x1 = x[..., : x.shape[-1] // 2]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_9", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_3" + }, + 2, + 32, + 9223372036854775807 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 552, in rotate_half\n x2 = x[..., x.shape[-1] // 2 :]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "neg_2", + "op": "aten.neg.default", + "args": [ + { + "tensor": "slice_9" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_4", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "neg_2" + }, + { + "tensor": "slice_8" + } + ], + -1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_8", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "cat_4" + }, + { + "tensor": "unsqueeze_8" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_5", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "mul_7" + }, + { + "tensor": "mul_8" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_9", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "select_4" + }, + { + "tensor": "unsqueeze_7" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_10", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_4" + }, + 2, + 0, + 32 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 551, in rotate_half\n x1 = x[..., : x.shape[-1] // 2]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_11", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_4" + }, + 2, + 32, + 9223372036854775807 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 552, in rotate_half\n x2 = x[..., x.shape[-1] // 2 :]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "neg_3", + "op": "aten.neg.default", + "args": [ + { + "tensor": "slice_11" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_5", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "neg_3" + }, + { + "tensor": "slice_10" + } + ], + -1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_10", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "cat_5" + }, + { + "tensor": "unsqueeze_8" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_6", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "mul_9" + }, + { + "tensor": "mul_10" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_5", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "add_5" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 925, in forward\n query_states = query_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_9", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_5" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 925, in forward\n query_states = query_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_6", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "add_6" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 926, in forward\n key_states = key_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_10", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_6" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 926, in forward\n key_states = key_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_7", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "select_5" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 927, in forward\n value_states = value_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_11", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_7" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 927, in forward\n value_states = value_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_12", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_9" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "slice_13", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_10" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "slice_14", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_11" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "transpose_8", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "slice_13" + }, + 2, + 3 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "matmul_2", + "op": "aten.matmul.default", + "args": [ + { + "tensor": "slice_12" + }, + { + "tensor": "transpose_8" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_11", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "matmul_2" + }, + 0.125 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "softmax_1", + "op": "aten.softmax.int", + "args": [ + { + "tensor": "mul_11" + }, + -1, + { + "dtype": "float32" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 624, in eager_attention_forward\n attn_weights = nn.functional.softmax(attn_weights, dim=-1, dtype=torch.float32).to(query.dtype)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "matmul_3", + "op": "aten.matmul.default", + "args": [ + { + "tensor": "softmax_1" + }, + { + "tensor": "slice_14" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 626, in eager_attention_forward\n attn_output = torch.matmul(attn_weights, value_states)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_9", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "matmul_3" + }, + 1, + 2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 627, in eager_attention_forward\n attn_output = attn_output.transpose(1, 2).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "clone_1", + "op": "aten.clone.default", + "args": [ + { + "tensor": "transpose_9" + } + ], + "kwargs": { + "memory_format": { + "memoryFormat": "contiguous_format" + } + }, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 627, in eager_attention_forward\n attn_output = attn_output.transpose(1, 2).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_6", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "clone_1" + } + ], + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 972, in forward\n attn_output = torch.cat(attn_outputs, dim=1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "view_8", + "op": "aten.view.default", + "args": [ + { + "tensor": "cat_6" + }, + [ + 384, + -1 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 974, in forward\n attn_output = attn_output.reshape(seq_length, -1).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "linear_5", + "op": "aten.linear.default", + "args": [ + { + "tensor": "view_8" + }, + { + "tensor": "p_visual_blocks_1_attn_proj_weight" + }, + { + "tensor": "p_visual_blocks_1_attn_proj_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 975, in forward\n attn_output = self.proj(attn_output)\n ^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_7", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "add_4" + }, + { + "tensor": "linear_5" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "layer_norm_3", + "op": "aten.layer_norm.default", + "args": [ + { + "tensor": "add_7" + }, + [ + 1024 + ], + { + "tensor": "p_visual_blocks_1_norm2_weight" + }, + { + "tensor": "p_visual_blocks_1_norm2_bias" + }, + 1e-06, + false + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "linear_6", + "op": "aten.linear.default", + "args": [ + { + "tensor": "layer_norm_3" + }, + { + "tensor": "p_visual_blocks_1_mlp_linear_fc1_weight" + }, + { + "tensor": "p_visual_blocks_1_mlp_linear_fc1_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "gelu_1", + "op": "aten.gelu.default", + "args": [ + { + "tensor": "linear_6" + } + ], + "kwargs": { + "approximate": "tanh" + }, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/activations.py\", line 51, in forward\n return self.act(input)\n ^^^^^^^^^^^^^^^" + }, + { + "id": "linear_7", + "op": "aten.linear.default", + "args": [ + { + "tensor": "gelu_1" + }, + { + "tensor": "p_visual_blocks_1_mlp_linear_fc2_weight" + }, + { + "tensor": "p_visual_blocks_1_mlp_linear_fc2_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_8", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "add_7" + }, + { + "tensor": "linear_7" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "layer_norm_4", + "op": "aten.layer_norm.default", + "args": [ + { + "tensor": "add_8" + }, + [ + 1024 + ], + { + "tensor": "p_visual_blocks_2_norm1_weight" + }, + { + "tensor": "p_visual_blocks_2_norm1_bias" + }, + 1e-06, + false + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1000, in forward\n self.norm1(hidden_states)," + }, + { + "id": "linear_8", + "op": "aten.linear.default", + "args": [ + { + "tensor": "layer_norm_4" + }, + { + "tensor": "p_visual_blocks_2_attn_qkv_weight" + }, + { + "tensor": "p_visual_blocks_2_attn_qkv_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "view_9", + "op": "aten.view.default", + "args": [ + { + "tensor": "linear_8" + }, + [ + 384, + 3, + 16, + -1 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "permute_2", + "op": "aten.permute.default", + "args": [ + { + "tensor": "view_9" + }, + [ + 1, + 0, + 2, + 3 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_6", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_2" + }, + 0, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_7", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_2" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_8", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_2" + }, + 0, + 2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "unsqueeze_12", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "cos" + }, + -2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 888, in apply_rotary_pos_emb_vision\n cos, sin = cos.unsqueeze(-2).float(), sin.unsqueeze(-2).float()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_13", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "sin" + }, + -2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 888, in apply_rotary_pos_emb_vision\n cos, sin = cos.unsqueeze(-2).float(), sin.unsqueeze(-2).float()\n ^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_12", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "select_6" + }, + { + "tensor": "unsqueeze_12" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_15", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_6" + }, + 2, + 0, + 32 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 551, in rotate_half\n x1 = x[..., : x.shape[-1] // 2]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_16", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_6" + }, + 2, + 32, + 9223372036854775807 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 552, in rotate_half\n x2 = x[..., x.shape[-1] // 2 :]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "neg_4", + "op": "aten.neg.default", + "args": [ + { + "tensor": "slice_16" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_7", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "neg_4" + }, + { + "tensor": "slice_15" + } + ], + -1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_13", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "cat_7" + }, + { + "tensor": "unsqueeze_13" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_9", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "mul_12" + }, + { + "tensor": "mul_13" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_14", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "select_7" + }, + { + "tensor": "unsqueeze_12" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_17", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_7" + }, + 2, + 0, + 32 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 551, in rotate_half\n x1 = x[..., : x.shape[-1] // 2]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_18", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_7" + }, + 2, + 32, + 9223372036854775807 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 552, in rotate_half\n x2 = x[..., x.shape[-1] // 2 :]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "neg_5", + "op": "aten.neg.default", + "args": [ + { + "tensor": "slice_18" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_8", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "neg_5" + }, + { + "tensor": "slice_17" + } + ], + -1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_15", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "cat_8" + }, + { + "tensor": "unsqueeze_13" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_10", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "mul_14" + }, + { + "tensor": "mul_15" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_10", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "add_9" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 925, in forward\n query_states = query_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_14", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_10" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 925, in forward\n query_states = query_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_11", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "add_10" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 926, in forward\n key_states = key_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_15", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_11" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 926, in forward\n key_states = key_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_12", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "select_8" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 927, in forward\n value_states = value_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_16", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_12" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 927, in forward\n value_states = value_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_19", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_14" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "slice_20", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_15" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "slice_21", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_16" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "transpose_13", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "slice_20" + }, + 2, + 3 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "matmul_4", + "op": "aten.matmul.default", + "args": [ + { + "tensor": "slice_19" + }, + { + "tensor": "transpose_13" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_16", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "matmul_4" + }, + 0.125 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "softmax_2", + "op": "aten.softmax.int", + "args": [ + { + "tensor": "mul_16" + }, + -1, + { + "dtype": "float32" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 624, in eager_attention_forward\n attn_weights = nn.functional.softmax(attn_weights, dim=-1, dtype=torch.float32).to(query.dtype)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "matmul_5", + "op": "aten.matmul.default", + "args": [ + { + "tensor": "softmax_2" + }, + { + "tensor": "slice_21" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 626, in eager_attention_forward\n attn_output = torch.matmul(attn_weights, value_states)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_14", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "matmul_5" + }, + 1, + 2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 627, in eager_attention_forward\n attn_output = attn_output.transpose(1, 2).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "clone_2", + "op": "aten.clone.default", + "args": [ + { + "tensor": "transpose_14" + } + ], + "kwargs": { + "memory_format": { + "memoryFormat": "contiguous_format" + } + }, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 627, in eager_attention_forward\n attn_output = attn_output.transpose(1, 2).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_9", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "clone_2" + } + ], + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 972, in forward\n attn_output = torch.cat(attn_outputs, dim=1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "view_10", + "op": "aten.view.default", + "args": [ + { + "tensor": "cat_9" + }, + [ + 384, + -1 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 974, in forward\n attn_output = attn_output.reshape(seq_length, -1).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "linear_9", + "op": "aten.linear.default", + "args": [ + { + "tensor": "view_10" + }, + { + "tensor": "p_visual_blocks_2_attn_proj_weight" + }, + { + "tensor": "p_visual_blocks_2_attn_proj_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 975, in forward\n attn_output = self.proj(attn_output)\n ^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_11", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "add_8" + }, + { + "tensor": "linear_9" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "layer_norm_5", + "op": "aten.layer_norm.default", + "args": [ + { + "tensor": "add_11" + }, + [ + 1024 + ], + { + "tensor": "p_visual_blocks_2_norm2_weight" + }, + { + "tensor": "p_visual_blocks_2_norm2_bias" + }, + 1e-06, + false + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "linear_10", + "op": "aten.linear.default", + "args": [ + { + "tensor": "layer_norm_5" + }, + { + "tensor": "p_visual_blocks_2_mlp_linear_fc1_weight" + }, + { + "tensor": "p_visual_blocks_2_mlp_linear_fc1_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "gelu_2", + "op": "aten.gelu.default", + "args": [ + { + "tensor": "linear_10" + } + ], + "kwargs": { + "approximate": "tanh" + }, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/activations.py\", line 51, in forward\n return self.act(input)\n ^^^^^^^^^^^^^^^" + }, + { + "id": "linear_11", + "op": "aten.linear.default", + "args": [ + { + "tensor": "gelu_2" + }, + { + "tensor": "p_visual_blocks_2_mlp_linear_fc2_weight" + }, + { + "tensor": "p_visual_blocks_2_mlp_linear_fc2_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_12", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "add_11" + }, + { + "tensor": "linear_11" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "layer_norm_6", + "op": "aten.layer_norm.default", + "args": [ + { + "tensor": "add_12" + }, + [ + 1024 + ], + { + "tensor": "p_visual_blocks_3_norm1_weight" + }, + { + "tensor": "p_visual_blocks_3_norm1_bias" + }, + 1e-06, + false + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1000, in forward\n self.norm1(hidden_states)," + }, + { + "id": "linear_12", + "op": "aten.linear.default", + "args": [ + { + "tensor": "layer_norm_6" + }, + { + "tensor": "p_visual_blocks_3_attn_qkv_weight" + }, + { + "tensor": "p_visual_blocks_3_attn_qkv_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "view_11", + "op": "aten.view.default", + "args": [ + { + "tensor": "linear_12" + }, + [ + 384, + 3, + 16, + -1 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "permute_3", + "op": "aten.permute.default", + "args": [ + { + "tensor": "view_11" + }, + [ + 1, + 0, + 2, + 3 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_9", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_3" + }, + 0, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_10", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_3" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_11", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_3" + }, + 0, + 2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "unsqueeze_17", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "cos" + }, + -2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 888, in apply_rotary_pos_emb_vision\n cos, sin = cos.unsqueeze(-2).float(), sin.unsqueeze(-2).float()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_18", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "sin" + }, + -2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 888, in apply_rotary_pos_emb_vision\n cos, sin = cos.unsqueeze(-2).float(), sin.unsqueeze(-2).float()\n ^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_17", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "select_9" + }, + { + "tensor": "unsqueeze_17" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_22", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_9" + }, + 2, + 0, + 32 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 551, in rotate_half\n x1 = x[..., : x.shape[-1] // 2]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_23", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_9" + }, + 2, + 32, + 9223372036854775807 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 552, in rotate_half\n x2 = x[..., x.shape[-1] // 2 :]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "neg_6", + "op": "aten.neg.default", + "args": [ + { + "tensor": "slice_23" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_10", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "neg_6" + }, + { + "tensor": "slice_22" + } + ], + -1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_18", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "cat_10" + }, + { + "tensor": "unsqueeze_18" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_13", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "mul_17" + }, + { + "tensor": "mul_18" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_19", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "select_10" + }, + { + "tensor": "unsqueeze_17" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_24", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_10" + }, + 2, + 0, + 32 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 551, in rotate_half\n x1 = x[..., : x.shape[-1] // 2]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_25", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_10" + }, + 2, + 32, + 9223372036854775807 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 552, in rotate_half\n x2 = x[..., x.shape[-1] // 2 :]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "neg_7", + "op": "aten.neg.default", + "args": [ + { + "tensor": "slice_25" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_11", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "neg_7" + }, + { + "tensor": "slice_24" + } + ], + -1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_20", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "cat_11" + }, + { + "tensor": "unsqueeze_18" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_14", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "mul_19" + }, + { + "tensor": "mul_20" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_15", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "add_13" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 925, in forward\n query_states = query_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_19", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_15" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 925, in forward\n query_states = query_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_16", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "add_14" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 926, in forward\n key_states = key_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_20", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_16" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 926, in forward\n key_states = key_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_17", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "select_11" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 927, in forward\n value_states = value_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_21", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_17" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 927, in forward\n value_states = value_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_26", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_19" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "slice_27", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_20" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "slice_28", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_21" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "transpose_18", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "slice_27" + }, + 2, + 3 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "matmul_6", + "op": "aten.matmul.default", + "args": [ + { + "tensor": "slice_26" + }, + { + "tensor": "transpose_18" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_21", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "matmul_6" + }, + 0.125 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "softmax_3", + "op": "aten.softmax.int", + "args": [ + { + "tensor": "mul_21" + }, + -1, + { + "dtype": "float32" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 624, in eager_attention_forward\n attn_weights = nn.functional.softmax(attn_weights, dim=-1, dtype=torch.float32).to(query.dtype)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "matmul_7", + "op": "aten.matmul.default", + "args": [ + { + "tensor": "softmax_3" + }, + { + "tensor": "slice_28" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 626, in eager_attention_forward\n attn_output = torch.matmul(attn_weights, value_states)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_19", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "matmul_7" + }, + 1, + 2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 627, in eager_attention_forward\n attn_output = attn_output.transpose(1, 2).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "clone_3", + "op": "aten.clone.default", + "args": [ + { + "tensor": "transpose_19" + } + ], + "kwargs": { + "memory_format": { + "memoryFormat": "contiguous_format" + } + }, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 627, in eager_attention_forward\n attn_output = attn_output.transpose(1, 2).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_12", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "clone_3" + } + ], + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 972, in forward\n attn_output = torch.cat(attn_outputs, dim=1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "view_12", + "op": "aten.view.default", + "args": [ + { + "tensor": "cat_12" + }, + [ + 384, + -1 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 974, in forward\n attn_output = attn_output.reshape(seq_length, -1).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "linear_13", + "op": "aten.linear.default", + "args": [ + { + "tensor": "view_12" + }, + { + "tensor": "p_visual_blocks_3_attn_proj_weight" + }, + { + "tensor": "p_visual_blocks_3_attn_proj_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 975, in forward\n attn_output = self.proj(attn_output)\n ^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_15", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "add_12" + }, + { + "tensor": "linear_13" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "layer_norm_7", + "op": "aten.layer_norm.default", + "args": [ + { + "tensor": "add_15" + }, + [ + 1024 + ], + { + "tensor": "p_visual_blocks_3_norm2_weight" + }, + { + "tensor": "p_visual_blocks_3_norm2_bias" + }, + 1e-06, + false + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "linear_14", + "op": "aten.linear.default", + "args": [ + { + "tensor": "layer_norm_7" + }, + { + "tensor": "p_visual_blocks_3_mlp_linear_fc1_weight" + }, + { + "tensor": "p_visual_blocks_3_mlp_linear_fc1_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "gelu_3", + "op": "aten.gelu.default", + "args": [ + { + "tensor": "linear_14" + } + ], + "kwargs": { + "approximate": "tanh" + }, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/activations.py\", line 51, in forward\n return self.act(input)\n ^^^^^^^^^^^^^^^" + }, + { + "id": "linear_15", + "op": "aten.linear.default", + "args": [ + { + "tensor": "gelu_3" + }, + { + "tensor": "p_visual_blocks_3_mlp_linear_fc2_weight" + }, + { + "tensor": "p_visual_blocks_3_mlp_linear_fc2_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_16", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "add_15" + }, + { + "tensor": "linear_15" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "layer_norm_8", + "op": "aten.layer_norm.default", + "args": [ + { + "tensor": "add_16" + }, + [ + 1024 + ], + { + "tensor": "p_visual_blocks_4_norm1_weight" + }, + { + "tensor": "p_visual_blocks_4_norm1_bias" + }, + 1e-06, + false + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1000, in forward\n self.norm1(hidden_states)," + }, + { + "id": "linear_16", + "op": "aten.linear.default", + "args": [ + { + "tensor": "layer_norm_8" + }, + { + "tensor": "p_visual_blocks_4_attn_qkv_weight" + }, + { + "tensor": "p_visual_blocks_4_attn_qkv_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "view_13", + "op": "aten.view.default", + "args": [ + { + "tensor": "linear_16" + }, + [ + 384, + 3, + 16, + -1 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "permute_4", + "op": "aten.permute.default", + "args": [ + { + "tensor": "view_13" + }, + [ + 1, + 0, + 2, + 3 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_12", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_4" + }, + 0, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_13", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_4" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_14", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_4" + }, + 0, + 2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "unsqueeze_22", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "cos" + }, + -2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 888, in apply_rotary_pos_emb_vision\n cos, sin = cos.unsqueeze(-2).float(), sin.unsqueeze(-2).float()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_23", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "sin" + }, + -2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 888, in apply_rotary_pos_emb_vision\n cos, sin = cos.unsqueeze(-2).float(), sin.unsqueeze(-2).float()\n ^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_22", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "select_12" + }, + { + "tensor": "unsqueeze_22" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_29", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_12" + }, + 2, + 0, + 32 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 551, in rotate_half\n x1 = x[..., : x.shape[-1] // 2]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_30", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_12" + }, + 2, + 32, + 9223372036854775807 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 552, in rotate_half\n x2 = x[..., x.shape[-1] // 2 :]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "neg_8", + "op": "aten.neg.default", + "args": [ + { + "tensor": "slice_30" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_13", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "neg_8" + }, + { + "tensor": "slice_29" + } + ], + -1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_23", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "cat_13" + }, + { + "tensor": "unsqueeze_23" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_17", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "mul_22" + }, + { + "tensor": "mul_23" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_24", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "select_13" + }, + { + "tensor": "unsqueeze_22" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_31", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_13" + }, + 2, + 0, + 32 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 551, in rotate_half\n x1 = x[..., : x.shape[-1] // 2]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_32", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_13" + }, + 2, + 32, + 9223372036854775807 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 552, in rotate_half\n x2 = x[..., x.shape[-1] // 2 :]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "neg_9", + "op": "aten.neg.default", + "args": [ + { + "tensor": "slice_32" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_14", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "neg_9" + }, + { + "tensor": "slice_31" + } + ], + -1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_25", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "cat_14" + }, + { + "tensor": "unsqueeze_23" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_18", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "mul_24" + }, + { + "tensor": "mul_25" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_20", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "add_17" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 925, in forward\n query_states = query_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_24", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_20" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 925, in forward\n query_states = query_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_21", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "add_18" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 926, in forward\n key_states = key_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_25", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_21" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 926, in forward\n key_states = key_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_22", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "select_14" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 927, in forward\n value_states = value_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_26", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_22" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 927, in forward\n value_states = value_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_33", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_24" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "slice_34", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_25" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "slice_35", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_26" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "transpose_23", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "slice_34" + }, + 2, + 3 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "matmul_8", + "op": "aten.matmul.default", + "args": [ + { + "tensor": "slice_33" + }, + { + "tensor": "transpose_23" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_26", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "matmul_8" + }, + 0.125 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "softmax_4", + "op": "aten.softmax.int", + "args": [ + { + "tensor": "mul_26" + }, + -1, + { + "dtype": "float32" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 624, in eager_attention_forward\n attn_weights = nn.functional.softmax(attn_weights, dim=-1, dtype=torch.float32).to(query.dtype)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "matmul_9", + "op": "aten.matmul.default", + "args": [ + { + "tensor": "softmax_4" + }, + { + "tensor": "slice_35" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 626, in eager_attention_forward\n attn_output = torch.matmul(attn_weights, value_states)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_24", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "matmul_9" + }, + 1, + 2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 627, in eager_attention_forward\n attn_output = attn_output.transpose(1, 2).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "clone_4", + "op": "aten.clone.default", + "args": [ + { + "tensor": "transpose_24" + } + ], + "kwargs": { + "memory_format": { + "memoryFormat": "contiguous_format" + } + }, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 627, in eager_attention_forward\n attn_output = attn_output.transpose(1, 2).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_15", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "clone_4" + } + ], + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 972, in forward\n attn_output = torch.cat(attn_outputs, dim=1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "view_14", + "op": "aten.view.default", + "args": [ + { + "tensor": "cat_15" + }, + [ + 384, + -1 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 974, in forward\n attn_output = attn_output.reshape(seq_length, -1).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "linear_17", + "op": "aten.linear.default", + "args": [ + { + "tensor": "view_14" + }, + { + "tensor": "p_visual_blocks_4_attn_proj_weight" + }, + { + "tensor": "p_visual_blocks_4_attn_proj_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 975, in forward\n attn_output = self.proj(attn_output)\n ^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_19", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "add_16" + }, + { + "tensor": "linear_17" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "layer_norm_9", + "op": "aten.layer_norm.default", + "args": [ + { + "tensor": "add_19" + }, + [ + 1024 + ], + { + "tensor": "p_visual_blocks_4_norm2_weight" + }, + { + "tensor": "p_visual_blocks_4_norm2_bias" + }, + 1e-06, + false + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "linear_18", + "op": "aten.linear.default", + "args": [ + { + "tensor": "layer_norm_9" + }, + { + "tensor": "p_visual_blocks_4_mlp_linear_fc1_weight" + }, + { + "tensor": "p_visual_blocks_4_mlp_linear_fc1_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "gelu_4", + "op": "aten.gelu.default", + "args": [ + { + "tensor": "linear_18" + } + ], + "kwargs": { + "approximate": "tanh" + }, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/activations.py\", line 51, in forward\n return self.act(input)\n ^^^^^^^^^^^^^^^" + }, + { + "id": "linear_19", + "op": "aten.linear.default", + "args": [ + { + "tensor": "gelu_4" + }, + { + "tensor": "p_visual_blocks_4_mlp_linear_fc2_weight" + }, + { + "tensor": "p_visual_blocks_4_mlp_linear_fc2_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_20", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "add_19" + }, + { + "tensor": "linear_19" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "layer_norm_10", + "op": "aten.layer_norm.default", + "args": [ + { + "tensor": "add_20" + }, + [ + 1024 + ], + { + "tensor": "p_visual_blocks_5_norm1_weight" + }, + { + "tensor": "p_visual_blocks_5_norm1_bias" + }, + 1e-06, + false + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1000, in forward\n self.norm1(hidden_states)," + }, + { + "id": "linear_20", + "op": "aten.linear.default", + "args": [ + { + "tensor": "layer_norm_10" + }, + { + "tensor": "p_visual_blocks_5_attn_qkv_weight" + }, + { + "tensor": "p_visual_blocks_5_attn_qkv_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "view_15", + "op": "aten.view.default", + "args": [ + { + "tensor": "linear_20" + }, + [ + 384, + 3, + 16, + -1 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "permute_5", + "op": "aten.permute.default", + "args": [ + { + "tensor": "view_15" + }, + [ + 1, + 0, + 2, + 3 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_15", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_5" + }, + 0, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_16", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_5" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_17", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_5" + }, + 0, + 2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "unsqueeze_27", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "cos" + }, + -2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 888, in apply_rotary_pos_emb_vision\n cos, sin = cos.unsqueeze(-2).float(), sin.unsqueeze(-2).float()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_28", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "sin" + }, + -2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 888, in apply_rotary_pos_emb_vision\n cos, sin = cos.unsqueeze(-2).float(), sin.unsqueeze(-2).float()\n ^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_27", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "select_15" + }, + { + "tensor": "unsqueeze_27" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_36", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_15" + }, + 2, + 0, + 32 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 551, in rotate_half\n x1 = x[..., : x.shape[-1] // 2]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_37", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_15" + }, + 2, + 32, + 9223372036854775807 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 552, in rotate_half\n x2 = x[..., x.shape[-1] // 2 :]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "neg_10", + "op": "aten.neg.default", + "args": [ + { + "tensor": "slice_37" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_16", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "neg_10" + }, + { + "tensor": "slice_36" + } + ], + -1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_28", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "cat_16" + }, + { + "tensor": "unsqueeze_28" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_21", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "mul_27" + }, + { + "tensor": "mul_28" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_29", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "select_16" + }, + { + "tensor": "unsqueeze_27" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_38", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_16" + }, + 2, + 0, + 32 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 551, in rotate_half\n x1 = x[..., : x.shape[-1] // 2]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_39", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_16" + }, + 2, + 32, + 9223372036854775807 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 552, in rotate_half\n x2 = x[..., x.shape[-1] // 2 :]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "neg_11", + "op": "aten.neg.default", + "args": [ + { + "tensor": "slice_39" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_17", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "neg_11" + }, + { + "tensor": "slice_38" + } + ], + -1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_30", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "cat_17" + }, + { + "tensor": "unsqueeze_28" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_22", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "mul_29" + }, + { + "tensor": "mul_30" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_25", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "add_21" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 925, in forward\n query_states = query_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_29", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_25" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 925, in forward\n query_states = query_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_26", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "add_22" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 926, in forward\n key_states = key_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_30", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_26" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 926, in forward\n key_states = key_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_27", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "select_17" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 927, in forward\n value_states = value_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_31", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_27" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 927, in forward\n value_states = value_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_40", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_29" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "slice_41", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_30" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "slice_42", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_31" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "transpose_28", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "slice_41" + }, + 2, + 3 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "matmul_10", + "op": "aten.matmul.default", + "args": [ + { + "tensor": "slice_40" + }, + { + "tensor": "transpose_28" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_31", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "matmul_10" + }, + 0.125 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "softmax_5", + "op": "aten.softmax.int", + "args": [ + { + "tensor": "mul_31" + }, + -1, + { + "dtype": "float32" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 624, in eager_attention_forward\n attn_weights = nn.functional.softmax(attn_weights, dim=-1, dtype=torch.float32).to(query.dtype)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "matmul_11", + "op": "aten.matmul.default", + "args": [ + { + "tensor": "softmax_5" + }, + { + "tensor": "slice_42" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 626, in eager_attention_forward\n attn_output = torch.matmul(attn_weights, value_states)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_29", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "matmul_11" + }, + 1, + 2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 627, in eager_attention_forward\n attn_output = attn_output.transpose(1, 2).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "clone_5", + "op": "aten.clone.default", + "args": [ + { + "tensor": "transpose_29" + } + ], + "kwargs": { + "memory_format": { + "memoryFormat": "contiguous_format" + } + }, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 627, in eager_attention_forward\n attn_output = attn_output.transpose(1, 2).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_18", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "clone_5" + } + ], + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 972, in forward\n attn_output = torch.cat(attn_outputs, dim=1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "view_16", + "op": "aten.view.default", + "args": [ + { + "tensor": "cat_18" + }, + [ + 384, + -1 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 974, in forward\n attn_output = attn_output.reshape(seq_length, -1).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "linear_21", + "op": "aten.linear.default", + "args": [ + { + "tensor": "view_16" + }, + { + "tensor": "p_visual_blocks_5_attn_proj_weight" + }, + { + "tensor": "p_visual_blocks_5_attn_proj_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 975, in forward\n attn_output = self.proj(attn_output)\n ^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_23", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "add_20" + }, + { + "tensor": "linear_21" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "layer_norm_11", + "op": "aten.layer_norm.default", + "args": [ + { + "tensor": "add_23" + }, + [ + 1024 + ], + { + "tensor": "p_visual_blocks_5_norm2_weight" + }, + { + "tensor": "p_visual_blocks_5_norm2_bias" + }, + 1e-06, + false + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "linear_22", + "op": "aten.linear.default", + "args": [ + { + "tensor": "layer_norm_11" + }, + { + "tensor": "p_visual_blocks_5_mlp_linear_fc1_weight" + }, + { + "tensor": "p_visual_blocks_5_mlp_linear_fc1_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "gelu_5", + "op": "aten.gelu.default", + "args": [ + { + "tensor": "linear_22" + } + ], + "kwargs": { + "approximate": "tanh" + }, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/activations.py\", line 51, in forward\n return self.act(input)\n ^^^^^^^^^^^^^^^" + }, + { + "id": "linear_23", + "op": "aten.linear.default", + "args": [ + { + "tensor": "gelu_5" + }, + { + "tensor": "p_visual_blocks_5_mlp_linear_fc2_weight" + }, + { + "tensor": "p_visual_blocks_5_mlp_linear_fc2_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_24", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "add_23" + }, + { + "tensor": "linear_23" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "layer_norm_12", + "op": "aten.layer_norm.default", + "args": [ + { + "tensor": "add_24" + }, + [ + 1024 + ], + { + "tensor": "p_visual_blocks_6_norm1_weight" + }, + { + "tensor": "p_visual_blocks_6_norm1_bias" + }, + 1e-06, + false + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1000, in forward\n self.norm1(hidden_states)," + }, + { + "id": "linear_24", + "op": "aten.linear.default", + "args": [ + { + "tensor": "layer_norm_12" + }, + { + "tensor": "p_visual_blocks_6_attn_qkv_weight" + }, + { + "tensor": "p_visual_blocks_6_attn_qkv_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "view_17", + "op": "aten.view.default", + "args": [ + { + "tensor": "linear_24" + }, + [ + 384, + 3, + 16, + -1 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "permute_6", + "op": "aten.permute.default", + "args": [ + { + "tensor": "view_17" + }, + [ + 1, + 0, + 2, + 3 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_18", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_6" + }, + 0, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_19", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_6" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_20", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_6" + }, + 0, + 2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "unsqueeze_32", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "cos" + }, + -2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 888, in apply_rotary_pos_emb_vision\n cos, sin = cos.unsqueeze(-2).float(), sin.unsqueeze(-2).float()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_33", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "sin" + }, + -2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 888, in apply_rotary_pos_emb_vision\n cos, sin = cos.unsqueeze(-2).float(), sin.unsqueeze(-2).float()\n ^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_32", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "select_18" + }, + { + "tensor": "unsqueeze_32" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_43", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_18" + }, + 2, + 0, + 32 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 551, in rotate_half\n x1 = x[..., : x.shape[-1] // 2]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_44", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_18" + }, + 2, + 32, + 9223372036854775807 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 552, in rotate_half\n x2 = x[..., x.shape[-1] // 2 :]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "neg_12", + "op": "aten.neg.default", + "args": [ + { + "tensor": "slice_44" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_19", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "neg_12" + }, + { + "tensor": "slice_43" + } + ], + -1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_33", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "cat_19" + }, + { + "tensor": "unsqueeze_33" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_25", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "mul_32" + }, + { + "tensor": "mul_33" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_34", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "select_19" + }, + { + "tensor": "unsqueeze_32" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_45", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_19" + }, + 2, + 0, + 32 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 551, in rotate_half\n x1 = x[..., : x.shape[-1] // 2]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_46", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_19" + }, + 2, + 32, + 9223372036854775807 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 552, in rotate_half\n x2 = x[..., x.shape[-1] // 2 :]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "neg_13", + "op": "aten.neg.default", + "args": [ + { + "tensor": "slice_46" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_20", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "neg_13" + }, + { + "tensor": "slice_45" + } + ], + -1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_35", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "cat_20" + }, + { + "tensor": "unsqueeze_33" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_26", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "mul_34" + }, + { + "tensor": "mul_35" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_30", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "add_25" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 925, in forward\n query_states = query_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_34", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_30" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 925, in forward\n query_states = query_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_31", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "add_26" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 926, in forward\n key_states = key_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_35", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_31" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 926, in forward\n key_states = key_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_32", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "select_20" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 927, in forward\n value_states = value_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_36", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_32" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 927, in forward\n value_states = value_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_47", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_34" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "slice_48", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_35" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "slice_49", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_36" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "transpose_33", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "slice_48" + }, + 2, + 3 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "matmul_12", + "op": "aten.matmul.default", + "args": [ + { + "tensor": "slice_47" + }, + { + "tensor": "transpose_33" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_36", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "matmul_12" + }, + 0.125 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "softmax_6", + "op": "aten.softmax.int", + "args": [ + { + "tensor": "mul_36" + }, + -1, + { + "dtype": "float32" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 624, in eager_attention_forward\n attn_weights = nn.functional.softmax(attn_weights, dim=-1, dtype=torch.float32).to(query.dtype)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "matmul_13", + "op": "aten.matmul.default", + "args": [ + { + "tensor": "softmax_6" + }, + { + "tensor": "slice_49" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 626, in eager_attention_forward\n attn_output = torch.matmul(attn_weights, value_states)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_34", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "matmul_13" + }, + 1, + 2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 627, in eager_attention_forward\n attn_output = attn_output.transpose(1, 2).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "clone_6", + "op": "aten.clone.default", + "args": [ + { + "tensor": "transpose_34" + } + ], + "kwargs": { + "memory_format": { + "memoryFormat": "contiguous_format" + } + }, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 627, in eager_attention_forward\n attn_output = attn_output.transpose(1, 2).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_21", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "clone_6" + } + ], + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 972, in forward\n attn_output = torch.cat(attn_outputs, dim=1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "view_18", + "op": "aten.view.default", + "args": [ + { + "tensor": "cat_21" + }, + [ + 384, + -1 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 974, in forward\n attn_output = attn_output.reshape(seq_length, -1).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "linear_25", + "op": "aten.linear.default", + "args": [ + { + "tensor": "view_18" + }, + { + "tensor": "p_visual_blocks_6_attn_proj_weight" + }, + { + "tensor": "p_visual_blocks_6_attn_proj_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 975, in forward\n attn_output = self.proj(attn_output)\n ^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_27", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "add_24" + }, + { + "tensor": "linear_25" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "layer_norm_13", + "op": "aten.layer_norm.default", + "args": [ + { + "tensor": "add_27" + }, + [ + 1024 + ], + { + "tensor": "p_visual_blocks_6_norm2_weight" + }, + { + "tensor": "p_visual_blocks_6_norm2_bias" + }, + 1e-06, + false + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "linear_26", + "op": "aten.linear.default", + "args": [ + { + "tensor": "layer_norm_13" + }, + { + "tensor": "p_visual_blocks_6_mlp_linear_fc1_weight" + }, + { + "tensor": "p_visual_blocks_6_mlp_linear_fc1_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "gelu_6", + "op": "aten.gelu.default", + "args": [ + { + "tensor": "linear_26" + } + ], + "kwargs": { + "approximate": "tanh" + }, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/activations.py\", line 51, in forward\n return self.act(input)\n ^^^^^^^^^^^^^^^" + }, + { + "id": "linear_27", + "op": "aten.linear.default", + "args": [ + { + "tensor": "gelu_6" + }, + { + "tensor": "p_visual_blocks_6_mlp_linear_fc2_weight" + }, + { + "tensor": "p_visual_blocks_6_mlp_linear_fc2_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_28", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "add_27" + }, + { + "tensor": "linear_27" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "layer_norm_14", + "op": "aten.layer_norm.default", + "args": [ + { + "tensor": "add_28" + }, + [ + 1024 + ], + { + "tensor": "p_visual_blocks_7_norm1_weight" + }, + { + "tensor": "p_visual_blocks_7_norm1_bias" + }, + 1e-06, + false + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1000, in forward\n self.norm1(hidden_states)," + }, + { + "id": "linear_28", + "op": "aten.linear.default", + "args": [ + { + "tensor": "layer_norm_14" + }, + { + "tensor": "p_visual_blocks_7_attn_qkv_weight" + }, + { + "tensor": "p_visual_blocks_7_attn_qkv_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "view_19", + "op": "aten.view.default", + "args": [ + { + "tensor": "linear_28" + }, + [ + 384, + 3, + 16, + -1 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "permute_7", + "op": "aten.permute.default", + "args": [ + { + "tensor": "view_19" + }, + [ + 1, + 0, + 2, + 3 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_21", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_7" + }, + 0, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_22", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_7" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_23", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_7" + }, + 0, + 2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "unsqueeze_37", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "cos" + }, + -2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 888, in apply_rotary_pos_emb_vision\n cos, sin = cos.unsqueeze(-2).float(), sin.unsqueeze(-2).float()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_38", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "sin" + }, + -2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 888, in apply_rotary_pos_emb_vision\n cos, sin = cos.unsqueeze(-2).float(), sin.unsqueeze(-2).float()\n ^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_37", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "select_21" + }, + { + "tensor": "unsqueeze_37" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_50", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_21" + }, + 2, + 0, + 32 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 551, in rotate_half\n x1 = x[..., : x.shape[-1] // 2]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_51", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_21" + }, + 2, + 32, + 9223372036854775807 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 552, in rotate_half\n x2 = x[..., x.shape[-1] // 2 :]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "neg_14", + "op": "aten.neg.default", + "args": [ + { + "tensor": "slice_51" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_22", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "neg_14" + }, + { + "tensor": "slice_50" + } + ], + -1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_38", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "cat_22" + }, + { + "tensor": "unsqueeze_38" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_29", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "mul_37" + }, + { + "tensor": "mul_38" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_39", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "select_22" + }, + { + "tensor": "unsqueeze_37" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_52", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_22" + }, + 2, + 0, + 32 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 551, in rotate_half\n x1 = x[..., : x.shape[-1] // 2]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_53", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_22" + }, + 2, + 32, + 9223372036854775807 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 552, in rotate_half\n x2 = x[..., x.shape[-1] // 2 :]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "neg_15", + "op": "aten.neg.default", + "args": [ + { + "tensor": "slice_53" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_23", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "neg_15" + }, + { + "tensor": "slice_52" + } + ], + -1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_40", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "cat_23" + }, + { + "tensor": "unsqueeze_38" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_30", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "mul_39" + }, + { + "tensor": "mul_40" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_35", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "add_29" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 925, in forward\n query_states = query_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_39", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_35" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 925, in forward\n query_states = query_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_36", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "add_30" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 926, in forward\n key_states = key_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_40", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_36" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 926, in forward\n key_states = key_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_37", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "select_23" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 927, in forward\n value_states = value_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_41", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_37" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 927, in forward\n value_states = value_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_54", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_39" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "slice_55", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_40" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "slice_56", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_41" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "transpose_38", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "slice_55" + }, + 2, + 3 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "matmul_14", + "op": "aten.matmul.default", + "args": [ + { + "tensor": "slice_54" + }, + { + "tensor": "transpose_38" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_41", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "matmul_14" + }, + 0.125 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "softmax_7", + "op": "aten.softmax.int", + "args": [ + { + "tensor": "mul_41" + }, + -1, + { + "dtype": "float32" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 624, in eager_attention_forward\n attn_weights = nn.functional.softmax(attn_weights, dim=-1, dtype=torch.float32).to(query.dtype)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "matmul_15", + "op": "aten.matmul.default", + "args": [ + { + "tensor": "softmax_7" + }, + { + "tensor": "slice_56" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 626, in eager_attention_forward\n attn_output = torch.matmul(attn_weights, value_states)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_39", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "matmul_15" + }, + 1, + 2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 627, in eager_attention_forward\n attn_output = attn_output.transpose(1, 2).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "clone_7", + "op": "aten.clone.default", + "args": [ + { + "tensor": "transpose_39" + } + ], + "kwargs": { + "memory_format": { + "memoryFormat": "contiguous_format" + } + }, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 627, in eager_attention_forward\n attn_output = attn_output.transpose(1, 2).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_24", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "clone_7" + } + ], + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 972, in forward\n attn_output = torch.cat(attn_outputs, dim=1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "view_20", + "op": "aten.view.default", + "args": [ + { + "tensor": "cat_24" + }, + [ + 384, + -1 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 974, in forward\n attn_output = attn_output.reshape(seq_length, -1).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "linear_29", + "op": "aten.linear.default", + "args": [ + { + "tensor": "view_20" + }, + { + "tensor": "p_visual_blocks_7_attn_proj_weight" + }, + { + "tensor": "p_visual_blocks_7_attn_proj_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 975, in forward\n attn_output = self.proj(attn_output)\n ^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_31", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "add_28" + }, + { + "tensor": "linear_29" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "layer_norm_15", + "op": "aten.layer_norm.default", + "args": [ + { + "tensor": "add_31" + }, + [ + 1024 + ], + { + "tensor": "p_visual_blocks_7_norm2_weight" + }, + { + "tensor": "p_visual_blocks_7_norm2_bias" + }, + 1e-06, + false + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "linear_30", + "op": "aten.linear.default", + "args": [ + { + "tensor": "layer_norm_15" + }, + { + "tensor": "p_visual_blocks_7_mlp_linear_fc1_weight" + }, + { + "tensor": "p_visual_blocks_7_mlp_linear_fc1_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "gelu_7", + "op": "aten.gelu.default", + "args": [ + { + "tensor": "linear_30" + } + ], + "kwargs": { + "approximate": "tanh" + }, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/activations.py\", line 51, in forward\n return self.act(input)\n ^^^^^^^^^^^^^^^" + }, + { + "id": "linear_31", + "op": "aten.linear.default", + "args": [ + { + "tensor": "gelu_7" + }, + { + "tensor": "p_visual_blocks_7_mlp_linear_fc2_weight" + }, + { + "tensor": "p_visual_blocks_7_mlp_linear_fc2_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_32", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "add_31" + }, + { + "tensor": "linear_31" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "layer_norm_16", + "op": "aten.layer_norm.default", + "args": [ + { + "tensor": "add_32" + }, + [ + 1024 + ], + { + "tensor": "p_visual_blocks_8_norm1_weight" + }, + { + "tensor": "p_visual_blocks_8_norm1_bias" + }, + 1e-06, + false + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1000, in forward\n self.norm1(hidden_states)," + }, + { + "id": "linear_32", + "op": "aten.linear.default", + "args": [ + { + "tensor": "layer_norm_16" + }, + { + "tensor": "p_visual_blocks_8_attn_qkv_weight" + }, + { + "tensor": "p_visual_blocks_8_attn_qkv_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "view_21", + "op": "aten.view.default", + "args": [ + { + "tensor": "linear_32" + }, + [ + 384, + 3, + 16, + -1 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "permute_8", + "op": "aten.permute.default", + "args": [ + { + "tensor": "view_21" + }, + [ + 1, + 0, + 2, + 3 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_24", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_8" + }, + 0, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_25", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_8" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_26", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_8" + }, + 0, + 2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "unsqueeze_42", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "cos" + }, + -2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 888, in apply_rotary_pos_emb_vision\n cos, sin = cos.unsqueeze(-2).float(), sin.unsqueeze(-2).float()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_43", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "sin" + }, + -2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 888, in apply_rotary_pos_emb_vision\n cos, sin = cos.unsqueeze(-2).float(), sin.unsqueeze(-2).float()\n ^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_42", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "select_24" + }, + { + "tensor": "unsqueeze_42" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_57", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_24" + }, + 2, + 0, + 32 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 551, in rotate_half\n x1 = x[..., : x.shape[-1] // 2]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_58", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_24" + }, + 2, + 32, + 9223372036854775807 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 552, in rotate_half\n x2 = x[..., x.shape[-1] // 2 :]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "neg_16", + "op": "aten.neg.default", + "args": [ + { + "tensor": "slice_58" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_25", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "neg_16" + }, + { + "tensor": "slice_57" + } + ], + -1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_43", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "cat_25" + }, + { + "tensor": "unsqueeze_43" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_33", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "mul_42" + }, + { + "tensor": "mul_43" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_44", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "select_25" + }, + { + "tensor": "unsqueeze_42" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_59", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_25" + }, + 2, + 0, + 32 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 551, in rotate_half\n x1 = x[..., : x.shape[-1] // 2]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_60", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_25" + }, + 2, + 32, + 9223372036854775807 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 552, in rotate_half\n x2 = x[..., x.shape[-1] // 2 :]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "neg_17", + "op": "aten.neg.default", + "args": [ + { + "tensor": "slice_60" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_26", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "neg_17" + }, + { + "tensor": "slice_59" + } + ], + -1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_45", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "cat_26" + }, + { + "tensor": "unsqueeze_43" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_34", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "mul_44" + }, + { + "tensor": "mul_45" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_40", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "add_33" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 925, in forward\n query_states = query_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_44", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_40" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 925, in forward\n query_states = query_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_41", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "add_34" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 926, in forward\n key_states = key_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_45", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_41" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 926, in forward\n key_states = key_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_42", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "select_26" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 927, in forward\n value_states = value_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_46", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_42" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 927, in forward\n value_states = value_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_61", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_44" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "slice_62", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_45" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "slice_63", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_46" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "transpose_43", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "slice_62" + }, + 2, + 3 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "matmul_16", + "op": "aten.matmul.default", + "args": [ + { + "tensor": "slice_61" + }, + { + "tensor": "transpose_43" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_46", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "matmul_16" + }, + 0.125 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "softmax_8", + "op": "aten.softmax.int", + "args": [ + { + "tensor": "mul_46" + }, + -1, + { + "dtype": "float32" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 624, in eager_attention_forward\n attn_weights = nn.functional.softmax(attn_weights, dim=-1, dtype=torch.float32).to(query.dtype)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "matmul_17", + "op": "aten.matmul.default", + "args": [ + { + "tensor": "softmax_8" + }, + { + "tensor": "slice_63" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 626, in eager_attention_forward\n attn_output = torch.matmul(attn_weights, value_states)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_44", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "matmul_17" + }, + 1, + 2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 627, in eager_attention_forward\n attn_output = attn_output.transpose(1, 2).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "clone_8", + "op": "aten.clone.default", + "args": [ + { + "tensor": "transpose_44" + } + ], + "kwargs": { + "memory_format": { + "memoryFormat": "contiguous_format" + } + }, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 627, in eager_attention_forward\n attn_output = attn_output.transpose(1, 2).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_27", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "clone_8" + } + ], + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 972, in forward\n attn_output = torch.cat(attn_outputs, dim=1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "view_22", + "op": "aten.view.default", + "args": [ + { + "tensor": "cat_27" + }, + [ + 384, + -1 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 974, in forward\n attn_output = attn_output.reshape(seq_length, -1).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "linear_33", + "op": "aten.linear.default", + "args": [ + { + "tensor": "view_22" + }, + { + "tensor": "p_visual_blocks_8_attn_proj_weight" + }, + { + "tensor": "p_visual_blocks_8_attn_proj_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 975, in forward\n attn_output = self.proj(attn_output)\n ^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_35", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "add_32" + }, + { + "tensor": "linear_33" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "layer_norm_17", + "op": "aten.layer_norm.default", + "args": [ + { + "tensor": "add_35" + }, + [ + 1024 + ], + { + "tensor": "p_visual_blocks_8_norm2_weight" + }, + { + "tensor": "p_visual_blocks_8_norm2_bias" + }, + 1e-06, + false + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "linear_34", + "op": "aten.linear.default", + "args": [ + { + "tensor": "layer_norm_17" + }, + { + "tensor": "p_visual_blocks_8_mlp_linear_fc1_weight" + }, + { + "tensor": "p_visual_blocks_8_mlp_linear_fc1_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "gelu_8", + "op": "aten.gelu.default", + "args": [ + { + "tensor": "linear_34" + } + ], + "kwargs": { + "approximate": "tanh" + }, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/activations.py\", line 51, in forward\n return self.act(input)\n ^^^^^^^^^^^^^^^" + }, + { + "id": "linear_35", + "op": "aten.linear.default", + "args": [ + { + "tensor": "gelu_8" + }, + { + "tensor": "p_visual_blocks_8_mlp_linear_fc2_weight" + }, + { + "tensor": "p_visual_blocks_8_mlp_linear_fc2_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_36", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "add_35" + }, + { + "tensor": "linear_35" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "layer_norm_18", + "op": "aten.layer_norm.default", + "args": [ + { + "tensor": "add_36" + }, + [ + 1024 + ], + { + "tensor": "p_visual_blocks_9_norm1_weight" + }, + { + "tensor": "p_visual_blocks_9_norm1_bias" + }, + 1e-06, + false + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1000, in forward\n self.norm1(hidden_states)," + }, + { + "id": "linear_36", + "op": "aten.linear.default", + "args": [ + { + "tensor": "layer_norm_18" + }, + { + "tensor": "p_visual_blocks_9_attn_qkv_weight" + }, + { + "tensor": "p_visual_blocks_9_attn_qkv_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "view_23", + "op": "aten.view.default", + "args": [ + { + "tensor": "linear_36" + }, + [ + 384, + 3, + 16, + -1 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "permute_9", + "op": "aten.permute.default", + "args": [ + { + "tensor": "view_23" + }, + [ + 1, + 0, + 2, + 3 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_27", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_9" + }, + 0, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_28", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_9" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_29", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_9" + }, + 0, + 2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "unsqueeze_47", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "cos" + }, + -2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 888, in apply_rotary_pos_emb_vision\n cos, sin = cos.unsqueeze(-2).float(), sin.unsqueeze(-2).float()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_48", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "sin" + }, + -2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 888, in apply_rotary_pos_emb_vision\n cos, sin = cos.unsqueeze(-2).float(), sin.unsqueeze(-2).float()\n ^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_47", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "select_27" + }, + { + "tensor": "unsqueeze_47" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_64", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_27" + }, + 2, + 0, + 32 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 551, in rotate_half\n x1 = x[..., : x.shape[-1] // 2]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_65", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_27" + }, + 2, + 32, + 9223372036854775807 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 552, in rotate_half\n x2 = x[..., x.shape[-1] // 2 :]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "neg_18", + "op": "aten.neg.default", + "args": [ + { + "tensor": "slice_65" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_28", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "neg_18" + }, + { + "tensor": "slice_64" + } + ], + -1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_48", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "cat_28" + }, + { + "tensor": "unsqueeze_48" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_37", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "mul_47" + }, + { + "tensor": "mul_48" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_49", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "select_28" + }, + { + "tensor": "unsqueeze_47" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_66", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_28" + }, + 2, + 0, + 32 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 551, in rotate_half\n x1 = x[..., : x.shape[-1] // 2]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_67", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_28" + }, + 2, + 32, + 9223372036854775807 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 552, in rotate_half\n x2 = x[..., x.shape[-1] // 2 :]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "neg_19", + "op": "aten.neg.default", + "args": [ + { + "tensor": "slice_67" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_29", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "neg_19" + }, + { + "tensor": "slice_66" + } + ], + -1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_50", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "cat_29" + }, + { + "tensor": "unsqueeze_48" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_38", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "mul_49" + }, + { + "tensor": "mul_50" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_45", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "add_37" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 925, in forward\n query_states = query_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_49", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_45" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 925, in forward\n query_states = query_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_46", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "add_38" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 926, in forward\n key_states = key_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_50", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_46" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 926, in forward\n key_states = key_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_47", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "select_29" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 927, in forward\n value_states = value_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_51", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_47" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 927, in forward\n value_states = value_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_68", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_49" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "slice_69", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_50" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "slice_70", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_51" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "transpose_48", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "slice_69" + }, + 2, + 3 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "matmul_18", + "op": "aten.matmul.default", + "args": [ + { + "tensor": "slice_68" + }, + { + "tensor": "transpose_48" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_51", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "matmul_18" + }, + 0.125 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "softmax_9", + "op": "aten.softmax.int", + "args": [ + { + "tensor": "mul_51" + }, + -1, + { + "dtype": "float32" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 624, in eager_attention_forward\n attn_weights = nn.functional.softmax(attn_weights, dim=-1, dtype=torch.float32).to(query.dtype)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "matmul_19", + "op": "aten.matmul.default", + "args": [ + { + "tensor": "softmax_9" + }, + { + "tensor": "slice_70" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 626, in eager_attention_forward\n attn_output = torch.matmul(attn_weights, value_states)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_49", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "matmul_19" + }, + 1, + 2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 627, in eager_attention_forward\n attn_output = attn_output.transpose(1, 2).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "clone_9", + "op": "aten.clone.default", + "args": [ + { + "tensor": "transpose_49" + } + ], + "kwargs": { + "memory_format": { + "memoryFormat": "contiguous_format" + } + }, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 627, in eager_attention_forward\n attn_output = attn_output.transpose(1, 2).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_30", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "clone_9" + } + ], + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 972, in forward\n attn_output = torch.cat(attn_outputs, dim=1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "view_24", + "op": "aten.view.default", + "args": [ + { + "tensor": "cat_30" + }, + [ + 384, + -1 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 974, in forward\n attn_output = attn_output.reshape(seq_length, -1).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "linear_37", + "op": "aten.linear.default", + "args": [ + { + "tensor": "view_24" + }, + { + "tensor": "p_visual_blocks_9_attn_proj_weight" + }, + { + "tensor": "p_visual_blocks_9_attn_proj_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 975, in forward\n attn_output = self.proj(attn_output)\n ^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_39", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "add_36" + }, + { + "tensor": "linear_37" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "layer_norm_19", + "op": "aten.layer_norm.default", + "args": [ + { + "tensor": "add_39" + }, + [ + 1024 + ], + { + "tensor": "p_visual_blocks_9_norm2_weight" + }, + { + "tensor": "p_visual_blocks_9_norm2_bias" + }, + 1e-06, + false + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "linear_38", + "op": "aten.linear.default", + "args": [ + { + "tensor": "layer_norm_19" + }, + { + "tensor": "p_visual_blocks_9_mlp_linear_fc1_weight" + }, + { + "tensor": "p_visual_blocks_9_mlp_linear_fc1_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "gelu_9", + "op": "aten.gelu.default", + "args": [ + { + "tensor": "linear_38" + } + ], + "kwargs": { + "approximate": "tanh" + }, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/activations.py\", line 51, in forward\n return self.act(input)\n ^^^^^^^^^^^^^^^" + }, + { + "id": "linear_39", + "op": "aten.linear.default", + "args": [ + { + "tensor": "gelu_9" + }, + { + "tensor": "p_visual_blocks_9_mlp_linear_fc2_weight" + }, + { + "tensor": "p_visual_blocks_9_mlp_linear_fc2_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_40", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "add_39" + }, + { + "tensor": "linear_39" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "layer_norm_20", + "op": "aten.layer_norm.default", + "args": [ + { + "tensor": "add_40" + }, + [ + 1024 + ], + { + "tensor": "p_visual_blocks_10_norm1_weight" + }, + { + "tensor": "p_visual_blocks_10_norm1_bias" + }, + 1e-06, + false + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1000, in forward\n self.norm1(hidden_states)," + }, + { + "id": "linear_40", + "op": "aten.linear.default", + "args": [ + { + "tensor": "layer_norm_20" + }, + { + "tensor": "p_visual_blocks_10_attn_qkv_weight" + }, + { + "tensor": "p_visual_blocks_10_attn_qkv_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "view_25", + "op": "aten.view.default", + "args": [ + { + "tensor": "linear_40" + }, + [ + 384, + 3, + 16, + -1 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "permute_10", + "op": "aten.permute.default", + "args": [ + { + "tensor": "view_25" + }, + [ + 1, + 0, + 2, + 3 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_30", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_10" + }, + 0, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_31", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_10" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_32", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_10" + }, + 0, + 2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "unsqueeze_52", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "cos" + }, + -2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 888, in apply_rotary_pos_emb_vision\n cos, sin = cos.unsqueeze(-2).float(), sin.unsqueeze(-2).float()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_53", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "sin" + }, + -2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 888, in apply_rotary_pos_emb_vision\n cos, sin = cos.unsqueeze(-2).float(), sin.unsqueeze(-2).float()\n ^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_52", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "select_30" + }, + { + "tensor": "unsqueeze_52" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_71", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_30" + }, + 2, + 0, + 32 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 551, in rotate_half\n x1 = x[..., : x.shape[-1] // 2]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_72", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_30" + }, + 2, + 32, + 9223372036854775807 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 552, in rotate_half\n x2 = x[..., x.shape[-1] // 2 :]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "neg_20", + "op": "aten.neg.default", + "args": [ + { + "tensor": "slice_72" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_31", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "neg_20" + }, + { + "tensor": "slice_71" + } + ], + -1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_53", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "cat_31" + }, + { + "tensor": "unsqueeze_53" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_41", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "mul_52" + }, + { + "tensor": "mul_53" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_54", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "select_31" + }, + { + "tensor": "unsqueeze_52" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_73", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_31" + }, + 2, + 0, + 32 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 551, in rotate_half\n x1 = x[..., : x.shape[-1] // 2]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_74", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_31" + }, + 2, + 32, + 9223372036854775807 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 552, in rotate_half\n x2 = x[..., x.shape[-1] // 2 :]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "neg_21", + "op": "aten.neg.default", + "args": [ + { + "tensor": "slice_74" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_32", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "neg_21" + }, + { + "tensor": "slice_73" + } + ], + -1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_55", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "cat_32" + }, + { + "tensor": "unsqueeze_53" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_42", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "mul_54" + }, + { + "tensor": "mul_55" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_50", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "add_41" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 925, in forward\n query_states = query_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_54", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_50" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 925, in forward\n query_states = query_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_51", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "add_42" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 926, in forward\n key_states = key_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_55", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_51" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 926, in forward\n key_states = key_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_52", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "select_32" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 927, in forward\n value_states = value_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_56", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_52" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 927, in forward\n value_states = value_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_75", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_54" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "slice_76", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_55" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "slice_77", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_56" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "transpose_53", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "slice_76" + }, + 2, + 3 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "matmul_20", + "op": "aten.matmul.default", + "args": [ + { + "tensor": "slice_75" + }, + { + "tensor": "transpose_53" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_56", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "matmul_20" + }, + 0.125 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "softmax_10", + "op": "aten.softmax.int", + "args": [ + { + "tensor": "mul_56" + }, + -1, + { + "dtype": "float32" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 624, in eager_attention_forward\n attn_weights = nn.functional.softmax(attn_weights, dim=-1, dtype=torch.float32).to(query.dtype)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "matmul_21", + "op": "aten.matmul.default", + "args": [ + { + "tensor": "softmax_10" + }, + { + "tensor": "slice_77" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 626, in eager_attention_forward\n attn_output = torch.matmul(attn_weights, value_states)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_54", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "matmul_21" + }, + 1, + 2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 627, in eager_attention_forward\n attn_output = attn_output.transpose(1, 2).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "clone_10", + "op": "aten.clone.default", + "args": [ + { + "tensor": "transpose_54" + } + ], + "kwargs": { + "memory_format": { + "memoryFormat": "contiguous_format" + } + }, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 627, in eager_attention_forward\n attn_output = attn_output.transpose(1, 2).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_33", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "clone_10" + } + ], + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 972, in forward\n attn_output = torch.cat(attn_outputs, dim=1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "view_26", + "op": "aten.view.default", + "args": [ + { + "tensor": "cat_33" + }, + [ + 384, + -1 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 974, in forward\n attn_output = attn_output.reshape(seq_length, -1).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "linear_41", + "op": "aten.linear.default", + "args": [ + { + "tensor": "view_26" + }, + { + "tensor": "p_visual_blocks_10_attn_proj_weight" + }, + { + "tensor": "p_visual_blocks_10_attn_proj_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 975, in forward\n attn_output = self.proj(attn_output)\n ^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_43", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "add_40" + }, + { + "tensor": "linear_41" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "layer_norm_21", + "op": "aten.layer_norm.default", + "args": [ + { + "tensor": "add_43" + }, + [ + 1024 + ], + { + "tensor": "p_visual_blocks_10_norm2_weight" + }, + { + "tensor": "p_visual_blocks_10_norm2_bias" + }, + 1e-06, + false + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "linear_42", + "op": "aten.linear.default", + "args": [ + { + "tensor": "layer_norm_21" + }, + { + "tensor": "p_visual_blocks_10_mlp_linear_fc1_weight" + }, + { + "tensor": "p_visual_blocks_10_mlp_linear_fc1_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "gelu_10", + "op": "aten.gelu.default", + "args": [ + { + "tensor": "linear_42" + } + ], + "kwargs": { + "approximate": "tanh" + }, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/activations.py\", line 51, in forward\n return self.act(input)\n ^^^^^^^^^^^^^^^" + }, + { + "id": "linear_43", + "op": "aten.linear.default", + "args": [ + { + "tensor": "gelu_10" + }, + { + "tensor": "p_visual_blocks_10_mlp_linear_fc2_weight" + }, + { + "tensor": "p_visual_blocks_10_mlp_linear_fc2_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_44", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "add_43" + }, + { + "tensor": "linear_43" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "layer_norm_22", + "op": "aten.layer_norm.default", + "args": [ + { + "tensor": "add_44" + }, + [ + 1024 + ], + { + "tensor": "p_visual_blocks_11_norm1_weight" + }, + { + "tensor": "p_visual_blocks_11_norm1_bias" + }, + 1e-06, + false + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1000, in forward\n self.norm1(hidden_states)," + }, + { + "id": "linear_44", + "op": "aten.linear.default", + "args": [ + { + "tensor": "layer_norm_22" + }, + { + "tensor": "p_visual_blocks_11_attn_qkv_weight" + }, + { + "tensor": "p_visual_blocks_11_attn_qkv_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "view_27", + "op": "aten.view.default", + "args": [ + { + "tensor": "linear_44" + }, + [ + 384, + 3, + 16, + -1 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "permute_11", + "op": "aten.permute.default", + "args": [ + { + "tensor": "view_27" + }, + [ + 1, + 0, + 2, + 3 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_33", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_11" + }, + 0, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_34", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_11" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_35", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_11" + }, + 0, + 2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "unsqueeze_57", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "cos" + }, + -2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 888, in apply_rotary_pos_emb_vision\n cos, sin = cos.unsqueeze(-2).float(), sin.unsqueeze(-2).float()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_58", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "sin" + }, + -2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 888, in apply_rotary_pos_emb_vision\n cos, sin = cos.unsqueeze(-2).float(), sin.unsqueeze(-2).float()\n ^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_57", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "select_33" + }, + { + "tensor": "unsqueeze_57" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_78", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_33" + }, + 2, + 0, + 32 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 551, in rotate_half\n x1 = x[..., : x.shape[-1] // 2]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_79", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_33" + }, + 2, + 32, + 9223372036854775807 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 552, in rotate_half\n x2 = x[..., x.shape[-1] // 2 :]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "neg_22", + "op": "aten.neg.default", + "args": [ + { + "tensor": "slice_79" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_34", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "neg_22" + }, + { + "tensor": "slice_78" + } + ], + -1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_58", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "cat_34" + }, + { + "tensor": "unsqueeze_58" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_45", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "mul_57" + }, + { + "tensor": "mul_58" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_59", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "select_34" + }, + { + "tensor": "unsqueeze_57" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_80", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_34" + }, + 2, + 0, + 32 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 551, in rotate_half\n x1 = x[..., : x.shape[-1] // 2]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_81", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_34" + }, + 2, + 32, + 9223372036854775807 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 552, in rotate_half\n x2 = x[..., x.shape[-1] // 2 :]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "neg_23", + "op": "aten.neg.default", + "args": [ + { + "tensor": "slice_81" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_35", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "neg_23" + }, + { + "tensor": "slice_80" + } + ], + -1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_60", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "cat_35" + }, + { + "tensor": "unsqueeze_58" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_46", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "mul_59" + }, + { + "tensor": "mul_60" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_55", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "add_45" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 925, in forward\n query_states = query_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_59", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_55" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 925, in forward\n query_states = query_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_56", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "add_46" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 926, in forward\n key_states = key_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_60", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_56" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 926, in forward\n key_states = key_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_57", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "select_35" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 927, in forward\n value_states = value_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_61", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_57" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 927, in forward\n value_states = value_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_82", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_59" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "slice_83", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_60" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "slice_84", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_61" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "transpose_58", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "slice_83" + }, + 2, + 3 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "matmul_22", + "op": "aten.matmul.default", + "args": [ + { + "tensor": "slice_82" + }, + { + "tensor": "transpose_58" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_61", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "matmul_22" + }, + 0.125 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "softmax_11", + "op": "aten.softmax.int", + "args": [ + { + "tensor": "mul_61" + }, + -1, + { + "dtype": "float32" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 624, in eager_attention_forward\n attn_weights = nn.functional.softmax(attn_weights, dim=-1, dtype=torch.float32).to(query.dtype)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "matmul_23", + "op": "aten.matmul.default", + "args": [ + { + "tensor": "softmax_11" + }, + { + "tensor": "slice_84" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 626, in eager_attention_forward\n attn_output = torch.matmul(attn_weights, value_states)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_59", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "matmul_23" + }, + 1, + 2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 627, in eager_attention_forward\n attn_output = attn_output.transpose(1, 2).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "clone_11", + "op": "aten.clone.default", + "args": [ + { + "tensor": "transpose_59" + } + ], + "kwargs": { + "memory_format": { + "memoryFormat": "contiguous_format" + } + }, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 627, in eager_attention_forward\n attn_output = attn_output.transpose(1, 2).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_36", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "clone_11" + } + ], + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 972, in forward\n attn_output = torch.cat(attn_outputs, dim=1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "view_28", + "op": "aten.view.default", + "args": [ + { + "tensor": "cat_36" + }, + [ + 384, + -1 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 974, in forward\n attn_output = attn_output.reshape(seq_length, -1).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "linear_45", + "op": "aten.linear.default", + "args": [ + { + "tensor": "view_28" + }, + { + "tensor": "p_visual_blocks_11_attn_proj_weight" + }, + { + "tensor": "p_visual_blocks_11_attn_proj_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 975, in forward\n attn_output = self.proj(attn_output)\n ^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_47", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "add_44" + }, + { + "tensor": "linear_45" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "layer_norm_23", + "op": "aten.layer_norm.default", + "args": [ + { + "tensor": "add_47" + }, + [ + 1024 + ], + { + "tensor": "p_visual_blocks_11_norm2_weight" + }, + { + "tensor": "p_visual_blocks_11_norm2_bias" + }, + 1e-06, + false + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "linear_46", + "op": "aten.linear.default", + "args": [ + { + "tensor": "layer_norm_23" + }, + { + "tensor": "p_visual_blocks_11_mlp_linear_fc1_weight" + }, + { + "tensor": "p_visual_blocks_11_mlp_linear_fc1_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "gelu_11", + "op": "aten.gelu.default", + "args": [ + { + "tensor": "linear_46" + } + ], + "kwargs": { + "approximate": "tanh" + }, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/activations.py\", line 51, in forward\n return self.act(input)\n ^^^^^^^^^^^^^^^" + }, + { + "id": "linear_47", + "op": "aten.linear.default", + "args": [ + { + "tensor": "gelu_11" + }, + { + "tensor": "p_visual_blocks_11_mlp_linear_fc2_weight" + }, + { + "tensor": "p_visual_blocks_11_mlp_linear_fc2_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_48", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "add_47" + }, + { + "tensor": "linear_47" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "layer_norm_24", + "op": "aten.layer_norm.default", + "args": [ + { + "tensor": "add_48" + }, + [ + 1024 + ], + { + "tensor": "p_visual_blocks_12_norm1_weight" + }, + { + "tensor": "p_visual_blocks_12_norm1_bias" + }, + 1e-06, + false + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1000, in forward\n self.norm1(hidden_states)," + }, + { + "id": "linear_48", + "op": "aten.linear.default", + "args": [ + { + "tensor": "layer_norm_24" + }, + { + "tensor": "p_visual_blocks_12_attn_qkv_weight" + }, + { + "tensor": "p_visual_blocks_12_attn_qkv_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "view_29", + "op": "aten.view.default", + "args": [ + { + "tensor": "linear_48" + }, + [ + 384, + 3, + 16, + -1 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "permute_12", + "op": "aten.permute.default", + "args": [ + { + "tensor": "view_29" + }, + [ + 1, + 0, + 2, + 3 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_36", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_12" + }, + 0, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_37", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_12" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_38", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_12" + }, + 0, + 2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "unsqueeze_62", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "cos" + }, + -2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 888, in apply_rotary_pos_emb_vision\n cos, sin = cos.unsqueeze(-2).float(), sin.unsqueeze(-2).float()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_63", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "sin" + }, + -2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 888, in apply_rotary_pos_emb_vision\n cos, sin = cos.unsqueeze(-2).float(), sin.unsqueeze(-2).float()\n ^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_62", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "select_36" + }, + { + "tensor": "unsqueeze_62" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_85", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_36" + }, + 2, + 0, + 32 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 551, in rotate_half\n x1 = x[..., : x.shape[-1] // 2]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_86", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_36" + }, + 2, + 32, + 9223372036854775807 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 552, in rotate_half\n x2 = x[..., x.shape[-1] // 2 :]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "neg_24", + "op": "aten.neg.default", + "args": [ + { + "tensor": "slice_86" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_37", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "neg_24" + }, + { + "tensor": "slice_85" + } + ], + -1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_63", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "cat_37" + }, + { + "tensor": "unsqueeze_63" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_49", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "mul_62" + }, + { + "tensor": "mul_63" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_64", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "select_37" + }, + { + "tensor": "unsqueeze_62" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_87", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_37" + }, + 2, + 0, + 32 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 551, in rotate_half\n x1 = x[..., : x.shape[-1] // 2]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_88", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_37" + }, + 2, + 32, + 9223372036854775807 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 552, in rotate_half\n x2 = x[..., x.shape[-1] // 2 :]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "neg_25", + "op": "aten.neg.default", + "args": [ + { + "tensor": "slice_88" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_38", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "neg_25" + }, + { + "tensor": "slice_87" + } + ], + -1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_65", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "cat_38" + }, + { + "tensor": "unsqueeze_63" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_50", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "mul_64" + }, + { + "tensor": "mul_65" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_60", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "add_49" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 925, in forward\n query_states = query_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_64", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_60" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 925, in forward\n query_states = query_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_61", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "add_50" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 926, in forward\n key_states = key_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_65", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_61" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 926, in forward\n key_states = key_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_62", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "select_38" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 927, in forward\n value_states = value_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_66", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_62" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 927, in forward\n value_states = value_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_89", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_64" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "slice_90", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_65" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "slice_91", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_66" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "transpose_63", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "slice_90" + }, + 2, + 3 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "matmul_24", + "op": "aten.matmul.default", + "args": [ + { + "tensor": "slice_89" + }, + { + "tensor": "transpose_63" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_66", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "matmul_24" + }, + 0.125 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "softmax_12", + "op": "aten.softmax.int", + "args": [ + { + "tensor": "mul_66" + }, + -1, + { + "dtype": "float32" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 624, in eager_attention_forward\n attn_weights = nn.functional.softmax(attn_weights, dim=-1, dtype=torch.float32).to(query.dtype)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "matmul_25", + "op": "aten.matmul.default", + "args": [ + { + "tensor": "softmax_12" + }, + { + "tensor": "slice_91" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 626, in eager_attention_forward\n attn_output = torch.matmul(attn_weights, value_states)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_64", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "matmul_25" + }, + 1, + 2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 627, in eager_attention_forward\n attn_output = attn_output.transpose(1, 2).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "clone_12", + "op": "aten.clone.default", + "args": [ + { + "tensor": "transpose_64" + } + ], + "kwargs": { + "memory_format": { + "memoryFormat": "contiguous_format" + } + }, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 627, in eager_attention_forward\n attn_output = attn_output.transpose(1, 2).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_39", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "clone_12" + } + ], + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 972, in forward\n attn_output = torch.cat(attn_outputs, dim=1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "view_30", + "op": "aten.view.default", + "args": [ + { + "tensor": "cat_39" + }, + [ + 384, + -1 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 974, in forward\n attn_output = attn_output.reshape(seq_length, -1).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "linear_49", + "op": "aten.linear.default", + "args": [ + { + "tensor": "view_30" + }, + { + "tensor": "p_visual_blocks_12_attn_proj_weight" + }, + { + "tensor": "p_visual_blocks_12_attn_proj_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 975, in forward\n attn_output = self.proj(attn_output)\n ^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_51", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "add_48" + }, + { + "tensor": "linear_49" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "layer_norm_25", + "op": "aten.layer_norm.default", + "args": [ + { + "tensor": "add_51" + }, + [ + 1024 + ], + { + "tensor": "p_visual_blocks_12_norm2_weight" + }, + { + "tensor": "p_visual_blocks_12_norm2_bias" + }, + 1e-06, + false + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "linear_50", + "op": "aten.linear.default", + "args": [ + { + "tensor": "layer_norm_25" + }, + { + "tensor": "p_visual_blocks_12_mlp_linear_fc1_weight" + }, + { + "tensor": "p_visual_blocks_12_mlp_linear_fc1_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "gelu_12", + "op": "aten.gelu.default", + "args": [ + { + "tensor": "linear_50" + } + ], + "kwargs": { + "approximate": "tanh" + }, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/activations.py\", line 51, in forward\n return self.act(input)\n ^^^^^^^^^^^^^^^" + }, + { + "id": "linear_51", + "op": "aten.linear.default", + "args": [ + { + "tensor": "gelu_12" + }, + { + "tensor": "p_visual_blocks_12_mlp_linear_fc2_weight" + }, + { + "tensor": "p_visual_blocks_12_mlp_linear_fc2_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_52", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "add_51" + }, + { + "tensor": "linear_51" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "layer_norm_26", + "op": "aten.layer_norm.default", + "args": [ + { + "tensor": "add_52" + }, + [ + 1024 + ], + { + "tensor": "p_visual_blocks_13_norm1_weight" + }, + { + "tensor": "p_visual_blocks_13_norm1_bias" + }, + 1e-06, + false + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1000, in forward\n self.norm1(hidden_states)," + }, + { + "id": "linear_52", + "op": "aten.linear.default", + "args": [ + { + "tensor": "layer_norm_26" + }, + { + "tensor": "p_visual_blocks_13_attn_qkv_weight" + }, + { + "tensor": "p_visual_blocks_13_attn_qkv_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "view_31", + "op": "aten.view.default", + "args": [ + { + "tensor": "linear_52" + }, + [ + 384, + 3, + 16, + -1 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "permute_13", + "op": "aten.permute.default", + "args": [ + { + "tensor": "view_31" + }, + [ + 1, + 0, + 2, + 3 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_39", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_13" + }, + 0, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_40", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_13" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_41", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_13" + }, + 0, + 2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "unsqueeze_67", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "cos" + }, + -2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 888, in apply_rotary_pos_emb_vision\n cos, sin = cos.unsqueeze(-2).float(), sin.unsqueeze(-2).float()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_68", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "sin" + }, + -2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 888, in apply_rotary_pos_emb_vision\n cos, sin = cos.unsqueeze(-2).float(), sin.unsqueeze(-2).float()\n ^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_67", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "select_39" + }, + { + "tensor": "unsqueeze_67" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_92", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_39" + }, + 2, + 0, + 32 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 551, in rotate_half\n x1 = x[..., : x.shape[-1] // 2]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_93", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_39" + }, + 2, + 32, + 9223372036854775807 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 552, in rotate_half\n x2 = x[..., x.shape[-1] // 2 :]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "neg_26", + "op": "aten.neg.default", + "args": [ + { + "tensor": "slice_93" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_40", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "neg_26" + }, + { + "tensor": "slice_92" + } + ], + -1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_68", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "cat_40" + }, + { + "tensor": "unsqueeze_68" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_53", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "mul_67" + }, + { + "tensor": "mul_68" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_69", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "select_40" + }, + { + "tensor": "unsqueeze_67" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_94", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_40" + }, + 2, + 0, + 32 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 551, in rotate_half\n x1 = x[..., : x.shape[-1] // 2]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_95", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_40" + }, + 2, + 32, + 9223372036854775807 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 552, in rotate_half\n x2 = x[..., x.shape[-1] // 2 :]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "neg_27", + "op": "aten.neg.default", + "args": [ + { + "tensor": "slice_95" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_41", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "neg_27" + }, + { + "tensor": "slice_94" + } + ], + -1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_70", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "cat_41" + }, + { + "tensor": "unsqueeze_68" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_54", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "mul_69" + }, + { + "tensor": "mul_70" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_65", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "add_53" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 925, in forward\n query_states = query_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_69", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_65" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 925, in forward\n query_states = query_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_66", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "add_54" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 926, in forward\n key_states = key_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_70", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_66" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 926, in forward\n key_states = key_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_67", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "select_41" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 927, in forward\n value_states = value_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_71", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_67" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 927, in forward\n value_states = value_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_96", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_69" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "slice_97", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_70" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "slice_98", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_71" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "transpose_68", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "slice_97" + }, + 2, + 3 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "matmul_26", + "op": "aten.matmul.default", + "args": [ + { + "tensor": "slice_96" + }, + { + "tensor": "transpose_68" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_71", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "matmul_26" + }, + 0.125 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "softmax_13", + "op": "aten.softmax.int", + "args": [ + { + "tensor": "mul_71" + }, + -1, + { + "dtype": "float32" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 624, in eager_attention_forward\n attn_weights = nn.functional.softmax(attn_weights, dim=-1, dtype=torch.float32).to(query.dtype)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "matmul_27", + "op": "aten.matmul.default", + "args": [ + { + "tensor": "softmax_13" + }, + { + "tensor": "slice_98" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 626, in eager_attention_forward\n attn_output = torch.matmul(attn_weights, value_states)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_69", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "matmul_27" + }, + 1, + 2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 627, in eager_attention_forward\n attn_output = attn_output.transpose(1, 2).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "clone_13", + "op": "aten.clone.default", + "args": [ + { + "tensor": "transpose_69" + } + ], + "kwargs": { + "memory_format": { + "memoryFormat": "contiguous_format" + } + }, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 627, in eager_attention_forward\n attn_output = attn_output.transpose(1, 2).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_42", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "clone_13" + } + ], + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 972, in forward\n attn_output = torch.cat(attn_outputs, dim=1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "view_32", + "op": "aten.view.default", + "args": [ + { + "tensor": "cat_42" + }, + [ + 384, + -1 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 974, in forward\n attn_output = attn_output.reshape(seq_length, -1).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "linear_53", + "op": "aten.linear.default", + "args": [ + { + "tensor": "view_32" + }, + { + "tensor": "p_visual_blocks_13_attn_proj_weight" + }, + { + "tensor": "p_visual_blocks_13_attn_proj_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 975, in forward\n attn_output = self.proj(attn_output)\n ^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_55", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "add_52" + }, + { + "tensor": "linear_53" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "layer_norm_27", + "op": "aten.layer_norm.default", + "args": [ + { + "tensor": "add_55" + }, + [ + 1024 + ], + { + "tensor": "p_visual_blocks_13_norm2_weight" + }, + { + "tensor": "p_visual_blocks_13_norm2_bias" + }, + 1e-06, + false + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "linear_54", + "op": "aten.linear.default", + "args": [ + { + "tensor": "layer_norm_27" + }, + { + "tensor": "p_visual_blocks_13_mlp_linear_fc1_weight" + }, + { + "tensor": "p_visual_blocks_13_mlp_linear_fc1_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "gelu_13", + "op": "aten.gelu.default", + "args": [ + { + "tensor": "linear_54" + } + ], + "kwargs": { + "approximate": "tanh" + }, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/activations.py\", line 51, in forward\n return self.act(input)\n ^^^^^^^^^^^^^^^" + }, + { + "id": "linear_55", + "op": "aten.linear.default", + "args": [ + { + "tensor": "gelu_13" + }, + { + "tensor": "p_visual_blocks_13_mlp_linear_fc2_weight" + }, + { + "tensor": "p_visual_blocks_13_mlp_linear_fc2_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_56", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "add_55" + }, + { + "tensor": "linear_55" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "layer_norm_28", + "op": "aten.layer_norm.default", + "args": [ + { + "tensor": "add_56" + }, + [ + 1024 + ], + { + "tensor": "p_visual_blocks_14_norm1_weight" + }, + { + "tensor": "p_visual_blocks_14_norm1_bias" + }, + 1e-06, + false + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1000, in forward\n self.norm1(hidden_states)," + }, + { + "id": "linear_56", + "op": "aten.linear.default", + "args": [ + { + "tensor": "layer_norm_28" + }, + { + "tensor": "p_visual_blocks_14_attn_qkv_weight" + }, + { + "tensor": "p_visual_blocks_14_attn_qkv_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "view_33", + "op": "aten.view.default", + "args": [ + { + "tensor": "linear_56" + }, + [ + 384, + 3, + 16, + -1 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "permute_14", + "op": "aten.permute.default", + "args": [ + { + "tensor": "view_33" + }, + [ + 1, + 0, + 2, + 3 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_42", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_14" + }, + 0, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_43", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_14" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_44", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_14" + }, + 0, + 2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "unsqueeze_72", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "cos" + }, + -2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 888, in apply_rotary_pos_emb_vision\n cos, sin = cos.unsqueeze(-2).float(), sin.unsqueeze(-2).float()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_73", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "sin" + }, + -2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 888, in apply_rotary_pos_emb_vision\n cos, sin = cos.unsqueeze(-2).float(), sin.unsqueeze(-2).float()\n ^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_72", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "select_42" + }, + { + "tensor": "unsqueeze_72" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_99", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_42" + }, + 2, + 0, + 32 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 551, in rotate_half\n x1 = x[..., : x.shape[-1] // 2]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_100", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_42" + }, + 2, + 32, + 9223372036854775807 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 552, in rotate_half\n x2 = x[..., x.shape[-1] // 2 :]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "neg_28", + "op": "aten.neg.default", + "args": [ + { + "tensor": "slice_100" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_43", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "neg_28" + }, + { + "tensor": "slice_99" + } + ], + -1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_73", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "cat_43" + }, + { + "tensor": "unsqueeze_73" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_57", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "mul_72" + }, + { + "tensor": "mul_73" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_74", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "select_43" + }, + { + "tensor": "unsqueeze_72" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_101", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_43" + }, + 2, + 0, + 32 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 551, in rotate_half\n x1 = x[..., : x.shape[-1] // 2]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_102", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_43" + }, + 2, + 32, + 9223372036854775807 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 552, in rotate_half\n x2 = x[..., x.shape[-1] // 2 :]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "neg_29", + "op": "aten.neg.default", + "args": [ + { + "tensor": "slice_102" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_44", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "neg_29" + }, + { + "tensor": "slice_101" + } + ], + -1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_75", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "cat_44" + }, + { + "tensor": "unsqueeze_73" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_58", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "mul_74" + }, + { + "tensor": "mul_75" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_70", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "add_57" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 925, in forward\n query_states = query_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_74", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_70" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 925, in forward\n query_states = query_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_71", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "add_58" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 926, in forward\n key_states = key_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_75", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_71" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 926, in forward\n key_states = key_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_72", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "select_44" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 927, in forward\n value_states = value_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_76", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_72" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 927, in forward\n value_states = value_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_103", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_74" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "slice_104", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_75" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "slice_105", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_76" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "transpose_73", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "slice_104" + }, + 2, + 3 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "matmul_28", + "op": "aten.matmul.default", + "args": [ + { + "tensor": "slice_103" + }, + { + "tensor": "transpose_73" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_76", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "matmul_28" + }, + 0.125 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "softmax_14", + "op": "aten.softmax.int", + "args": [ + { + "tensor": "mul_76" + }, + -1, + { + "dtype": "float32" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 624, in eager_attention_forward\n attn_weights = nn.functional.softmax(attn_weights, dim=-1, dtype=torch.float32).to(query.dtype)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "matmul_29", + "op": "aten.matmul.default", + "args": [ + { + "tensor": "softmax_14" + }, + { + "tensor": "slice_105" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 626, in eager_attention_forward\n attn_output = torch.matmul(attn_weights, value_states)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_74", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "matmul_29" + }, + 1, + 2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 627, in eager_attention_forward\n attn_output = attn_output.transpose(1, 2).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "clone_14", + "op": "aten.clone.default", + "args": [ + { + "tensor": "transpose_74" + } + ], + "kwargs": { + "memory_format": { + "memoryFormat": "contiguous_format" + } + }, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 627, in eager_attention_forward\n attn_output = attn_output.transpose(1, 2).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_45", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "clone_14" + } + ], + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 972, in forward\n attn_output = torch.cat(attn_outputs, dim=1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "view_34", + "op": "aten.view.default", + "args": [ + { + "tensor": "cat_45" + }, + [ + 384, + -1 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 974, in forward\n attn_output = attn_output.reshape(seq_length, -1).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "linear_57", + "op": "aten.linear.default", + "args": [ + { + "tensor": "view_34" + }, + { + "tensor": "p_visual_blocks_14_attn_proj_weight" + }, + { + "tensor": "p_visual_blocks_14_attn_proj_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 975, in forward\n attn_output = self.proj(attn_output)\n ^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_59", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "add_56" + }, + { + "tensor": "linear_57" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "layer_norm_29", + "op": "aten.layer_norm.default", + "args": [ + { + "tensor": "add_59" + }, + [ + 1024 + ], + { + "tensor": "p_visual_blocks_14_norm2_weight" + }, + { + "tensor": "p_visual_blocks_14_norm2_bias" + }, + 1e-06, + false + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "linear_58", + "op": "aten.linear.default", + "args": [ + { + "tensor": "layer_norm_29" + }, + { + "tensor": "p_visual_blocks_14_mlp_linear_fc1_weight" + }, + { + "tensor": "p_visual_blocks_14_mlp_linear_fc1_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "gelu_14", + "op": "aten.gelu.default", + "args": [ + { + "tensor": "linear_58" + } + ], + "kwargs": { + "approximate": "tanh" + }, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/activations.py\", line 51, in forward\n return self.act(input)\n ^^^^^^^^^^^^^^^" + }, + { + "id": "linear_59", + "op": "aten.linear.default", + "args": [ + { + "tensor": "gelu_14" + }, + { + "tensor": "p_visual_blocks_14_mlp_linear_fc2_weight" + }, + { + "tensor": "p_visual_blocks_14_mlp_linear_fc2_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_60", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "add_59" + }, + { + "tensor": "linear_59" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "layer_norm_30", + "op": "aten.layer_norm.default", + "args": [ + { + "tensor": "add_60" + }, + [ + 1024 + ], + { + "tensor": "p_visual_blocks_15_norm1_weight" + }, + { + "tensor": "p_visual_blocks_15_norm1_bias" + }, + 1e-06, + false + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1000, in forward\n self.norm1(hidden_states)," + }, + { + "id": "linear_60", + "op": "aten.linear.default", + "args": [ + { + "tensor": "layer_norm_30" + }, + { + "tensor": "p_visual_blocks_15_attn_qkv_weight" + }, + { + "tensor": "p_visual_blocks_15_attn_qkv_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "view_35", + "op": "aten.view.default", + "args": [ + { + "tensor": "linear_60" + }, + [ + 384, + 3, + 16, + -1 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "permute_15", + "op": "aten.permute.default", + "args": [ + { + "tensor": "view_35" + }, + [ + 1, + 0, + 2, + 3 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_45", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_15" + }, + 0, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_46", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_15" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_47", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_15" + }, + 0, + 2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "unsqueeze_77", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "cos" + }, + -2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 888, in apply_rotary_pos_emb_vision\n cos, sin = cos.unsqueeze(-2).float(), sin.unsqueeze(-2).float()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_78", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "sin" + }, + -2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 888, in apply_rotary_pos_emb_vision\n cos, sin = cos.unsqueeze(-2).float(), sin.unsqueeze(-2).float()\n ^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_77", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "select_45" + }, + { + "tensor": "unsqueeze_77" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_106", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_45" + }, + 2, + 0, + 32 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 551, in rotate_half\n x1 = x[..., : x.shape[-1] // 2]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_107", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_45" + }, + 2, + 32, + 9223372036854775807 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 552, in rotate_half\n x2 = x[..., x.shape[-1] // 2 :]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "neg_30", + "op": "aten.neg.default", + "args": [ + { + "tensor": "slice_107" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_46", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "neg_30" + }, + { + "tensor": "slice_106" + } + ], + -1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_78", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "cat_46" + }, + { + "tensor": "unsqueeze_78" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_61", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "mul_77" + }, + { + "tensor": "mul_78" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_79", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "select_46" + }, + { + "tensor": "unsqueeze_77" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_108", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_46" + }, + 2, + 0, + 32 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 551, in rotate_half\n x1 = x[..., : x.shape[-1] // 2]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_109", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_46" + }, + 2, + 32, + 9223372036854775807 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 552, in rotate_half\n x2 = x[..., x.shape[-1] // 2 :]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "neg_31", + "op": "aten.neg.default", + "args": [ + { + "tensor": "slice_109" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_47", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "neg_31" + }, + { + "tensor": "slice_108" + } + ], + -1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_80", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "cat_47" + }, + { + "tensor": "unsqueeze_78" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_62", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "mul_79" + }, + { + "tensor": "mul_80" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_75", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "add_61" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 925, in forward\n query_states = query_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_79", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_75" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 925, in forward\n query_states = query_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_76", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "add_62" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 926, in forward\n key_states = key_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_80", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_76" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 926, in forward\n key_states = key_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_77", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "select_47" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 927, in forward\n value_states = value_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_81", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_77" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 927, in forward\n value_states = value_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_110", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_79" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "slice_111", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_80" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "slice_112", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_81" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "transpose_78", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "slice_111" + }, + 2, + 3 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "matmul_30", + "op": "aten.matmul.default", + "args": [ + { + "tensor": "slice_110" + }, + { + "tensor": "transpose_78" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_81", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "matmul_30" + }, + 0.125 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "softmax_15", + "op": "aten.softmax.int", + "args": [ + { + "tensor": "mul_81" + }, + -1, + { + "dtype": "float32" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 624, in eager_attention_forward\n attn_weights = nn.functional.softmax(attn_weights, dim=-1, dtype=torch.float32).to(query.dtype)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "matmul_31", + "op": "aten.matmul.default", + "args": [ + { + "tensor": "softmax_15" + }, + { + "tensor": "slice_112" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 626, in eager_attention_forward\n attn_output = torch.matmul(attn_weights, value_states)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_79", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "matmul_31" + }, + 1, + 2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 627, in eager_attention_forward\n attn_output = attn_output.transpose(1, 2).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "clone_15", + "op": "aten.clone.default", + "args": [ + { + "tensor": "transpose_79" + } + ], + "kwargs": { + "memory_format": { + "memoryFormat": "contiguous_format" + } + }, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 627, in eager_attention_forward\n attn_output = attn_output.transpose(1, 2).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_48", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "clone_15" + } + ], + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 972, in forward\n attn_output = torch.cat(attn_outputs, dim=1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "view_36", + "op": "aten.view.default", + "args": [ + { + "tensor": "cat_48" + }, + [ + 384, + -1 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 974, in forward\n attn_output = attn_output.reshape(seq_length, -1).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "linear_61", + "op": "aten.linear.default", + "args": [ + { + "tensor": "view_36" + }, + { + "tensor": "p_visual_blocks_15_attn_proj_weight" + }, + { + "tensor": "p_visual_blocks_15_attn_proj_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 975, in forward\n attn_output = self.proj(attn_output)\n ^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_63", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "add_60" + }, + { + "tensor": "linear_61" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "layer_norm_31", + "op": "aten.layer_norm.default", + "args": [ + { + "tensor": "add_63" + }, + [ + 1024 + ], + { + "tensor": "p_visual_blocks_15_norm2_weight" + }, + { + "tensor": "p_visual_blocks_15_norm2_bias" + }, + 1e-06, + false + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "linear_62", + "op": "aten.linear.default", + "args": [ + { + "tensor": "layer_norm_31" + }, + { + "tensor": "p_visual_blocks_15_mlp_linear_fc1_weight" + }, + { + "tensor": "p_visual_blocks_15_mlp_linear_fc1_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "gelu_15", + "op": "aten.gelu.default", + "args": [ + { + "tensor": "linear_62" + } + ], + "kwargs": { + "approximate": "tanh" + }, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/activations.py\", line 51, in forward\n return self.act(input)\n ^^^^^^^^^^^^^^^" + }, + { + "id": "linear_63", + "op": "aten.linear.default", + "args": [ + { + "tensor": "gelu_15" + }, + { + "tensor": "p_visual_blocks_15_mlp_linear_fc2_weight" + }, + { + "tensor": "p_visual_blocks_15_mlp_linear_fc2_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_64", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "add_63" + }, + { + "tensor": "linear_63" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "layer_norm_32", + "op": "aten.layer_norm.default", + "args": [ + { + "tensor": "add_64" + }, + [ + 1024 + ], + { + "tensor": "p_visual_blocks_16_norm1_weight" + }, + { + "tensor": "p_visual_blocks_16_norm1_bias" + }, + 1e-06, + false + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1000, in forward\n self.norm1(hidden_states)," + }, + { + "id": "linear_64", + "op": "aten.linear.default", + "args": [ + { + "tensor": "layer_norm_32" + }, + { + "tensor": "p_visual_blocks_16_attn_qkv_weight" + }, + { + "tensor": "p_visual_blocks_16_attn_qkv_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "view_37", + "op": "aten.view.default", + "args": [ + { + "tensor": "linear_64" + }, + [ + 384, + 3, + 16, + -1 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "permute_16", + "op": "aten.permute.default", + "args": [ + { + "tensor": "view_37" + }, + [ + 1, + 0, + 2, + 3 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_48", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_16" + }, + 0, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_49", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_16" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_50", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_16" + }, + 0, + 2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "unsqueeze_82", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "cos" + }, + -2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 888, in apply_rotary_pos_emb_vision\n cos, sin = cos.unsqueeze(-2).float(), sin.unsqueeze(-2).float()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_83", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "sin" + }, + -2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 888, in apply_rotary_pos_emb_vision\n cos, sin = cos.unsqueeze(-2).float(), sin.unsqueeze(-2).float()\n ^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_82", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "select_48" + }, + { + "tensor": "unsqueeze_82" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_113", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_48" + }, + 2, + 0, + 32 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 551, in rotate_half\n x1 = x[..., : x.shape[-1] // 2]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_114", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_48" + }, + 2, + 32, + 9223372036854775807 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 552, in rotate_half\n x2 = x[..., x.shape[-1] // 2 :]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "neg_32", + "op": "aten.neg.default", + "args": [ + { + "tensor": "slice_114" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_49", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "neg_32" + }, + { + "tensor": "slice_113" + } + ], + -1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_83", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "cat_49" + }, + { + "tensor": "unsqueeze_83" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_65", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "mul_82" + }, + { + "tensor": "mul_83" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_84", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "select_49" + }, + { + "tensor": "unsqueeze_82" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_115", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_49" + }, + 2, + 0, + 32 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 551, in rotate_half\n x1 = x[..., : x.shape[-1] // 2]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_116", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_49" + }, + 2, + 32, + 9223372036854775807 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 552, in rotate_half\n x2 = x[..., x.shape[-1] // 2 :]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "neg_33", + "op": "aten.neg.default", + "args": [ + { + "tensor": "slice_116" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_50", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "neg_33" + }, + { + "tensor": "slice_115" + } + ], + -1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_85", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "cat_50" + }, + { + "tensor": "unsqueeze_83" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_66", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "mul_84" + }, + { + "tensor": "mul_85" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_80", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "add_65" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 925, in forward\n query_states = query_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_84", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_80" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 925, in forward\n query_states = query_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_81", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "add_66" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 926, in forward\n key_states = key_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_85", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_81" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 926, in forward\n key_states = key_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_82", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "select_50" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 927, in forward\n value_states = value_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_86", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_82" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 927, in forward\n value_states = value_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_117", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_84" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "slice_118", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_85" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "slice_119", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_86" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "transpose_83", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "slice_118" + }, + 2, + 3 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "matmul_32", + "op": "aten.matmul.default", + "args": [ + { + "tensor": "slice_117" + }, + { + "tensor": "transpose_83" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_86", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "matmul_32" + }, + 0.125 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "softmax_16", + "op": "aten.softmax.int", + "args": [ + { + "tensor": "mul_86" + }, + -1, + { + "dtype": "float32" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 624, in eager_attention_forward\n attn_weights = nn.functional.softmax(attn_weights, dim=-1, dtype=torch.float32).to(query.dtype)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "matmul_33", + "op": "aten.matmul.default", + "args": [ + { + "tensor": "softmax_16" + }, + { + "tensor": "slice_119" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 626, in eager_attention_forward\n attn_output = torch.matmul(attn_weights, value_states)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_84", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "matmul_33" + }, + 1, + 2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 627, in eager_attention_forward\n attn_output = attn_output.transpose(1, 2).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "clone_16", + "op": "aten.clone.default", + "args": [ + { + "tensor": "transpose_84" + } + ], + "kwargs": { + "memory_format": { + "memoryFormat": "contiguous_format" + } + }, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 627, in eager_attention_forward\n attn_output = attn_output.transpose(1, 2).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_51", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "clone_16" + } + ], + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 972, in forward\n attn_output = torch.cat(attn_outputs, dim=1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "view_38", + "op": "aten.view.default", + "args": [ + { + "tensor": "cat_51" + }, + [ + 384, + -1 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 974, in forward\n attn_output = attn_output.reshape(seq_length, -1).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "linear_65", + "op": "aten.linear.default", + "args": [ + { + "tensor": "view_38" + }, + { + "tensor": "p_visual_blocks_16_attn_proj_weight" + }, + { + "tensor": "p_visual_blocks_16_attn_proj_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 975, in forward\n attn_output = self.proj(attn_output)\n ^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_67", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "add_64" + }, + { + "tensor": "linear_65" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "layer_norm_33", + "op": "aten.layer_norm.default", + "args": [ + { + "tensor": "add_67" + }, + [ + 1024 + ], + { + "tensor": "p_visual_blocks_16_norm2_weight" + }, + { + "tensor": "p_visual_blocks_16_norm2_bias" + }, + 1e-06, + false + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "linear_66", + "op": "aten.linear.default", + "args": [ + { + "tensor": "layer_norm_33" + }, + { + "tensor": "p_visual_blocks_16_mlp_linear_fc1_weight" + }, + { + "tensor": "p_visual_blocks_16_mlp_linear_fc1_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "gelu_16", + "op": "aten.gelu.default", + "args": [ + { + "tensor": "linear_66" + } + ], + "kwargs": { + "approximate": "tanh" + }, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/activations.py\", line 51, in forward\n return self.act(input)\n ^^^^^^^^^^^^^^^" + }, + { + "id": "linear_67", + "op": "aten.linear.default", + "args": [ + { + "tensor": "gelu_16" + }, + { + "tensor": "p_visual_blocks_16_mlp_linear_fc2_weight" + }, + { + "tensor": "p_visual_blocks_16_mlp_linear_fc2_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_68", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "add_67" + }, + { + "tensor": "linear_67" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "layer_norm_34", + "op": "aten.layer_norm.default", + "args": [ + { + "tensor": "add_68" + }, + [ + 1024 + ], + { + "tensor": "p_visual_blocks_17_norm1_weight" + }, + { + "tensor": "p_visual_blocks_17_norm1_bias" + }, + 1e-06, + false + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1000, in forward\n self.norm1(hidden_states)," + }, + { + "id": "linear_68", + "op": "aten.linear.default", + "args": [ + { + "tensor": "layer_norm_34" + }, + { + "tensor": "p_visual_blocks_17_attn_qkv_weight" + }, + { + "tensor": "p_visual_blocks_17_attn_qkv_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "view_39", + "op": "aten.view.default", + "args": [ + { + "tensor": "linear_68" + }, + [ + 384, + 3, + 16, + -1 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "permute_17", + "op": "aten.permute.default", + "args": [ + { + "tensor": "view_39" + }, + [ + 1, + 0, + 2, + 3 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_51", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_17" + }, + 0, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_52", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_17" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_53", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_17" + }, + 0, + 2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "unsqueeze_87", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "cos" + }, + -2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 888, in apply_rotary_pos_emb_vision\n cos, sin = cos.unsqueeze(-2).float(), sin.unsqueeze(-2).float()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_88", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "sin" + }, + -2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 888, in apply_rotary_pos_emb_vision\n cos, sin = cos.unsqueeze(-2).float(), sin.unsqueeze(-2).float()\n ^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_87", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "select_51" + }, + { + "tensor": "unsqueeze_87" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_120", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_51" + }, + 2, + 0, + 32 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 551, in rotate_half\n x1 = x[..., : x.shape[-1] // 2]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_121", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_51" + }, + 2, + 32, + 9223372036854775807 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 552, in rotate_half\n x2 = x[..., x.shape[-1] // 2 :]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "neg_34", + "op": "aten.neg.default", + "args": [ + { + "tensor": "slice_121" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_52", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "neg_34" + }, + { + "tensor": "slice_120" + } + ], + -1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_88", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "cat_52" + }, + { + "tensor": "unsqueeze_88" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_69", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "mul_87" + }, + { + "tensor": "mul_88" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_89", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "select_52" + }, + { + "tensor": "unsqueeze_87" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_122", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_52" + }, + 2, + 0, + 32 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 551, in rotate_half\n x1 = x[..., : x.shape[-1] // 2]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_123", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_52" + }, + 2, + 32, + 9223372036854775807 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 552, in rotate_half\n x2 = x[..., x.shape[-1] // 2 :]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "neg_35", + "op": "aten.neg.default", + "args": [ + { + "tensor": "slice_123" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_53", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "neg_35" + }, + { + "tensor": "slice_122" + } + ], + -1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_90", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "cat_53" + }, + { + "tensor": "unsqueeze_88" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_70", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "mul_89" + }, + { + "tensor": "mul_90" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_85", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "add_69" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 925, in forward\n query_states = query_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_89", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_85" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 925, in forward\n query_states = query_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_86", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "add_70" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 926, in forward\n key_states = key_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_90", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_86" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 926, in forward\n key_states = key_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_87", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "select_53" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 927, in forward\n value_states = value_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_91", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_87" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 927, in forward\n value_states = value_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_124", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_89" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "slice_125", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_90" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "slice_126", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_91" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "transpose_88", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "slice_125" + }, + 2, + 3 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "matmul_34", + "op": "aten.matmul.default", + "args": [ + { + "tensor": "slice_124" + }, + { + "tensor": "transpose_88" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_91", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "matmul_34" + }, + 0.125 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "softmax_17", + "op": "aten.softmax.int", + "args": [ + { + "tensor": "mul_91" + }, + -1, + { + "dtype": "float32" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 624, in eager_attention_forward\n attn_weights = nn.functional.softmax(attn_weights, dim=-1, dtype=torch.float32).to(query.dtype)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "matmul_35", + "op": "aten.matmul.default", + "args": [ + { + "tensor": "softmax_17" + }, + { + "tensor": "slice_126" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 626, in eager_attention_forward\n attn_output = torch.matmul(attn_weights, value_states)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_89", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "matmul_35" + }, + 1, + 2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 627, in eager_attention_forward\n attn_output = attn_output.transpose(1, 2).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "clone_17", + "op": "aten.clone.default", + "args": [ + { + "tensor": "transpose_89" + } + ], + "kwargs": { + "memory_format": { + "memoryFormat": "contiguous_format" + } + }, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 627, in eager_attention_forward\n attn_output = attn_output.transpose(1, 2).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_54", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "clone_17" + } + ], + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 972, in forward\n attn_output = torch.cat(attn_outputs, dim=1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "view_40", + "op": "aten.view.default", + "args": [ + { + "tensor": "cat_54" + }, + [ + 384, + -1 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 974, in forward\n attn_output = attn_output.reshape(seq_length, -1).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "linear_69", + "op": "aten.linear.default", + "args": [ + { + "tensor": "view_40" + }, + { + "tensor": "p_visual_blocks_17_attn_proj_weight" + }, + { + "tensor": "p_visual_blocks_17_attn_proj_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 975, in forward\n attn_output = self.proj(attn_output)\n ^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_71", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "add_68" + }, + { + "tensor": "linear_69" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "layer_norm_35", + "op": "aten.layer_norm.default", + "args": [ + { + "tensor": "add_71" + }, + [ + 1024 + ], + { + "tensor": "p_visual_blocks_17_norm2_weight" + }, + { + "tensor": "p_visual_blocks_17_norm2_bias" + }, + 1e-06, + false + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "linear_70", + "op": "aten.linear.default", + "args": [ + { + "tensor": "layer_norm_35" + }, + { + "tensor": "p_visual_blocks_17_mlp_linear_fc1_weight" + }, + { + "tensor": "p_visual_blocks_17_mlp_linear_fc1_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "gelu_17", + "op": "aten.gelu.default", + "args": [ + { + "tensor": "linear_70" + } + ], + "kwargs": { + "approximate": "tanh" + }, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/activations.py\", line 51, in forward\n return self.act(input)\n ^^^^^^^^^^^^^^^" + }, + { + "id": "linear_71", + "op": "aten.linear.default", + "args": [ + { + "tensor": "gelu_17" + }, + { + "tensor": "p_visual_blocks_17_mlp_linear_fc2_weight" + }, + { + "tensor": "p_visual_blocks_17_mlp_linear_fc2_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_72", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "add_71" + }, + { + "tensor": "linear_71" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "layer_norm_36", + "op": "aten.layer_norm.default", + "args": [ + { + "tensor": "add_72" + }, + [ + 1024 + ], + { + "tensor": "p_visual_blocks_18_norm1_weight" + }, + { + "tensor": "p_visual_blocks_18_norm1_bias" + }, + 1e-06, + false + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1000, in forward\n self.norm1(hidden_states)," + }, + { + "id": "linear_72", + "op": "aten.linear.default", + "args": [ + { + "tensor": "layer_norm_36" + }, + { + "tensor": "p_visual_blocks_18_attn_qkv_weight" + }, + { + "tensor": "p_visual_blocks_18_attn_qkv_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "view_41", + "op": "aten.view.default", + "args": [ + { + "tensor": "linear_72" + }, + [ + 384, + 3, + 16, + -1 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "permute_18", + "op": "aten.permute.default", + "args": [ + { + "tensor": "view_41" + }, + [ + 1, + 0, + 2, + 3 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_54", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_18" + }, + 0, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_55", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_18" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_56", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_18" + }, + 0, + 2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "unsqueeze_92", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "cos" + }, + -2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 888, in apply_rotary_pos_emb_vision\n cos, sin = cos.unsqueeze(-2).float(), sin.unsqueeze(-2).float()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_93", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "sin" + }, + -2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 888, in apply_rotary_pos_emb_vision\n cos, sin = cos.unsqueeze(-2).float(), sin.unsqueeze(-2).float()\n ^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_92", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "select_54" + }, + { + "tensor": "unsqueeze_92" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_127", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_54" + }, + 2, + 0, + 32 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 551, in rotate_half\n x1 = x[..., : x.shape[-1] // 2]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_128", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_54" + }, + 2, + 32, + 9223372036854775807 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 552, in rotate_half\n x2 = x[..., x.shape[-1] // 2 :]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "neg_36", + "op": "aten.neg.default", + "args": [ + { + "tensor": "slice_128" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_55", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "neg_36" + }, + { + "tensor": "slice_127" + } + ], + -1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_93", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "cat_55" + }, + { + "tensor": "unsqueeze_93" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_73", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "mul_92" + }, + { + "tensor": "mul_93" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_94", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "select_55" + }, + { + "tensor": "unsqueeze_92" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_129", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_55" + }, + 2, + 0, + 32 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 551, in rotate_half\n x1 = x[..., : x.shape[-1] // 2]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_130", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_55" + }, + 2, + 32, + 9223372036854775807 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 552, in rotate_half\n x2 = x[..., x.shape[-1] // 2 :]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "neg_37", + "op": "aten.neg.default", + "args": [ + { + "tensor": "slice_130" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_56", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "neg_37" + }, + { + "tensor": "slice_129" + } + ], + -1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_95", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "cat_56" + }, + { + "tensor": "unsqueeze_93" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_74", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "mul_94" + }, + { + "tensor": "mul_95" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_90", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "add_73" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 925, in forward\n query_states = query_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_94", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_90" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 925, in forward\n query_states = query_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_91", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "add_74" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 926, in forward\n key_states = key_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_95", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_91" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 926, in forward\n key_states = key_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_92", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "select_56" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 927, in forward\n value_states = value_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_96", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_92" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 927, in forward\n value_states = value_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_131", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_94" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "slice_132", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_95" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "slice_133", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_96" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "transpose_93", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "slice_132" + }, + 2, + 3 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "matmul_36", + "op": "aten.matmul.default", + "args": [ + { + "tensor": "slice_131" + }, + { + "tensor": "transpose_93" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_96", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "matmul_36" + }, + 0.125 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "softmax_18", + "op": "aten.softmax.int", + "args": [ + { + "tensor": "mul_96" + }, + -1, + { + "dtype": "float32" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 624, in eager_attention_forward\n attn_weights = nn.functional.softmax(attn_weights, dim=-1, dtype=torch.float32).to(query.dtype)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "matmul_37", + "op": "aten.matmul.default", + "args": [ + { + "tensor": "softmax_18" + }, + { + "tensor": "slice_133" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 626, in eager_attention_forward\n attn_output = torch.matmul(attn_weights, value_states)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_94", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "matmul_37" + }, + 1, + 2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 627, in eager_attention_forward\n attn_output = attn_output.transpose(1, 2).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "clone_18", + "op": "aten.clone.default", + "args": [ + { + "tensor": "transpose_94" + } + ], + "kwargs": { + "memory_format": { + "memoryFormat": "contiguous_format" + } + }, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 627, in eager_attention_forward\n attn_output = attn_output.transpose(1, 2).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_57", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "clone_18" + } + ], + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 972, in forward\n attn_output = torch.cat(attn_outputs, dim=1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "view_42", + "op": "aten.view.default", + "args": [ + { + "tensor": "cat_57" + }, + [ + 384, + -1 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 974, in forward\n attn_output = attn_output.reshape(seq_length, -1).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "linear_73", + "op": "aten.linear.default", + "args": [ + { + "tensor": "view_42" + }, + { + "tensor": "p_visual_blocks_18_attn_proj_weight" + }, + { + "tensor": "p_visual_blocks_18_attn_proj_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 975, in forward\n attn_output = self.proj(attn_output)\n ^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_75", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "add_72" + }, + { + "tensor": "linear_73" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "layer_norm_37", + "op": "aten.layer_norm.default", + "args": [ + { + "tensor": "add_75" + }, + [ + 1024 + ], + { + "tensor": "p_visual_blocks_18_norm2_weight" + }, + { + "tensor": "p_visual_blocks_18_norm2_bias" + }, + 1e-06, + false + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "linear_74", + "op": "aten.linear.default", + "args": [ + { + "tensor": "layer_norm_37" + }, + { + "tensor": "p_visual_blocks_18_mlp_linear_fc1_weight" + }, + { + "tensor": "p_visual_blocks_18_mlp_linear_fc1_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "gelu_18", + "op": "aten.gelu.default", + "args": [ + { + "tensor": "linear_74" + } + ], + "kwargs": { + "approximate": "tanh" + }, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/activations.py\", line 51, in forward\n return self.act(input)\n ^^^^^^^^^^^^^^^" + }, + { + "id": "linear_75", + "op": "aten.linear.default", + "args": [ + { + "tensor": "gelu_18" + }, + { + "tensor": "p_visual_blocks_18_mlp_linear_fc2_weight" + }, + { + "tensor": "p_visual_blocks_18_mlp_linear_fc2_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_76", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "add_75" + }, + { + "tensor": "linear_75" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "layer_norm_38", + "op": "aten.layer_norm.default", + "args": [ + { + "tensor": "add_76" + }, + [ + 1024 + ], + { + "tensor": "p_visual_blocks_19_norm1_weight" + }, + { + "tensor": "p_visual_blocks_19_norm1_bias" + }, + 1e-06, + false + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1000, in forward\n self.norm1(hidden_states)," + }, + { + "id": "linear_76", + "op": "aten.linear.default", + "args": [ + { + "tensor": "layer_norm_38" + }, + { + "tensor": "p_visual_blocks_19_attn_qkv_weight" + }, + { + "tensor": "p_visual_blocks_19_attn_qkv_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "view_43", + "op": "aten.view.default", + "args": [ + { + "tensor": "linear_76" + }, + [ + 384, + 3, + 16, + -1 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "permute_19", + "op": "aten.permute.default", + "args": [ + { + "tensor": "view_43" + }, + [ + 1, + 0, + 2, + 3 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_57", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_19" + }, + 0, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_58", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_19" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_59", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_19" + }, + 0, + 2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "unsqueeze_97", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "cos" + }, + -2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 888, in apply_rotary_pos_emb_vision\n cos, sin = cos.unsqueeze(-2).float(), sin.unsqueeze(-2).float()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_98", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "sin" + }, + -2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 888, in apply_rotary_pos_emb_vision\n cos, sin = cos.unsqueeze(-2).float(), sin.unsqueeze(-2).float()\n ^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_97", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "select_57" + }, + { + "tensor": "unsqueeze_97" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_134", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_57" + }, + 2, + 0, + 32 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 551, in rotate_half\n x1 = x[..., : x.shape[-1] // 2]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_135", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_57" + }, + 2, + 32, + 9223372036854775807 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 552, in rotate_half\n x2 = x[..., x.shape[-1] // 2 :]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "neg_38", + "op": "aten.neg.default", + "args": [ + { + "tensor": "slice_135" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_58", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "neg_38" + }, + { + "tensor": "slice_134" + } + ], + -1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_98", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "cat_58" + }, + { + "tensor": "unsqueeze_98" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_77", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "mul_97" + }, + { + "tensor": "mul_98" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_99", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "select_58" + }, + { + "tensor": "unsqueeze_97" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_136", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_58" + }, + 2, + 0, + 32 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 551, in rotate_half\n x1 = x[..., : x.shape[-1] // 2]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_137", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_58" + }, + 2, + 32, + 9223372036854775807 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 552, in rotate_half\n x2 = x[..., x.shape[-1] // 2 :]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "neg_39", + "op": "aten.neg.default", + "args": [ + { + "tensor": "slice_137" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_59", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "neg_39" + }, + { + "tensor": "slice_136" + } + ], + -1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_100", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "cat_59" + }, + { + "tensor": "unsqueeze_98" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_78", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "mul_99" + }, + { + "tensor": "mul_100" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_95", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "add_77" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 925, in forward\n query_states = query_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_99", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_95" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 925, in forward\n query_states = query_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_96", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "add_78" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 926, in forward\n key_states = key_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_100", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_96" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 926, in forward\n key_states = key_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_97", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "select_59" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 927, in forward\n value_states = value_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_101", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_97" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 927, in forward\n value_states = value_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_138", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_99" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "slice_139", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_100" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "slice_140", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_101" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "transpose_98", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "slice_139" + }, + 2, + 3 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "matmul_38", + "op": "aten.matmul.default", + "args": [ + { + "tensor": "slice_138" + }, + { + "tensor": "transpose_98" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_101", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "matmul_38" + }, + 0.125 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "softmax_19", + "op": "aten.softmax.int", + "args": [ + { + "tensor": "mul_101" + }, + -1, + { + "dtype": "float32" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 624, in eager_attention_forward\n attn_weights = nn.functional.softmax(attn_weights, dim=-1, dtype=torch.float32).to(query.dtype)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "matmul_39", + "op": "aten.matmul.default", + "args": [ + { + "tensor": "softmax_19" + }, + { + "tensor": "slice_140" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 626, in eager_attention_forward\n attn_output = torch.matmul(attn_weights, value_states)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_99", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "matmul_39" + }, + 1, + 2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 627, in eager_attention_forward\n attn_output = attn_output.transpose(1, 2).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "clone_19", + "op": "aten.clone.default", + "args": [ + { + "tensor": "transpose_99" + } + ], + "kwargs": { + "memory_format": { + "memoryFormat": "contiguous_format" + } + }, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 627, in eager_attention_forward\n attn_output = attn_output.transpose(1, 2).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_60", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "clone_19" + } + ], + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 972, in forward\n attn_output = torch.cat(attn_outputs, dim=1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "view_44", + "op": "aten.view.default", + "args": [ + { + "tensor": "cat_60" + }, + [ + 384, + -1 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 974, in forward\n attn_output = attn_output.reshape(seq_length, -1).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "linear_77", + "op": "aten.linear.default", + "args": [ + { + "tensor": "view_44" + }, + { + "tensor": "p_visual_blocks_19_attn_proj_weight" + }, + { + "tensor": "p_visual_blocks_19_attn_proj_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 975, in forward\n attn_output = self.proj(attn_output)\n ^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_79", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "add_76" + }, + { + "tensor": "linear_77" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "layer_norm_39", + "op": "aten.layer_norm.default", + "args": [ + { + "tensor": "add_79" + }, + [ + 1024 + ], + { + "tensor": "p_visual_blocks_19_norm2_weight" + }, + { + "tensor": "p_visual_blocks_19_norm2_bias" + }, + 1e-06, + false + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "linear_78", + "op": "aten.linear.default", + "args": [ + { + "tensor": "layer_norm_39" + }, + { + "tensor": "p_visual_blocks_19_mlp_linear_fc1_weight" + }, + { + "tensor": "p_visual_blocks_19_mlp_linear_fc1_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "gelu_19", + "op": "aten.gelu.default", + "args": [ + { + "tensor": "linear_78" + } + ], + "kwargs": { + "approximate": "tanh" + }, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/activations.py\", line 51, in forward\n return self.act(input)\n ^^^^^^^^^^^^^^^" + }, + { + "id": "linear_79", + "op": "aten.linear.default", + "args": [ + { + "tensor": "gelu_19" + }, + { + "tensor": "p_visual_blocks_19_mlp_linear_fc2_weight" + }, + { + "tensor": "p_visual_blocks_19_mlp_linear_fc2_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_80", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "add_79" + }, + { + "tensor": "linear_79" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "layer_norm_40", + "op": "aten.layer_norm.default", + "args": [ + { + "tensor": "add_80" + }, + [ + 1024 + ], + { + "tensor": "p_visual_blocks_20_norm1_weight" + }, + { + "tensor": "p_visual_blocks_20_norm1_bias" + }, + 1e-06, + false + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1000, in forward\n self.norm1(hidden_states)," + }, + { + "id": "linear_80", + "op": "aten.linear.default", + "args": [ + { + "tensor": "layer_norm_40" + }, + { + "tensor": "p_visual_blocks_20_attn_qkv_weight" + }, + { + "tensor": "p_visual_blocks_20_attn_qkv_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "view_45", + "op": "aten.view.default", + "args": [ + { + "tensor": "linear_80" + }, + [ + 384, + 3, + 16, + -1 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "permute_20", + "op": "aten.permute.default", + "args": [ + { + "tensor": "view_45" + }, + [ + 1, + 0, + 2, + 3 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_60", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_20" + }, + 0, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_61", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_20" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_62", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_20" + }, + 0, + 2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "unsqueeze_102", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "cos" + }, + -2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 888, in apply_rotary_pos_emb_vision\n cos, sin = cos.unsqueeze(-2).float(), sin.unsqueeze(-2).float()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_103", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "sin" + }, + -2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 888, in apply_rotary_pos_emb_vision\n cos, sin = cos.unsqueeze(-2).float(), sin.unsqueeze(-2).float()\n ^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_102", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "select_60" + }, + { + "tensor": "unsqueeze_102" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_141", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_60" + }, + 2, + 0, + 32 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 551, in rotate_half\n x1 = x[..., : x.shape[-1] // 2]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_142", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_60" + }, + 2, + 32, + 9223372036854775807 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 552, in rotate_half\n x2 = x[..., x.shape[-1] // 2 :]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "neg_40", + "op": "aten.neg.default", + "args": [ + { + "tensor": "slice_142" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_61", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "neg_40" + }, + { + "tensor": "slice_141" + } + ], + -1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_103", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "cat_61" + }, + { + "tensor": "unsqueeze_103" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_81", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "mul_102" + }, + { + "tensor": "mul_103" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_104", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "select_61" + }, + { + "tensor": "unsqueeze_102" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_143", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_61" + }, + 2, + 0, + 32 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 551, in rotate_half\n x1 = x[..., : x.shape[-1] // 2]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_144", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_61" + }, + 2, + 32, + 9223372036854775807 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 552, in rotate_half\n x2 = x[..., x.shape[-1] // 2 :]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "neg_41", + "op": "aten.neg.default", + "args": [ + { + "tensor": "slice_144" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_62", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "neg_41" + }, + { + "tensor": "slice_143" + } + ], + -1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_105", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "cat_62" + }, + { + "tensor": "unsqueeze_103" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_82", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "mul_104" + }, + { + "tensor": "mul_105" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_100", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "add_81" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 925, in forward\n query_states = query_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_104", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_100" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 925, in forward\n query_states = query_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_101", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "add_82" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 926, in forward\n key_states = key_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_105", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_101" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 926, in forward\n key_states = key_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_102", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "select_62" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 927, in forward\n value_states = value_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_106", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_102" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 927, in forward\n value_states = value_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_145", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_104" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "slice_146", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_105" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "slice_147", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_106" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "transpose_103", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "slice_146" + }, + 2, + 3 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "matmul_40", + "op": "aten.matmul.default", + "args": [ + { + "tensor": "slice_145" + }, + { + "tensor": "transpose_103" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_106", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "matmul_40" + }, + 0.125 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "softmax_20", + "op": "aten.softmax.int", + "args": [ + { + "tensor": "mul_106" + }, + -1, + { + "dtype": "float32" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 624, in eager_attention_forward\n attn_weights = nn.functional.softmax(attn_weights, dim=-1, dtype=torch.float32).to(query.dtype)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "matmul_41", + "op": "aten.matmul.default", + "args": [ + { + "tensor": "softmax_20" + }, + { + "tensor": "slice_147" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 626, in eager_attention_forward\n attn_output = torch.matmul(attn_weights, value_states)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_104", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "matmul_41" + }, + 1, + 2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 627, in eager_attention_forward\n attn_output = attn_output.transpose(1, 2).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "clone_20", + "op": "aten.clone.default", + "args": [ + { + "tensor": "transpose_104" + } + ], + "kwargs": { + "memory_format": { + "memoryFormat": "contiguous_format" + } + }, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 627, in eager_attention_forward\n attn_output = attn_output.transpose(1, 2).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_63", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "clone_20" + } + ], + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 972, in forward\n attn_output = torch.cat(attn_outputs, dim=1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "view_46", + "op": "aten.view.default", + "args": [ + { + "tensor": "cat_63" + }, + [ + 384, + -1 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 974, in forward\n attn_output = attn_output.reshape(seq_length, -1).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "linear_81", + "op": "aten.linear.default", + "args": [ + { + "tensor": "view_46" + }, + { + "tensor": "p_visual_blocks_20_attn_proj_weight" + }, + { + "tensor": "p_visual_blocks_20_attn_proj_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 975, in forward\n attn_output = self.proj(attn_output)\n ^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_83", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "add_80" + }, + { + "tensor": "linear_81" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "layer_norm_41", + "op": "aten.layer_norm.default", + "args": [ + { + "tensor": "add_83" + }, + [ + 1024 + ], + { + "tensor": "p_visual_blocks_20_norm2_weight" + }, + { + "tensor": "p_visual_blocks_20_norm2_bias" + }, + 1e-06, + false + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "linear_82", + "op": "aten.linear.default", + "args": [ + { + "tensor": "layer_norm_41" + }, + { + "tensor": "p_visual_blocks_20_mlp_linear_fc1_weight" + }, + { + "tensor": "p_visual_blocks_20_mlp_linear_fc1_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "gelu_20", + "op": "aten.gelu.default", + "args": [ + { + "tensor": "linear_82" + } + ], + "kwargs": { + "approximate": "tanh" + }, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/activations.py\", line 51, in forward\n return self.act(input)\n ^^^^^^^^^^^^^^^" + }, + { + "id": "linear_83", + "op": "aten.linear.default", + "args": [ + { + "tensor": "gelu_20" + }, + { + "tensor": "p_visual_blocks_20_mlp_linear_fc2_weight" + }, + { + "tensor": "p_visual_blocks_20_mlp_linear_fc2_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_84", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "add_83" + }, + { + "tensor": "linear_83" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "layer_norm_42", + "op": "aten.layer_norm.default", + "args": [ + { + "tensor": "add_84" + }, + [ + 1024 + ], + { + "tensor": "p_visual_blocks_21_norm1_weight" + }, + { + "tensor": "p_visual_blocks_21_norm1_bias" + }, + 1e-06, + false + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1000, in forward\n self.norm1(hidden_states)," + }, + { + "id": "linear_84", + "op": "aten.linear.default", + "args": [ + { + "tensor": "layer_norm_42" + }, + { + "tensor": "p_visual_blocks_21_attn_qkv_weight" + }, + { + "tensor": "p_visual_blocks_21_attn_qkv_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "view_47", + "op": "aten.view.default", + "args": [ + { + "tensor": "linear_84" + }, + [ + 384, + 3, + 16, + -1 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "permute_21", + "op": "aten.permute.default", + "args": [ + { + "tensor": "view_47" + }, + [ + 1, + 0, + 2, + 3 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_63", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_21" + }, + 0, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_64", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_21" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_65", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_21" + }, + 0, + 2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "unsqueeze_107", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "cos" + }, + -2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 888, in apply_rotary_pos_emb_vision\n cos, sin = cos.unsqueeze(-2).float(), sin.unsqueeze(-2).float()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_108", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "sin" + }, + -2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 888, in apply_rotary_pos_emb_vision\n cos, sin = cos.unsqueeze(-2).float(), sin.unsqueeze(-2).float()\n ^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_107", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "select_63" + }, + { + "tensor": "unsqueeze_107" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_148", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_63" + }, + 2, + 0, + 32 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 551, in rotate_half\n x1 = x[..., : x.shape[-1] // 2]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_149", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_63" + }, + 2, + 32, + 9223372036854775807 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 552, in rotate_half\n x2 = x[..., x.shape[-1] // 2 :]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "neg_42", + "op": "aten.neg.default", + "args": [ + { + "tensor": "slice_149" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_64", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "neg_42" + }, + { + "tensor": "slice_148" + } + ], + -1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_108", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "cat_64" + }, + { + "tensor": "unsqueeze_108" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_85", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "mul_107" + }, + { + "tensor": "mul_108" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_109", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "select_64" + }, + { + "tensor": "unsqueeze_107" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_150", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_64" + }, + 2, + 0, + 32 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 551, in rotate_half\n x1 = x[..., : x.shape[-1] // 2]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_151", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_64" + }, + 2, + 32, + 9223372036854775807 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 552, in rotate_half\n x2 = x[..., x.shape[-1] // 2 :]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "neg_43", + "op": "aten.neg.default", + "args": [ + { + "tensor": "slice_151" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_65", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "neg_43" + }, + { + "tensor": "slice_150" + } + ], + -1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_110", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "cat_65" + }, + { + "tensor": "unsqueeze_108" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_86", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "mul_109" + }, + { + "tensor": "mul_110" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_105", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "add_85" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 925, in forward\n query_states = query_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_109", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_105" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 925, in forward\n query_states = query_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_106", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "add_86" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 926, in forward\n key_states = key_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_110", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_106" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 926, in forward\n key_states = key_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_107", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "select_65" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 927, in forward\n value_states = value_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_111", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_107" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 927, in forward\n value_states = value_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_152", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_109" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "slice_153", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_110" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "slice_154", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_111" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "transpose_108", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "slice_153" + }, + 2, + 3 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "matmul_42", + "op": "aten.matmul.default", + "args": [ + { + "tensor": "slice_152" + }, + { + "tensor": "transpose_108" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_111", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "matmul_42" + }, + 0.125 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "softmax_21", + "op": "aten.softmax.int", + "args": [ + { + "tensor": "mul_111" + }, + -1, + { + "dtype": "float32" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 624, in eager_attention_forward\n attn_weights = nn.functional.softmax(attn_weights, dim=-1, dtype=torch.float32).to(query.dtype)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "matmul_43", + "op": "aten.matmul.default", + "args": [ + { + "tensor": "softmax_21" + }, + { + "tensor": "slice_154" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 626, in eager_attention_forward\n attn_output = torch.matmul(attn_weights, value_states)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_109", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "matmul_43" + }, + 1, + 2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 627, in eager_attention_forward\n attn_output = attn_output.transpose(1, 2).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "clone_21", + "op": "aten.clone.default", + "args": [ + { + "tensor": "transpose_109" + } + ], + "kwargs": { + "memory_format": { + "memoryFormat": "contiguous_format" + } + }, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 627, in eager_attention_forward\n attn_output = attn_output.transpose(1, 2).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_66", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "clone_21" + } + ], + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 972, in forward\n attn_output = torch.cat(attn_outputs, dim=1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "view_48", + "op": "aten.view.default", + "args": [ + { + "tensor": "cat_66" + }, + [ + 384, + -1 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 974, in forward\n attn_output = attn_output.reshape(seq_length, -1).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "linear_85", + "op": "aten.linear.default", + "args": [ + { + "tensor": "view_48" + }, + { + "tensor": "p_visual_blocks_21_attn_proj_weight" + }, + { + "tensor": "p_visual_blocks_21_attn_proj_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 975, in forward\n attn_output = self.proj(attn_output)\n ^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_87", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "add_84" + }, + { + "tensor": "linear_85" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "layer_norm_43", + "op": "aten.layer_norm.default", + "args": [ + { + "tensor": "add_87" + }, + [ + 1024 + ], + { + "tensor": "p_visual_blocks_21_norm2_weight" + }, + { + "tensor": "p_visual_blocks_21_norm2_bias" + }, + 1e-06, + false + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "linear_86", + "op": "aten.linear.default", + "args": [ + { + "tensor": "layer_norm_43" + }, + { + "tensor": "p_visual_blocks_21_mlp_linear_fc1_weight" + }, + { + "tensor": "p_visual_blocks_21_mlp_linear_fc1_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "gelu_21", + "op": "aten.gelu.default", + "args": [ + { + "tensor": "linear_86" + } + ], + "kwargs": { + "approximate": "tanh" + }, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/activations.py\", line 51, in forward\n return self.act(input)\n ^^^^^^^^^^^^^^^" + }, + { + "id": "linear_87", + "op": "aten.linear.default", + "args": [ + { + "tensor": "gelu_21" + }, + { + "tensor": "p_visual_blocks_21_mlp_linear_fc2_weight" + }, + { + "tensor": "p_visual_blocks_21_mlp_linear_fc2_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_88", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "add_87" + }, + { + "tensor": "linear_87" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "layer_norm_44", + "op": "aten.layer_norm.default", + "args": [ + { + "tensor": "add_88" + }, + [ + 1024 + ], + { + "tensor": "p_visual_blocks_22_norm1_weight" + }, + { + "tensor": "p_visual_blocks_22_norm1_bias" + }, + 1e-06, + false + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1000, in forward\n self.norm1(hidden_states)," + }, + { + "id": "linear_88", + "op": "aten.linear.default", + "args": [ + { + "tensor": "layer_norm_44" + }, + { + "tensor": "p_visual_blocks_22_attn_qkv_weight" + }, + { + "tensor": "p_visual_blocks_22_attn_qkv_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "view_49", + "op": "aten.view.default", + "args": [ + { + "tensor": "linear_88" + }, + [ + 384, + 3, + 16, + -1 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "permute_22", + "op": "aten.permute.default", + "args": [ + { + "tensor": "view_49" + }, + [ + 1, + 0, + 2, + 3 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_66", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_22" + }, + 0, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_67", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_22" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_68", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_22" + }, + 0, + 2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "unsqueeze_112", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "cos" + }, + -2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 888, in apply_rotary_pos_emb_vision\n cos, sin = cos.unsqueeze(-2).float(), sin.unsqueeze(-2).float()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_113", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "sin" + }, + -2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 888, in apply_rotary_pos_emb_vision\n cos, sin = cos.unsqueeze(-2).float(), sin.unsqueeze(-2).float()\n ^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_112", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "select_66" + }, + { + "tensor": "unsqueeze_112" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_155", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_66" + }, + 2, + 0, + 32 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 551, in rotate_half\n x1 = x[..., : x.shape[-1] // 2]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_156", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_66" + }, + 2, + 32, + 9223372036854775807 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 552, in rotate_half\n x2 = x[..., x.shape[-1] // 2 :]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "neg_44", + "op": "aten.neg.default", + "args": [ + { + "tensor": "slice_156" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_67", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "neg_44" + }, + { + "tensor": "slice_155" + } + ], + -1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_113", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "cat_67" + }, + { + "tensor": "unsqueeze_113" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_89", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "mul_112" + }, + { + "tensor": "mul_113" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_114", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "select_67" + }, + { + "tensor": "unsqueeze_112" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_157", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_67" + }, + 2, + 0, + 32 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 551, in rotate_half\n x1 = x[..., : x.shape[-1] // 2]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_158", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_67" + }, + 2, + 32, + 9223372036854775807 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 552, in rotate_half\n x2 = x[..., x.shape[-1] // 2 :]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "neg_45", + "op": "aten.neg.default", + "args": [ + { + "tensor": "slice_158" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_68", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "neg_45" + }, + { + "tensor": "slice_157" + } + ], + -1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_115", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "cat_68" + }, + { + "tensor": "unsqueeze_113" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_90", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "mul_114" + }, + { + "tensor": "mul_115" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_110", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "add_89" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 925, in forward\n query_states = query_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_114", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_110" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 925, in forward\n query_states = query_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_111", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "add_90" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 926, in forward\n key_states = key_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_115", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_111" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 926, in forward\n key_states = key_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_112", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "select_68" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 927, in forward\n value_states = value_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_116", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_112" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 927, in forward\n value_states = value_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_159", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_114" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "slice_160", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_115" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "slice_161", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_116" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "transpose_113", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "slice_160" + }, + 2, + 3 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "matmul_44", + "op": "aten.matmul.default", + "args": [ + { + "tensor": "slice_159" + }, + { + "tensor": "transpose_113" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_116", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "matmul_44" + }, + 0.125 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "softmax_22", + "op": "aten.softmax.int", + "args": [ + { + "tensor": "mul_116" + }, + -1, + { + "dtype": "float32" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 624, in eager_attention_forward\n attn_weights = nn.functional.softmax(attn_weights, dim=-1, dtype=torch.float32).to(query.dtype)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "matmul_45", + "op": "aten.matmul.default", + "args": [ + { + "tensor": "softmax_22" + }, + { + "tensor": "slice_161" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 626, in eager_attention_forward\n attn_output = torch.matmul(attn_weights, value_states)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_114", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "matmul_45" + }, + 1, + 2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 627, in eager_attention_forward\n attn_output = attn_output.transpose(1, 2).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "clone_22", + "op": "aten.clone.default", + "args": [ + { + "tensor": "transpose_114" + } + ], + "kwargs": { + "memory_format": { + "memoryFormat": "contiguous_format" + } + }, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 627, in eager_attention_forward\n attn_output = attn_output.transpose(1, 2).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_69", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "clone_22" + } + ], + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 972, in forward\n attn_output = torch.cat(attn_outputs, dim=1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "view_50", + "op": "aten.view.default", + "args": [ + { + "tensor": "cat_69" + }, + [ + 384, + -1 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 974, in forward\n attn_output = attn_output.reshape(seq_length, -1).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "linear_89", + "op": "aten.linear.default", + "args": [ + { + "tensor": "view_50" + }, + { + "tensor": "p_visual_blocks_22_attn_proj_weight" + }, + { + "tensor": "p_visual_blocks_22_attn_proj_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 975, in forward\n attn_output = self.proj(attn_output)\n ^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_91", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "add_88" + }, + { + "tensor": "linear_89" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "layer_norm_45", + "op": "aten.layer_norm.default", + "args": [ + { + "tensor": "add_91" + }, + [ + 1024 + ], + { + "tensor": "p_visual_blocks_22_norm2_weight" + }, + { + "tensor": "p_visual_blocks_22_norm2_bias" + }, + 1e-06, + false + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "linear_90", + "op": "aten.linear.default", + "args": [ + { + "tensor": "layer_norm_45" + }, + { + "tensor": "p_visual_blocks_22_mlp_linear_fc1_weight" + }, + { + "tensor": "p_visual_blocks_22_mlp_linear_fc1_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "gelu_22", + "op": "aten.gelu.default", + "args": [ + { + "tensor": "linear_90" + } + ], + "kwargs": { + "approximate": "tanh" + }, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/activations.py\", line 51, in forward\n return self.act(input)\n ^^^^^^^^^^^^^^^" + }, + { + "id": "linear_91", + "op": "aten.linear.default", + "args": [ + { + "tensor": "gelu_22" + }, + { + "tensor": "p_visual_blocks_22_mlp_linear_fc2_weight" + }, + { + "tensor": "p_visual_blocks_22_mlp_linear_fc2_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_92", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "add_91" + }, + { + "tensor": "linear_91" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "layer_norm_46", + "op": "aten.layer_norm.default", + "args": [ + { + "tensor": "add_92" + }, + [ + 1024 + ], + { + "tensor": "p_visual_blocks_23_norm1_weight" + }, + { + "tensor": "p_visual_blocks_23_norm1_bias" + }, + 1e-06, + false + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1000, in forward\n self.norm1(hidden_states)," + }, + { + "id": "linear_92", + "op": "aten.linear.default", + "args": [ + { + "tensor": "layer_norm_46" + }, + { + "tensor": "p_visual_blocks_23_attn_qkv_weight" + }, + { + "tensor": "p_visual_blocks_23_attn_qkv_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "view_51", + "op": "aten.view.default", + "args": [ + { + "tensor": "linear_92" + }, + [ + 384, + 3, + 16, + -1 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "permute_23", + "op": "aten.permute.default", + "args": [ + { + "tensor": "view_51" + }, + [ + 1, + 0, + 2, + 3 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_69", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_23" + }, + 0, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_70", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_23" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "select_71", + "op": "aten.select.int", + "args": [ + { + "tensor": "permute_23" + }, + 0, + 2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 920, in forward\n self.qkv(hidden_states).reshape(seq_length, 3, self.num_heads, -1).permute(1, 0, 2, 3).unbind(0)" + }, + { + "id": "unsqueeze_117", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "cos" + }, + -2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 888, in apply_rotary_pos_emb_vision\n cos, sin = cos.unsqueeze(-2).float(), sin.unsqueeze(-2).float()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_118", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "sin" + }, + -2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 888, in apply_rotary_pos_emb_vision\n cos, sin = cos.unsqueeze(-2).float(), sin.unsqueeze(-2).float()\n ^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_117", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "select_69" + }, + { + "tensor": "unsqueeze_117" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_162", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_69" + }, + 2, + 0, + 32 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 551, in rotate_half\n x1 = x[..., : x.shape[-1] // 2]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_163", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_69" + }, + 2, + 32, + 9223372036854775807 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 552, in rotate_half\n x2 = x[..., x.shape[-1] // 2 :]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "neg_46", + "op": "aten.neg.default", + "args": [ + { + "tensor": "slice_163" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_70", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "neg_46" + }, + { + "tensor": "slice_162" + } + ], + -1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_118", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "cat_70" + }, + { + "tensor": "unsqueeze_118" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_93", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "mul_117" + }, + { + "tensor": "mul_118" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 889, in apply_rotary_pos_emb_vision\n q_embed = (q * cos) + (rotate_half(q) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_119", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "select_70" + }, + { + "tensor": "unsqueeze_117" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_164", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_70" + }, + 2, + 0, + 32 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 551, in rotate_half\n x1 = x[..., : x.shape[-1] // 2]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_165", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "select_70" + }, + 2, + 32, + 9223372036854775807 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 552, in rotate_half\n x2 = x[..., x.shape[-1] // 2 :]\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "neg_47", + "op": "aten.neg.default", + "args": [ + { + "tensor": "slice_165" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_71", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "neg_47" + }, + { + "tensor": "slice_164" + } + ], + -1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 553, in rotate_half\n return torch.cat((-x2, x1), dim=-1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_120", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "cat_71" + }, + { + "tensor": "unsqueeze_118" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_94", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "mul_119" + }, + { + "tensor": "mul_120" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 923, in forward\n query_states, key_states = apply_rotary_pos_emb_vision(query_states, key_states, cos, sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 890, in apply_rotary_pos_emb_vision\n k_embed = (k * cos) + (rotate_half(k) * sin)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_115", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "add_93" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 925, in forward\n query_states = query_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_119", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_115" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 925, in forward\n query_states = query_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_116", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "add_94" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 926, in forward\n key_states = key_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_120", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_116" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 926, in forward\n key_states = key_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_117", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "select_71" + }, + 0, + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 927, in forward\n value_states = value_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "unsqueeze_121", + "op": "aten.unsqueeze.default", + "args": [ + { + "tensor": "transpose_117" + }, + 0 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 927, in forward\n value_states = value_states.transpose(0, 1).unsqueeze(0)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "slice_166", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_119" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "slice_167", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_120" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "slice_168", + "op": "aten.slice.Tensor", + "args": [ + { + "tensor": "unsqueeze_121" + }, + 2, + 0, + 384 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 954, in forward\n splits = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 955, in \n torch.split(tensor, lengths.tolist(), dim=2) for tensor in (query_states, key_states, value_states)" + }, + { + "id": "transpose_118", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "slice_167" + }, + 2, + 3 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "matmul_46", + "op": "aten.matmul.default", + "args": [ + { + "tensor": "slice_166" + }, + { + "tensor": "transpose_118" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "mul_121", + "op": "aten.mul.Tensor", + "args": [ + { + "tensor": "matmul_46" + }, + 0.125 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 620, in eager_attention_forward\n attn_weights = torch.matmul(query, key_states.transpose(2, 3)) * scaling\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "softmax_23", + "op": "aten.softmax.int", + "args": [ + { + "tensor": "mul_121" + }, + -1, + { + "dtype": "float32" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 624, in eager_attention_forward\n attn_weights = nn.functional.softmax(attn_weights, dim=-1, dtype=torch.float32).to(query.dtype)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "matmul_47", + "op": "aten.matmul.default", + "args": [ + { + "tensor": "softmax_23" + }, + { + "tensor": "slice_168" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 626, in eager_attention_forward\n attn_output = torch.matmul(attn_weights, value_states)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "transpose_119", + "op": "aten.transpose.int", + "args": [ + { + "tensor": "matmul_47" + }, + 1, + 2 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 627, in eager_attention_forward\n attn_output = attn_output.transpose(1, 2).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "clone_23", + "op": "aten.clone.default", + "args": [ + { + "tensor": "transpose_119" + } + ], + "kwargs": { + "memory_format": { + "memoryFormat": "contiguous_format" + } + }, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 958, in forward\n attn_outputs = [\n ^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 959, in \n attention_interface(\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 627, in eager_attention_forward\n attn_output = attn_output.transpose(1, 2).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "cat_72", + "op": "aten.cat.default", + "args": [ + [ + { + "tensor": "clone_23" + } + ], + 1 + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 972, in forward\n attn_output = torch.cat(attn_outputs, dim=1)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "view_52", + "op": "aten.view.default", + "args": [ + { + "tensor": "cat_72" + }, + [ + 384, + -1 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 974, in forward\n attn_output = attn_output.reshape(seq_length, -1).contiguous()\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "linear_93", + "op": "aten.linear.default", + "args": [ + { + "tensor": "view_52" + }, + { + "tensor": "p_visual_blocks_23_attn_proj_weight" + }, + { + "tensor": "p_visual_blocks_23_attn_proj_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 975, in forward\n attn_output = self.proj(attn_output)\n ^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_95", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "add_92" + }, + { + "tensor": "linear_93" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 999, in forward\n hidden_states = hidden_states + self.attn(\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "layer_norm_47", + "op": "aten.layer_norm.default", + "args": [ + { + "tensor": "add_95" + }, + [ + 1024 + ], + { + "tensor": "p_visual_blocks_23_norm2_weight" + }, + { + "tensor": "p_visual_blocks_23_norm2_bias" + }, + 1e-06, + false + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "linear_94", + "op": "aten.linear.default", + "args": [ + { + "tensor": "layer_norm_47" + }, + { + "tensor": "p_visual_blocks_23_mlp_linear_fc1_weight" + }, + { + "tensor": "p_visual_blocks_23_mlp_linear_fc1_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "gelu_23", + "op": "aten.gelu.default", + "args": [ + { + "tensor": "linear_94" + } + ], + "kwargs": { + "approximate": "tanh" + }, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/activations.py\", line 51, in forward\n return self.act(input)\n ^^^^^^^^^^^^^^^" + }, + { + "id": "linear_95", + "op": "aten.linear.default", + "args": [ + { + "tensor": "gelu_23" + }, + { + "tensor": "p_visual_blocks_23_mlp_linear_fc2_weight" + }, + { + "tensor": "p_visual_blocks_23_mlp_linear_fc2_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 843, in forward\n return self.linear_fc2(self.act_fn(self.linear_fc1(hidden_state)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "add_96", + "op": "aten.add.Tensor", + "args": [ + { + "tensor": "add_95" + }, + { + "tensor": "linear_95" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1108, in forward\n hidden_states = blk(\n ^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/modeling_layers.py\", line 114, in __call__\n return super().__call__(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1005, in forward\n hidden_states = hidden_states + self.mlp(self.norm2(hidden_states))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "layer_norm_48", + "op": "aten.layer_norm.default", + "args": [ + { + "tensor": "add_96" + }, + [ + 1024 + ], + { + "tensor": "p_visual_merger_norm_weight" + }, + { + "tensor": "p_visual_merger_norm_bias" + }, + 1e-06, + false + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1116, in forward\n merged_hidden_states = self.merger(hidden_states)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 877, in forward\n x = self.norm(x.view(-1, self.hidden_size) if self.use_postshuffle_norm else x).view(-1, self.hidden_size)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "view_53", + "op": "aten.view.default", + "args": [ + { + "tensor": "layer_norm_48" + }, + [ + -1, + 4096 + ] + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1116, in forward\n merged_hidden_states = self.merger(hidden_states)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 877, in forward\n x = self.norm(x.view(-1, self.hidden_size) if self.use_postshuffle_norm else x).view(-1, self.hidden_size)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "linear_96", + "op": "aten.linear.default", + "args": [ + { + "tensor": "view_53" + }, + { + "tensor": "p_visual_merger_linear_fc1_weight" + }, + { + "tensor": "p_visual_merger_linear_fc1_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1116, in forward\n merged_hidden_states = self.merger(hidden_states)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 878, in forward\n x = self.linear_fc2(self.act_fn(self.linear_fc1(x)))\n ^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "gelu_24", + "op": "aten.gelu.default", + "args": [ + { + "tensor": "linear_96" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1116, in forward\n merged_hidden_states = self.merger(hidden_states)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 878, in forward\n x = self.linear_fc2(self.act_fn(self.linear_fc1(x)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + }, + { + "id": "linear_97", + "op": "aten.linear.default", + "args": [ + { + "tensor": "gelu_24" + }, + { + "tensor": "p_visual_merger_linear_fc2_weight" + }, + { + "tensor": "p_visual_merger_linear_fc2_bias" + } + ], + "kwargs": {}, + "source": "File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/torch/_dynamo/functional_export.py\", line 243, in forward\n res = self._export_root(*args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/python/webtorch/adapters/qwen35.py\", line 217, in forward\n output = self.visual(pixels, self.grid, interp_indices=self.indices,\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/generic.py\", line 1068, in wrapper\n output = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/utils/output_capturing.py\", line 262, in wrapper\n outputs = func(self, *args, **kwargs)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 1116, in forward\n merged_hidden_states = self.merger(hidden_states)\n ^^^^^^^^^^^^^^^^^^^^^^^^^^\n File \"/Users/reserve/Workspace/webtorch/.venv/lib/python3.11/site-packages/transformers/models/qwen3_5/modeling_qwen3_5.py\", line 878, in forward\n x = self.linear_fc2(self.act_fn(self.linear_fc1(x)))\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" + } + ], + "quantization": [], + "states": [], + "dispatches": [ + { + "node": "view", + "inputs": [ + "pixels" + ], + "output": "view", + "workgroups": [ + 9216, + 1, + 1 + ], + "kernel": "kernels/0fea7aef3ec78ffbd5681389865cf0b7353282f19c0a762f934b4172577a78c4.wgsl" + }, + { + "node": "conv3d", + "inputs": [ + "p_visual_patch_embed_proj_bias", + "view", + "p_visual_patch_embed_proj_weight" + ], + "output": "conv3d", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9db4c2c94f75f5c4115cb8feb1a8cd11983aec6cbc83cd32e0adf3e4ff1e8170.wgsl" + }, + { + "node": "view_1", + "inputs": [ + "conv3d" + ], + "output": "view_1", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "embedding", + "inputs": [ + "b_indices", + "p_visual_pos_embed_weight" + ], + "output": "embedding", + "workgroups": [ + 24576, + 1, + 1 + ], + "kernel": "kernels/9786d0e3c6b2a9b8e93300c2e83f878db6eefd21dd726b3d0aa29056f8c36f88.wgsl" + }, + { + "node": "unsqueeze", + "inputs": [ + "b_interpolation_weights" + ], + "output": "unsqueeze", + "workgroups": [ + 24, + 1, + 1 + ], + "kernel": "kernels/0b698140a8774709ca7d2b76068766e5d37a5f74acf8cb585f24a492ec1fcf57.wgsl" + }, + { + "node": "mul", + "inputs": [ + "embedding", + "unsqueeze" + ], + "output": "mul", + "workgroups": [ + 24576, + 1, + 1 + ], + "kernel": "kernels/e3a1c9042fe912fa7919f3f05060163ffbf8185b5f3b5ca6380f2f98cea271e5.wgsl" + }, + { + "node": "sum_1", + "inputs": [ + "mul" + ], + "output": "sum_1", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/d2647191b382422388eca1d8802a863d6cb9bceef360c9b547a6b87e24096ddc.wgsl" + }, + { + "node": "add", + "inputs": [ + "view_1", + "sum_1" + ], + "output": "add", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "unsqueeze_1", + "inputs": [ + "b_positions" + ], + "output": "unsqueeze_1", + "workgroups": [ + 12, + 1, + 1 + ], + "kernel": "kernels/e9715b8b7b2dce5750156287237b7a33a0a510bb3352adc1254931db30110ab7.wgsl" + }, + { + "node": "mul_1", + "inputs": [ + "unsqueeze_1", + "b_visual_rotary_pos_emb_inv_freq" + ], + "output": "mul_1", + "workgroups": [ + 192, + 1, + 1 + ], + "kernel": "kernels/8abc739750c5e19fa9f4ee8e115a7c692ab7762bfa843ea0588fee30a9f63836.wgsl" + }, + { + "node": "view_2", + "inputs": [ + "mul_1" + ], + "output": "view_2", + "workgroups": [ + 192, + 1, + 1 + ], + "kernel": "kernels/96e689b0b209d9fddfdc31e43473208ce4ab25371a73a20df003aaf62a35fccd.wgsl" + }, + { + "node": "view_3", + "inputs": [ + "add" + ], + "output": "view_3", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "view_4", + "inputs": [ + "view_2" + ], + "output": "view_4", + "workgroups": [ + 192, + 1, + 1 + ], + "kernel": "kernels/96e689b0b209d9fddfdc31e43473208ce4ab25371a73a20df003aaf62a35fccd.wgsl" + }, + { + "node": "cat", + "inputs": [ + "view_4" + ], + "output": "cat", + "workgroups": [ + 384, + 1, + 1 + ], + "kernel": "kernels/d633e5bd6bfa720f53f67e63286160d50743e5db4ecb52fcb8fc38e9d47b80fb.wgsl" + }, + { + "node": "cos", + "inputs": [ + "cat" + ], + "output": "cos", + "workgroups": [ + 384, + 1, + 1 + ], + "kernel": "kernels/3f456e017dd363441267ad210f064a656b4a7462e00e4dcffa34faeae391e02c.wgsl" + }, + { + "node": "sin", + "inputs": [ + "cat" + ], + "output": "sin", + "workgroups": [ + 384, + 1, + 1 + ], + "kernel": "kernels/f2bd6d21f4f83e883527acaf6fac4beb41ef041a882a33a9ea14608f386a1268.wgsl" + }, + { + "node": "layer_norm", + "inputs": [ + "view_3", + "p_visual_blocks_0_norm1_weight", + "p_visual_blocks_0_norm1_bias" + ], + "output": "layer_norm", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/13bcf8d207e7732db735911a6b01201a40428d9f90a835424287d741980d0477.wgsl" + }, + { + "node": "linear", + "inputs": [ + "layer_norm", + "p_visual_blocks_0_attn_qkv_weight", + "p_visual_blocks_0_attn_qkv_bias" + ], + "output": "linear", + "workgroups": [ + 384, + 48, + 1 + ], + "kernel": "kernels/dba4024ae699580d26c2a885b514feb3c8588bb7a4c7d95b36549d7d659aa585.wgsl" + }, + { + "node": "view_5", + "inputs": [ + "linear" + ], + "output": "view_5", + "workgroups": [ + 18432, + 1, + 1 + ], + "kernel": "kernels/aa4338d1d1db5ac8a6118b17c86acc608c6e0d04c15bfa03f804239b25a9e0b8.wgsl" + }, + { + "node": "permute", + "inputs": [ + "view_5" + ], + "output": "permute", + "workgroups": [ + 18432, + 1, + 1 + ], + "kernel": "kernels/43d939664a4898e8f9c04ba1dd333e6362d7bee1f0456b0af948d44eb3c8bf69.wgsl" + }, + { + "node": "select", + "inputs": [ + "permute" + ], + "output": "select", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/bf0b301adba19cff55fabb374d25f7a4d0a19137bf03c230bacedf36aefe0cf7.wgsl" + }, + { + "node": "select_1", + "inputs": [ + "permute" + ], + "output": "select_1", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/3c0b9a1663ed41b254264c799f5e37cbfd75209c8a1f8be9437bd7fb83fc38d1.wgsl" + }, + { + "node": "select_2", + "inputs": [ + "permute" + ], + "output": "select_2", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/a8bb5542d2f9b9f034f69ca618344f167111d00b9a33029671cb28071030050f.wgsl" + }, + { + "node": "unsqueeze_2", + "inputs": [ + "cos" + ], + "output": "unsqueeze_2", + "workgroups": [ + 384, + 1, + 1 + ], + "kernel": "kernels/8898353d0c367a3982a48d416f6777c3ce7a854572eeaf55843f3e7ee458c65d.wgsl" + }, + { + "node": "unsqueeze_3", + "inputs": [ + "sin" + ], + "output": "unsqueeze_3", + "workgroups": [ + 384, + 1, + 1 + ], + "kernel": "kernels/8898353d0c367a3982a48d416f6777c3ce7a854572eeaf55843f3e7ee458c65d.wgsl" + }, + { + "node": "mul_2", + "inputs": [ + "select", + "unsqueeze_2" + ], + "output": "mul_2", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "slice_1", + "inputs": [ + "select" + ], + "output": "slice_1", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/8980fed160483970508ad7c086f577b51f2b9c3979a00a70776bd65014fc9ccb.wgsl" + }, + { + "node": "slice_2", + "inputs": [ + "select" + ], + "output": "slice_2", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2f9ddba9feddcad74fa4a71c8fc02b4b3180c81a6a722f23ceeb94d2dac47b79.wgsl" + }, + { + "node": "neg", + "inputs": [ + "slice_2" + ], + "output": "neg", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2560bc16afb7b24fa8159af43aa0e509517ac7487bd3dc4e91697682ab604494.wgsl" + }, + { + "node": "cat_1", + "inputs": [ + "neg", + "slice_1" + ], + "output": "cat_1", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/2303343653b8442a4c17bedfc99130a7d627720f65d72cb7b639124717225342.wgsl" + }, + { + "node": "mul_3", + "inputs": [ + "cat_1", + "unsqueeze_3" + ], + "output": "mul_3", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "add_1", + "inputs": [ + "mul_2", + "mul_3" + ], + "output": "add_1", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "mul_4", + "inputs": [ + "select_1", + "unsqueeze_2" + ], + "output": "mul_4", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "slice_3", + "inputs": [ + "select_1" + ], + "output": "slice_3", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/8980fed160483970508ad7c086f577b51f2b9c3979a00a70776bd65014fc9ccb.wgsl" + }, + { + "node": "slice_4", + "inputs": [ + "select_1" + ], + "output": "slice_4", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2f9ddba9feddcad74fa4a71c8fc02b4b3180c81a6a722f23ceeb94d2dac47b79.wgsl" + }, + { + "node": "neg_1", + "inputs": [ + "slice_4" + ], + "output": "neg_1", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2560bc16afb7b24fa8159af43aa0e509517ac7487bd3dc4e91697682ab604494.wgsl" + }, + { + "node": "cat_2", + "inputs": [ + "neg_1", + "slice_3" + ], + "output": "cat_2", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/2303343653b8442a4c17bedfc99130a7d627720f65d72cb7b639124717225342.wgsl" + }, + { + "node": "mul_5", + "inputs": [ + "cat_2", + "unsqueeze_3" + ], + "output": "mul_5", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "add_2", + "inputs": [ + "mul_4", + "mul_5" + ], + "output": "add_2", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "transpose", + "inputs": [ + "add_1" + ], + "output": "transpose", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_4", + "inputs": [ + "transpose" + ], + "output": "unsqueeze_4", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "transpose_1", + "inputs": [ + "add_2" + ], + "output": "transpose_1", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_5", + "inputs": [ + "transpose_1" + ], + "output": "unsqueeze_5", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "transpose_2", + "inputs": [ + "select_2" + ], + "output": "transpose_2", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_6", + "inputs": [ + "transpose_2" + ], + "output": "unsqueeze_6", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "slice_5", + "inputs": [ + "unsqueeze_4" + ], + "output": "slice_5", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "slice_6", + "inputs": [ + "unsqueeze_5" + ], + "output": "slice_6", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "slice_7", + "inputs": [ + "unsqueeze_6" + ], + "output": "slice_7", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "transpose_3", + "inputs": [ + "slice_6" + ], + "output": "transpose_3", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/78da066223c17c00b73f3f0437cb9cb82a1265761ad2d76ba4fdba9755d9a3af.wgsl" + }, + { + "node": "matmul", + "inputs": [ + "slice_5", + "transpose_3" + ], + "output": "matmul", + "workgroups": [ + 36864, + 1, + 1 + ], + "kernel": "kernels/458bf9f5b442f2d9df5267b054e0f412be6e1dd51def1e238871999aa48752de.wgsl" + }, + { + "node": "mul_6", + "inputs": [ + "matmul" + ], + "output": "mul_6", + "workgroups": [ + 36864, + 1, + 1 + ], + "kernel": "kernels/e075bc3ef90433a5223d55b1147384e7d4aa10ed5ec6519ed674279f26217ac5.wgsl" + }, + { + "node": "softmax", + "inputs": [ + "mul_6" + ], + "output": "softmax", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/a4ff44a4eb2d671bdefe9bd97cb77a09117c03f9447a9ff01f546de3842e2ebc.wgsl" + }, + { + "node": "matmul_1", + "inputs": [ + "softmax", + "slice_7" + ], + "output": "matmul_1", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/5271dca1a483428217590e5170b6a426874a234120fbee14a75e11b9faadee03.wgsl" + }, + { + "node": "transpose_4", + "inputs": [ + "matmul_1" + ], + "output": "transpose_4", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/47f78f971967ea28b861f83844879dfdfc0f10936de7fb9c56a4b8592280ec88.wgsl" + }, + { + "node": "clone", + "inputs": [ + "transpose_4" + ], + "output": "clone", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "cat_3", + "inputs": [ + "clone" + ], + "output": "cat_3", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/0a63ee401744e4da485ba317e4a798eea6e6827ae4e59fd730d73ef2dd16e91f.wgsl" + }, + { + "node": "view_6", + "inputs": [ + "cat_3" + ], + "output": "view_6", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "linear_1", + "inputs": [ + "view_6", + "p_visual_blocks_0_attn_proj_weight", + "p_visual_blocks_0_attn_proj_bias" + ], + "output": "linear_1", + "workgroups": [ + 128, + 48, + 1 + ], + "kernel": "kernels/541dedaba172d332aa5f9b78409cd0a49ead48fd2200f67a4984fdeec5664d7c.wgsl" + }, + { + "node": "add_3", + "inputs": [ + "view_3", + "linear_1" + ], + "output": "add_3", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "layer_norm_1", + "inputs": [ + "add_3", + "p_visual_blocks_0_norm2_weight", + "p_visual_blocks_0_norm2_bias" + ], + "output": "layer_norm_1", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/13bcf8d207e7732db735911a6b01201a40428d9f90a835424287d741980d0477.wgsl" + }, + { + "node": "linear_2", + "inputs": [ + "layer_norm_1", + "p_visual_blocks_0_mlp_linear_fc1_weight", + "p_visual_blocks_0_mlp_linear_fc1_bias" + ], + "output": "linear_2", + "workgroups": [ + 512, + 48, + 1 + ], + "kernel": "kernels/278a47f30fab25fda40f1b3f856f14423ee2a89eddd52c8449cab8272befeb49.wgsl" + }, + { + "node": "gelu", + "inputs": [ + "linear_2" + ], + "output": "gelu", + "workgroups": [ + 24576, + 1, + 1 + ], + "kernel": "kernels/367142dda65caa73aeb0a439dc4e658fd68a839f2ea38435d5dd665c211c8172.wgsl" + }, + { + "node": "linear_3", + "inputs": [ + "gelu", + "p_visual_blocks_0_mlp_linear_fc2_weight", + "p_visual_blocks_0_mlp_linear_fc2_bias" + ], + "output": "linear_3", + "workgroups": [ + 128, + 48, + 1 + ], + "kernel": "kernels/7927e7ea9f061b32c446ff19f676ac9467c35b991b07e422c4c9de7950cfce1b.wgsl" + }, + { + "node": "add_4", + "inputs": [ + "add_3", + "linear_3" + ], + "output": "add_4", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "layer_norm_2", + "inputs": [ + "add_4", + "p_visual_blocks_1_norm1_weight", + "p_visual_blocks_1_norm1_bias" + ], + "output": "layer_norm_2", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/13bcf8d207e7732db735911a6b01201a40428d9f90a835424287d741980d0477.wgsl" + }, + { + "node": "linear_4", + "inputs": [ + "layer_norm_2", + "p_visual_blocks_1_attn_qkv_weight", + "p_visual_blocks_1_attn_qkv_bias" + ], + "output": "linear_4", + "workgroups": [ + 384, + 48, + 1 + ], + "kernel": "kernels/dba4024ae699580d26c2a885b514feb3c8588bb7a4c7d95b36549d7d659aa585.wgsl" + }, + { + "node": "view_7", + "inputs": [ + "linear_4" + ], + "output": "view_7", + "workgroups": [ + 18432, + 1, + 1 + ], + "kernel": "kernels/aa4338d1d1db5ac8a6118b17c86acc608c6e0d04c15bfa03f804239b25a9e0b8.wgsl" + }, + { + "node": "permute_1", + "inputs": [ + "view_7" + ], + "output": "permute_1", + "workgroups": [ + 18432, + 1, + 1 + ], + "kernel": "kernels/43d939664a4898e8f9c04ba1dd333e6362d7bee1f0456b0af948d44eb3c8bf69.wgsl" + }, + { + "node": "select_3", + "inputs": [ + "permute_1" + ], + "output": "select_3", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/bf0b301adba19cff55fabb374d25f7a4d0a19137bf03c230bacedf36aefe0cf7.wgsl" + }, + { + "node": "select_4", + "inputs": [ + "permute_1" + ], + "output": "select_4", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/3c0b9a1663ed41b254264c799f5e37cbfd75209c8a1f8be9437bd7fb83fc38d1.wgsl" + }, + { + "node": "select_5", + "inputs": [ + "permute_1" + ], + "output": "select_5", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/a8bb5542d2f9b9f034f69ca618344f167111d00b9a33029671cb28071030050f.wgsl" + }, + { + "node": "unsqueeze_7", + "inputs": [ + "cos" + ], + "output": "unsqueeze_7", + "workgroups": [ + 384, + 1, + 1 + ], + "kernel": "kernels/8898353d0c367a3982a48d416f6777c3ce7a854572eeaf55843f3e7ee458c65d.wgsl" + }, + { + "node": "unsqueeze_8", + "inputs": [ + "sin" + ], + "output": "unsqueeze_8", + "workgroups": [ + 384, + 1, + 1 + ], + "kernel": "kernels/8898353d0c367a3982a48d416f6777c3ce7a854572eeaf55843f3e7ee458c65d.wgsl" + }, + { + "node": "mul_7", + "inputs": [ + "select_3", + "unsqueeze_7" + ], + "output": "mul_7", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "slice_8", + "inputs": [ + "select_3" + ], + "output": "slice_8", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/8980fed160483970508ad7c086f577b51f2b9c3979a00a70776bd65014fc9ccb.wgsl" + }, + { + "node": "slice_9", + "inputs": [ + "select_3" + ], + "output": "slice_9", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2f9ddba9feddcad74fa4a71c8fc02b4b3180c81a6a722f23ceeb94d2dac47b79.wgsl" + }, + { + "node": "neg_2", + "inputs": [ + "slice_9" + ], + "output": "neg_2", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2560bc16afb7b24fa8159af43aa0e509517ac7487bd3dc4e91697682ab604494.wgsl" + }, + { + "node": "cat_4", + "inputs": [ + "neg_2", + "slice_8" + ], + "output": "cat_4", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/2303343653b8442a4c17bedfc99130a7d627720f65d72cb7b639124717225342.wgsl" + }, + { + "node": "mul_8", + "inputs": [ + "cat_4", + "unsqueeze_8" + ], + "output": "mul_8", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "add_5", + "inputs": [ + "mul_7", + "mul_8" + ], + "output": "add_5", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "mul_9", + "inputs": [ + "select_4", + "unsqueeze_7" + ], + "output": "mul_9", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "slice_10", + "inputs": [ + "select_4" + ], + "output": "slice_10", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/8980fed160483970508ad7c086f577b51f2b9c3979a00a70776bd65014fc9ccb.wgsl" + }, + { + "node": "slice_11", + "inputs": [ + "select_4" + ], + "output": "slice_11", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2f9ddba9feddcad74fa4a71c8fc02b4b3180c81a6a722f23ceeb94d2dac47b79.wgsl" + }, + { + "node": "neg_3", + "inputs": [ + "slice_11" + ], + "output": "neg_3", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2560bc16afb7b24fa8159af43aa0e509517ac7487bd3dc4e91697682ab604494.wgsl" + }, + { + "node": "cat_5", + "inputs": [ + "neg_3", + "slice_10" + ], + "output": "cat_5", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/2303343653b8442a4c17bedfc99130a7d627720f65d72cb7b639124717225342.wgsl" + }, + { + "node": "mul_10", + "inputs": [ + "cat_5", + "unsqueeze_8" + ], + "output": "mul_10", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "add_6", + "inputs": [ + "mul_9", + "mul_10" + ], + "output": "add_6", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "transpose_5", + "inputs": [ + "add_5" + ], + "output": "transpose_5", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_9", + "inputs": [ + "transpose_5" + ], + "output": "unsqueeze_9", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "transpose_6", + "inputs": [ + "add_6" + ], + "output": "transpose_6", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_10", + "inputs": [ + "transpose_6" + ], + "output": "unsqueeze_10", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "transpose_7", + "inputs": [ + "select_5" + ], + "output": "transpose_7", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_11", + "inputs": [ + "transpose_7" + ], + "output": "unsqueeze_11", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "slice_12", + "inputs": [ + "unsqueeze_9" + ], + "output": "slice_12", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "slice_13", + "inputs": [ + "unsqueeze_10" + ], + "output": "slice_13", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "slice_14", + "inputs": [ + "unsqueeze_11" + ], + "output": "slice_14", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "transpose_8", + "inputs": [ + "slice_13" + ], + "output": "transpose_8", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/78da066223c17c00b73f3f0437cb9cb82a1265761ad2d76ba4fdba9755d9a3af.wgsl" + }, + { + "node": "matmul_2", + "inputs": [ + "slice_12", + "transpose_8" + ], + "output": "matmul_2", + "workgroups": [ + 36864, + 1, + 1 + ], + "kernel": "kernels/458bf9f5b442f2d9df5267b054e0f412be6e1dd51def1e238871999aa48752de.wgsl" + }, + { + "node": "mul_11", + "inputs": [ + "matmul_2" + ], + "output": "mul_11", + "workgroups": [ + 36864, + 1, + 1 + ], + "kernel": "kernels/e075bc3ef90433a5223d55b1147384e7d4aa10ed5ec6519ed674279f26217ac5.wgsl" + }, + { + "node": "softmax_1", + "inputs": [ + "mul_11" + ], + "output": "softmax_1", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/a4ff44a4eb2d671bdefe9bd97cb77a09117c03f9447a9ff01f546de3842e2ebc.wgsl" + }, + { + "node": "matmul_3", + "inputs": [ + "softmax_1", + "slice_14" + ], + "output": "matmul_3", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/5271dca1a483428217590e5170b6a426874a234120fbee14a75e11b9faadee03.wgsl" + }, + { + "node": "transpose_9", + "inputs": [ + "matmul_3" + ], + "output": "transpose_9", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/47f78f971967ea28b861f83844879dfdfc0f10936de7fb9c56a4b8592280ec88.wgsl" + }, + { + "node": "clone_1", + "inputs": [ + "transpose_9" + ], + "output": "clone_1", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "cat_6", + "inputs": [ + "clone_1" + ], + "output": "cat_6", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/0a63ee401744e4da485ba317e4a798eea6e6827ae4e59fd730d73ef2dd16e91f.wgsl" + }, + { + "node": "view_8", + "inputs": [ + "cat_6" + ], + "output": "view_8", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "linear_5", + "inputs": [ + "view_8", + "p_visual_blocks_1_attn_proj_weight", + "p_visual_blocks_1_attn_proj_bias" + ], + "output": "linear_5", + "workgroups": [ + 128, + 48, + 1 + ], + "kernel": "kernels/541dedaba172d332aa5f9b78409cd0a49ead48fd2200f67a4984fdeec5664d7c.wgsl" + }, + { + "node": "add_7", + "inputs": [ + "add_4", + "linear_5" + ], + "output": "add_7", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "layer_norm_3", + "inputs": [ + "add_7", + "p_visual_blocks_1_norm2_weight", + "p_visual_blocks_1_norm2_bias" + ], + "output": "layer_norm_3", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/13bcf8d207e7732db735911a6b01201a40428d9f90a835424287d741980d0477.wgsl" + }, + { + "node": "linear_6", + "inputs": [ + "layer_norm_3", + "p_visual_blocks_1_mlp_linear_fc1_weight", + "p_visual_blocks_1_mlp_linear_fc1_bias" + ], + "output": "linear_6", + "workgroups": [ + 512, + 48, + 1 + ], + "kernel": "kernels/278a47f30fab25fda40f1b3f856f14423ee2a89eddd52c8449cab8272befeb49.wgsl" + }, + { + "node": "gelu_1", + "inputs": [ + "linear_6" + ], + "output": "gelu_1", + "workgroups": [ + 24576, + 1, + 1 + ], + "kernel": "kernels/367142dda65caa73aeb0a439dc4e658fd68a839f2ea38435d5dd665c211c8172.wgsl" + }, + { + "node": "linear_7", + "inputs": [ + "gelu_1", + "p_visual_blocks_1_mlp_linear_fc2_weight", + "p_visual_blocks_1_mlp_linear_fc2_bias" + ], + "output": "linear_7", + "workgroups": [ + 128, + 48, + 1 + ], + "kernel": "kernels/7927e7ea9f061b32c446ff19f676ac9467c35b991b07e422c4c9de7950cfce1b.wgsl" + }, + { + "node": "add_8", + "inputs": [ + "add_7", + "linear_7" + ], + "output": "add_8", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "layer_norm_4", + "inputs": [ + "add_8", + "p_visual_blocks_2_norm1_weight", + "p_visual_blocks_2_norm1_bias" + ], + "output": "layer_norm_4", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/13bcf8d207e7732db735911a6b01201a40428d9f90a835424287d741980d0477.wgsl" + }, + { + "node": "linear_8", + "inputs": [ + "layer_norm_4", + "p_visual_blocks_2_attn_qkv_weight", + "p_visual_blocks_2_attn_qkv_bias" + ], + "output": "linear_8", + "workgroups": [ + 384, + 48, + 1 + ], + "kernel": "kernels/dba4024ae699580d26c2a885b514feb3c8588bb7a4c7d95b36549d7d659aa585.wgsl" + }, + { + "node": "view_9", + "inputs": [ + "linear_8" + ], + "output": "view_9", + "workgroups": [ + 18432, + 1, + 1 + ], + "kernel": "kernels/aa4338d1d1db5ac8a6118b17c86acc608c6e0d04c15bfa03f804239b25a9e0b8.wgsl" + }, + { + "node": "permute_2", + "inputs": [ + "view_9" + ], + "output": "permute_2", + "workgroups": [ + 18432, + 1, + 1 + ], + "kernel": "kernels/43d939664a4898e8f9c04ba1dd333e6362d7bee1f0456b0af948d44eb3c8bf69.wgsl" + }, + { + "node": "select_6", + "inputs": [ + "permute_2" + ], + "output": "select_6", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/bf0b301adba19cff55fabb374d25f7a4d0a19137bf03c230bacedf36aefe0cf7.wgsl" + }, + { + "node": "select_7", + "inputs": [ + "permute_2" + ], + "output": "select_7", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/3c0b9a1663ed41b254264c799f5e37cbfd75209c8a1f8be9437bd7fb83fc38d1.wgsl" + }, + { + "node": "select_8", + "inputs": [ + "permute_2" + ], + "output": "select_8", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/a8bb5542d2f9b9f034f69ca618344f167111d00b9a33029671cb28071030050f.wgsl" + }, + { + "node": "unsqueeze_12", + "inputs": [ + "cos" + ], + "output": "unsqueeze_12", + "workgroups": [ + 384, + 1, + 1 + ], + "kernel": "kernels/8898353d0c367a3982a48d416f6777c3ce7a854572eeaf55843f3e7ee458c65d.wgsl" + }, + { + "node": "unsqueeze_13", + "inputs": [ + "sin" + ], + "output": "unsqueeze_13", + "workgroups": [ + 384, + 1, + 1 + ], + "kernel": "kernels/8898353d0c367a3982a48d416f6777c3ce7a854572eeaf55843f3e7ee458c65d.wgsl" + }, + { + "node": "mul_12", + "inputs": [ + "select_6", + "unsqueeze_12" + ], + "output": "mul_12", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "slice_15", + "inputs": [ + "select_6" + ], + "output": "slice_15", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/8980fed160483970508ad7c086f577b51f2b9c3979a00a70776bd65014fc9ccb.wgsl" + }, + { + "node": "slice_16", + "inputs": [ + "select_6" + ], + "output": "slice_16", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2f9ddba9feddcad74fa4a71c8fc02b4b3180c81a6a722f23ceeb94d2dac47b79.wgsl" + }, + { + "node": "neg_4", + "inputs": [ + "slice_16" + ], + "output": "neg_4", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2560bc16afb7b24fa8159af43aa0e509517ac7487bd3dc4e91697682ab604494.wgsl" + }, + { + "node": "cat_7", + "inputs": [ + "neg_4", + "slice_15" + ], + "output": "cat_7", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/2303343653b8442a4c17bedfc99130a7d627720f65d72cb7b639124717225342.wgsl" + }, + { + "node": "mul_13", + "inputs": [ + "cat_7", + "unsqueeze_13" + ], + "output": "mul_13", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "add_9", + "inputs": [ + "mul_12", + "mul_13" + ], + "output": "add_9", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "mul_14", + "inputs": [ + "select_7", + "unsqueeze_12" + ], + "output": "mul_14", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "slice_17", + "inputs": [ + "select_7" + ], + "output": "slice_17", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/8980fed160483970508ad7c086f577b51f2b9c3979a00a70776bd65014fc9ccb.wgsl" + }, + { + "node": "slice_18", + "inputs": [ + "select_7" + ], + "output": "slice_18", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2f9ddba9feddcad74fa4a71c8fc02b4b3180c81a6a722f23ceeb94d2dac47b79.wgsl" + }, + { + "node": "neg_5", + "inputs": [ + "slice_18" + ], + "output": "neg_5", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2560bc16afb7b24fa8159af43aa0e509517ac7487bd3dc4e91697682ab604494.wgsl" + }, + { + "node": "cat_8", + "inputs": [ + "neg_5", + "slice_17" + ], + "output": "cat_8", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/2303343653b8442a4c17bedfc99130a7d627720f65d72cb7b639124717225342.wgsl" + }, + { + "node": "mul_15", + "inputs": [ + "cat_8", + "unsqueeze_13" + ], + "output": "mul_15", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "add_10", + "inputs": [ + "mul_14", + "mul_15" + ], + "output": "add_10", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "transpose_10", + "inputs": [ + "add_9" + ], + "output": "transpose_10", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_14", + "inputs": [ + "transpose_10" + ], + "output": "unsqueeze_14", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "transpose_11", + "inputs": [ + "add_10" + ], + "output": "transpose_11", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_15", + "inputs": [ + "transpose_11" + ], + "output": "unsqueeze_15", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "transpose_12", + "inputs": [ + "select_8" + ], + "output": "transpose_12", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_16", + "inputs": [ + "transpose_12" + ], + "output": "unsqueeze_16", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "slice_19", + "inputs": [ + "unsqueeze_14" + ], + "output": "slice_19", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "slice_20", + "inputs": [ + "unsqueeze_15" + ], + "output": "slice_20", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "slice_21", + "inputs": [ + "unsqueeze_16" + ], + "output": "slice_21", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "transpose_13", + "inputs": [ + "slice_20" + ], + "output": "transpose_13", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/78da066223c17c00b73f3f0437cb9cb82a1265761ad2d76ba4fdba9755d9a3af.wgsl" + }, + { + "node": "matmul_4", + "inputs": [ + "slice_19", + "transpose_13" + ], + "output": "matmul_4", + "workgroups": [ + 36864, + 1, + 1 + ], + "kernel": "kernels/458bf9f5b442f2d9df5267b054e0f412be6e1dd51def1e238871999aa48752de.wgsl" + }, + { + "node": "mul_16", + "inputs": [ + "matmul_4" + ], + "output": "mul_16", + "workgroups": [ + 36864, + 1, + 1 + ], + "kernel": "kernels/e075bc3ef90433a5223d55b1147384e7d4aa10ed5ec6519ed674279f26217ac5.wgsl" + }, + { + "node": "softmax_2", + "inputs": [ + "mul_16" + ], + "output": "softmax_2", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/a4ff44a4eb2d671bdefe9bd97cb77a09117c03f9447a9ff01f546de3842e2ebc.wgsl" + }, + { + "node": "matmul_5", + "inputs": [ + "softmax_2", + "slice_21" + ], + "output": "matmul_5", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/5271dca1a483428217590e5170b6a426874a234120fbee14a75e11b9faadee03.wgsl" + }, + { + "node": "transpose_14", + "inputs": [ + "matmul_5" + ], + "output": "transpose_14", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/47f78f971967ea28b861f83844879dfdfc0f10936de7fb9c56a4b8592280ec88.wgsl" + }, + { + "node": "clone_2", + "inputs": [ + "transpose_14" + ], + "output": "clone_2", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "cat_9", + "inputs": [ + "clone_2" + ], + "output": "cat_9", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/0a63ee401744e4da485ba317e4a798eea6e6827ae4e59fd730d73ef2dd16e91f.wgsl" + }, + { + "node": "view_10", + "inputs": [ + "cat_9" + ], + "output": "view_10", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "linear_9", + "inputs": [ + "view_10", + "p_visual_blocks_2_attn_proj_weight", + "p_visual_blocks_2_attn_proj_bias" + ], + "output": "linear_9", + "workgroups": [ + 128, + 48, + 1 + ], + "kernel": "kernels/541dedaba172d332aa5f9b78409cd0a49ead48fd2200f67a4984fdeec5664d7c.wgsl" + }, + { + "node": "add_11", + "inputs": [ + "add_8", + "linear_9" + ], + "output": "add_11", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "layer_norm_5", + "inputs": [ + "add_11", + "p_visual_blocks_2_norm2_weight", + "p_visual_blocks_2_norm2_bias" + ], + "output": "layer_norm_5", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/13bcf8d207e7732db735911a6b01201a40428d9f90a835424287d741980d0477.wgsl" + }, + { + "node": "linear_10", + "inputs": [ + "layer_norm_5", + "p_visual_blocks_2_mlp_linear_fc1_weight", + "p_visual_blocks_2_mlp_linear_fc1_bias" + ], + "output": "linear_10", + "workgroups": [ + 512, + 48, + 1 + ], + "kernel": "kernels/278a47f30fab25fda40f1b3f856f14423ee2a89eddd52c8449cab8272befeb49.wgsl" + }, + { + "node": "gelu_2", + "inputs": [ + "linear_10" + ], + "output": "gelu_2", + "workgroups": [ + 24576, + 1, + 1 + ], + "kernel": "kernels/367142dda65caa73aeb0a439dc4e658fd68a839f2ea38435d5dd665c211c8172.wgsl" + }, + { + "node": "linear_11", + "inputs": [ + "gelu_2", + "p_visual_blocks_2_mlp_linear_fc2_weight", + "p_visual_blocks_2_mlp_linear_fc2_bias" + ], + "output": "linear_11", + "workgroups": [ + 128, + 48, + 1 + ], + "kernel": "kernels/7927e7ea9f061b32c446ff19f676ac9467c35b991b07e422c4c9de7950cfce1b.wgsl" + }, + { + "node": "add_12", + "inputs": [ + "add_11", + "linear_11" + ], + "output": "add_12", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "layer_norm_6", + "inputs": [ + "add_12", + "p_visual_blocks_3_norm1_weight", + "p_visual_blocks_3_norm1_bias" + ], + "output": "layer_norm_6", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/13bcf8d207e7732db735911a6b01201a40428d9f90a835424287d741980d0477.wgsl" + }, + { + "node": "linear_12", + "inputs": [ + "layer_norm_6", + "p_visual_blocks_3_attn_qkv_weight", + "p_visual_blocks_3_attn_qkv_bias" + ], + "output": "linear_12", + "workgroups": [ + 384, + 48, + 1 + ], + "kernel": "kernels/dba4024ae699580d26c2a885b514feb3c8588bb7a4c7d95b36549d7d659aa585.wgsl" + }, + { + "node": "view_11", + "inputs": [ + "linear_12" + ], + "output": "view_11", + "workgroups": [ + 18432, + 1, + 1 + ], + "kernel": "kernels/aa4338d1d1db5ac8a6118b17c86acc608c6e0d04c15bfa03f804239b25a9e0b8.wgsl" + }, + { + "node": "permute_3", + "inputs": [ + "view_11" + ], + "output": "permute_3", + "workgroups": [ + 18432, + 1, + 1 + ], + "kernel": "kernels/43d939664a4898e8f9c04ba1dd333e6362d7bee1f0456b0af948d44eb3c8bf69.wgsl" + }, + { + "node": "select_9", + "inputs": [ + "permute_3" + ], + "output": "select_9", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/bf0b301adba19cff55fabb374d25f7a4d0a19137bf03c230bacedf36aefe0cf7.wgsl" + }, + { + "node": "select_10", + "inputs": [ + "permute_3" + ], + "output": "select_10", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/3c0b9a1663ed41b254264c799f5e37cbfd75209c8a1f8be9437bd7fb83fc38d1.wgsl" + }, + { + "node": "select_11", + "inputs": [ + "permute_3" + ], + "output": "select_11", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/a8bb5542d2f9b9f034f69ca618344f167111d00b9a33029671cb28071030050f.wgsl" + }, + { + "node": "unsqueeze_17", + "inputs": [ + "cos" + ], + "output": "unsqueeze_17", + "workgroups": [ + 384, + 1, + 1 + ], + "kernel": "kernels/8898353d0c367a3982a48d416f6777c3ce7a854572eeaf55843f3e7ee458c65d.wgsl" + }, + { + "node": "unsqueeze_18", + "inputs": [ + "sin" + ], + "output": "unsqueeze_18", + "workgroups": [ + 384, + 1, + 1 + ], + "kernel": "kernels/8898353d0c367a3982a48d416f6777c3ce7a854572eeaf55843f3e7ee458c65d.wgsl" + }, + { + "node": "mul_17", + "inputs": [ + "select_9", + "unsqueeze_17" + ], + "output": "mul_17", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "slice_22", + "inputs": [ + "select_9" + ], + "output": "slice_22", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/8980fed160483970508ad7c086f577b51f2b9c3979a00a70776bd65014fc9ccb.wgsl" + }, + { + "node": "slice_23", + "inputs": [ + "select_9" + ], + "output": "slice_23", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2f9ddba9feddcad74fa4a71c8fc02b4b3180c81a6a722f23ceeb94d2dac47b79.wgsl" + }, + { + "node": "neg_6", + "inputs": [ + "slice_23" + ], + "output": "neg_6", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2560bc16afb7b24fa8159af43aa0e509517ac7487bd3dc4e91697682ab604494.wgsl" + }, + { + "node": "cat_10", + "inputs": [ + "neg_6", + "slice_22" + ], + "output": "cat_10", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/2303343653b8442a4c17bedfc99130a7d627720f65d72cb7b639124717225342.wgsl" + }, + { + "node": "mul_18", + "inputs": [ + "cat_10", + "unsqueeze_18" + ], + "output": "mul_18", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "add_13", + "inputs": [ + "mul_17", + "mul_18" + ], + "output": "add_13", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "mul_19", + "inputs": [ + "select_10", + "unsqueeze_17" + ], + "output": "mul_19", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "slice_24", + "inputs": [ + "select_10" + ], + "output": "slice_24", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/8980fed160483970508ad7c086f577b51f2b9c3979a00a70776bd65014fc9ccb.wgsl" + }, + { + "node": "slice_25", + "inputs": [ + "select_10" + ], + "output": "slice_25", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2f9ddba9feddcad74fa4a71c8fc02b4b3180c81a6a722f23ceeb94d2dac47b79.wgsl" + }, + { + "node": "neg_7", + "inputs": [ + "slice_25" + ], + "output": "neg_7", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2560bc16afb7b24fa8159af43aa0e509517ac7487bd3dc4e91697682ab604494.wgsl" + }, + { + "node": "cat_11", + "inputs": [ + "neg_7", + "slice_24" + ], + "output": "cat_11", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/2303343653b8442a4c17bedfc99130a7d627720f65d72cb7b639124717225342.wgsl" + }, + { + "node": "mul_20", + "inputs": [ + "cat_11", + "unsqueeze_18" + ], + "output": "mul_20", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "add_14", + "inputs": [ + "mul_19", + "mul_20" + ], + "output": "add_14", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "transpose_15", + "inputs": [ + "add_13" + ], + "output": "transpose_15", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_19", + "inputs": [ + "transpose_15" + ], + "output": "unsqueeze_19", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "transpose_16", + "inputs": [ + "add_14" + ], + "output": "transpose_16", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_20", + "inputs": [ + "transpose_16" + ], + "output": "unsqueeze_20", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "transpose_17", + "inputs": [ + "select_11" + ], + "output": "transpose_17", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_21", + "inputs": [ + "transpose_17" + ], + "output": "unsqueeze_21", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "slice_26", + "inputs": [ + "unsqueeze_19" + ], + "output": "slice_26", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "slice_27", + "inputs": [ + "unsqueeze_20" + ], + "output": "slice_27", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "slice_28", + "inputs": [ + "unsqueeze_21" + ], + "output": "slice_28", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "transpose_18", + "inputs": [ + "slice_27" + ], + "output": "transpose_18", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/78da066223c17c00b73f3f0437cb9cb82a1265761ad2d76ba4fdba9755d9a3af.wgsl" + }, + { + "node": "matmul_6", + "inputs": [ + "slice_26", + "transpose_18" + ], + "output": "matmul_6", + "workgroups": [ + 36864, + 1, + 1 + ], + "kernel": "kernels/458bf9f5b442f2d9df5267b054e0f412be6e1dd51def1e238871999aa48752de.wgsl" + }, + { + "node": "mul_21", + "inputs": [ + "matmul_6" + ], + "output": "mul_21", + "workgroups": [ + 36864, + 1, + 1 + ], + "kernel": "kernels/e075bc3ef90433a5223d55b1147384e7d4aa10ed5ec6519ed674279f26217ac5.wgsl" + }, + { + "node": "softmax_3", + "inputs": [ + "mul_21" + ], + "output": "softmax_3", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/a4ff44a4eb2d671bdefe9bd97cb77a09117c03f9447a9ff01f546de3842e2ebc.wgsl" + }, + { + "node": "matmul_7", + "inputs": [ + "softmax_3", + "slice_28" + ], + "output": "matmul_7", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/5271dca1a483428217590e5170b6a426874a234120fbee14a75e11b9faadee03.wgsl" + }, + { + "node": "transpose_19", + "inputs": [ + "matmul_7" + ], + "output": "transpose_19", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/47f78f971967ea28b861f83844879dfdfc0f10936de7fb9c56a4b8592280ec88.wgsl" + }, + { + "node": "clone_3", + "inputs": [ + "transpose_19" + ], + "output": "clone_3", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "cat_12", + "inputs": [ + "clone_3" + ], + "output": "cat_12", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/0a63ee401744e4da485ba317e4a798eea6e6827ae4e59fd730d73ef2dd16e91f.wgsl" + }, + { + "node": "view_12", + "inputs": [ + "cat_12" + ], + "output": "view_12", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "linear_13", + "inputs": [ + "view_12", + "p_visual_blocks_3_attn_proj_weight", + "p_visual_blocks_3_attn_proj_bias" + ], + "output": "linear_13", + "workgroups": [ + 128, + 48, + 1 + ], + "kernel": "kernels/541dedaba172d332aa5f9b78409cd0a49ead48fd2200f67a4984fdeec5664d7c.wgsl" + }, + { + "node": "add_15", + "inputs": [ + "add_12", + "linear_13" + ], + "output": "add_15", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "layer_norm_7", + "inputs": [ + "add_15", + "p_visual_blocks_3_norm2_weight", + "p_visual_blocks_3_norm2_bias" + ], + "output": "layer_norm_7", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/13bcf8d207e7732db735911a6b01201a40428d9f90a835424287d741980d0477.wgsl" + }, + { + "node": "linear_14", + "inputs": [ + "layer_norm_7", + "p_visual_blocks_3_mlp_linear_fc1_weight", + "p_visual_blocks_3_mlp_linear_fc1_bias" + ], + "output": "linear_14", + "workgroups": [ + 512, + 48, + 1 + ], + "kernel": "kernels/278a47f30fab25fda40f1b3f856f14423ee2a89eddd52c8449cab8272befeb49.wgsl" + }, + { + "node": "gelu_3", + "inputs": [ + "linear_14" + ], + "output": "gelu_3", + "workgroups": [ + 24576, + 1, + 1 + ], + "kernel": "kernels/367142dda65caa73aeb0a439dc4e658fd68a839f2ea38435d5dd665c211c8172.wgsl" + }, + { + "node": "linear_15", + "inputs": [ + "gelu_3", + "p_visual_blocks_3_mlp_linear_fc2_weight", + "p_visual_blocks_3_mlp_linear_fc2_bias" + ], + "output": "linear_15", + "workgroups": [ + 128, + 48, + 1 + ], + "kernel": "kernels/7927e7ea9f061b32c446ff19f676ac9467c35b991b07e422c4c9de7950cfce1b.wgsl" + }, + { + "node": "add_16", + "inputs": [ + "add_15", + "linear_15" + ], + "output": "add_16", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "layer_norm_8", + "inputs": [ + "add_16", + "p_visual_blocks_4_norm1_weight", + "p_visual_blocks_4_norm1_bias" + ], + "output": "layer_norm_8", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/13bcf8d207e7732db735911a6b01201a40428d9f90a835424287d741980d0477.wgsl" + }, + { + "node": "linear_16", + "inputs": [ + "layer_norm_8", + "p_visual_blocks_4_attn_qkv_weight", + "p_visual_blocks_4_attn_qkv_bias" + ], + "output": "linear_16", + "workgroups": [ + 384, + 48, + 1 + ], + "kernel": "kernels/dba4024ae699580d26c2a885b514feb3c8588bb7a4c7d95b36549d7d659aa585.wgsl" + }, + { + "node": "view_13", + "inputs": [ + "linear_16" + ], + "output": "view_13", + "workgroups": [ + 18432, + 1, + 1 + ], + "kernel": "kernels/aa4338d1d1db5ac8a6118b17c86acc608c6e0d04c15bfa03f804239b25a9e0b8.wgsl" + }, + { + "node": "permute_4", + "inputs": [ + "view_13" + ], + "output": "permute_4", + "workgroups": [ + 18432, + 1, + 1 + ], + "kernel": "kernels/43d939664a4898e8f9c04ba1dd333e6362d7bee1f0456b0af948d44eb3c8bf69.wgsl" + }, + { + "node": "select_12", + "inputs": [ + "permute_4" + ], + "output": "select_12", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/bf0b301adba19cff55fabb374d25f7a4d0a19137bf03c230bacedf36aefe0cf7.wgsl" + }, + { + "node": "select_13", + "inputs": [ + "permute_4" + ], + "output": "select_13", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/3c0b9a1663ed41b254264c799f5e37cbfd75209c8a1f8be9437bd7fb83fc38d1.wgsl" + }, + { + "node": "select_14", + "inputs": [ + "permute_4" + ], + "output": "select_14", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/a8bb5542d2f9b9f034f69ca618344f167111d00b9a33029671cb28071030050f.wgsl" + }, + { + "node": "unsqueeze_22", + "inputs": [ + "cos" + ], + "output": "unsqueeze_22", + "workgroups": [ + 384, + 1, + 1 + ], + "kernel": "kernels/8898353d0c367a3982a48d416f6777c3ce7a854572eeaf55843f3e7ee458c65d.wgsl" + }, + { + "node": "unsqueeze_23", + "inputs": [ + "sin" + ], + "output": "unsqueeze_23", + "workgroups": [ + 384, + 1, + 1 + ], + "kernel": "kernels/8898353d0c367a3982a48d416f6777c3ce7a854572eeaf55843f3e7ee458c65d.wgsl" + }, + { + "node": "mul_22", + "inputs": [ + "select_12", + "unsqueeze_22" + ], + "output": "mul_22", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "slice_29", + "inputs": [ + "select_12" + ], + "output": "slice_29", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/8980fed160483970508ad7c086f577b51f2b9c3979a00a70776bd65014fc9ccb.wgsl" + }, + { + "node": "slice_30", + "inputs": [ + "select_12" + ], + "output": "slice_30", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2f9ddba9feddcad74fa4a71c8fc02b4b3180c81a6a722f23ceeb94d2dac47b79.wgsl" + }, + { + "node": "neg_8", + "inputs": [ + "slice_30" + ], + "output": "neg_8", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2560bc16afb7b24fa8159af43aa0e509517ac7487bd3dc4e91697682ab604494.wgsl" + }, + { + "node": "cat_13", + "inputs": [ + "neg_8", + "slice_29" + ], + "output": "cat_13", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/2303343653b8442a4c17bedfc99130a7d627720f65d72cb7b639124717225342.wgsl" + }, + { + "node": "mul_23", + "inputs": [ + "cat_13", + "unsqueeze_23" + ], + "output": "mul_23", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "add_17", + "inputs": [ + "mul_22", + "mul_23" + ], + "output": "add_17", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "mul_24", + "inputs": [ + "select_13", + "unsqueeze_22" + ], + "output": "mul_24", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "slice_31", + "inputs": [ + "select_13" + ], + "output": "slice_31", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/8980fed160483970508ad7c086f577b51f2b9c3979a00a70776bd65014fc9ccb.wgsl" + }, + { + "node": "slice_32", + "inputs": [ + "select_13" + ], + "output": "slice_32", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2f9ddba9feddcad74fa4a71c8fc02b4b3180c81a6a722f23ceeb94d2dac47b79.wgsl" + }, + { + "node": "neg_9", + "inputs": [ + "slice_32" + ], + "output": "neg_9", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2560bc16afb7b24fa8159af43aa0e509517ac7487bd3dc4e91697682ab604494.wgsl" + }, + { + "node": "cat_14", + "inputs": [ + "neg_9", + "slice_31" + ], + "output": "cat_14", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/2303343653b8442a4c17bedfc99130a7d627720f65d72cb7b639124717225342.wgsl" + }, + { + "node": "mul_25", + "inputs": [ + "cat_14", + "unsqueeze_23" + ], + "output": "mul_25", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "add_18", + "inputs": [ + "mul_24", + "mul_25" + ], + "output": "add_18", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "transpose_20", + "inputs": [ + "add_17" + ], + "output": "transpose_20", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_24", + "inputs": [ + "transpose_20" + ], + "output": "unsqueeze_24", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "transpose_21", + "inputs": [ + "add_18" + ], + "output": "transpose_21", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_25", + "inputs": [ + "transpose_21" + ], + "output": "unsqueeze_25", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "transpose_22", + "inputs": [ + "select_14" + ], + "output": "transpose_22", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_26", + "inputs": [ + "transpose_22" + ], + "output": "unsqueeze_26", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "slice_33", + "inputs": [ + "unsqueeze_24" + ], + "output": "slice_33", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "slice_34", + "inputs": [ + "unsqueeze_25" + ], + "output": "slice_34", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "slice_35", + "inputs": [ + "unsqueeze_26" + ], + "output": "slice_35", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "transpose_23", + "inputs": [ + "slice_34" + ], + "output": "transpose_23", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/78da066223c17c00b73f3f0437cb9cb82a1265761ad2d76ba4fdba9755d9a3af.wgsl" + }, + { + "node": "matmul_8", + "inputs": [ + "slice_33", + "transpose_23" + ], + "output": "matmul_8", + "workgroups": [ + 36864, + 1, + 1 + ], + "kernel": "kernels/458bf9f5b442f2d9df5267b054e0f412be6e1dd51def1e238871999aa48752de.wgsl" + }, + { + "node": "mul_26", + "inputs": [ + "matmul_8" + ], + "output": "mul_26", + "workgroups": [ + 36864, + 1, + 1 + ], + "kernel": "kernels/e075bc3ef90433a5223d55b1147384e7d4aa10ed5ec6519ed674279f26217ac5.wgsl" + }, + { + "node": "softmax_4", + "inputs": [ + "mul_26" + ], + "output": "softmax_4", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/a4ff44a4eb2d671bdefe9bd97cb77a09117c03f9447a9ff01f546de3842e2ebc.wgsl" + }, + { + "node": "matmul_9", + "inputs": [ + "softmax_4", + "slice_35" + ], + "output": "matmul_9", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/5271dca1a483428217590e5170b6a426874a234120fbee14a75e11b9faadee03.wgsl" + }, + { + "node": "transpose_24", + "inputs": [ + "matmul_9" + ], + "output": "transpose_24", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/47f78f971967ea28b861f83844879dfdfc0f10936de7fb9c56a4b8592280ec88.wgsl" + }, + { + "node": "clone_4", + "inputs": [ + "transpose_24" + ], + "output": "clone_4", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "cat_15", + "inputs": [ + "clone_4" + ], + "output": "cat_15", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/0a63ee401744e4da485ba317e4a798eea6e6827ae4e59fd730d73ef2dd16e91f.wgsl" + }, + { + "node": "view_14", + "inputs": [ + "cat_15" + ], + "output": "view_14", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "linear_17", + "inputs": [ + "view_14", + "p_visual_blocks_4_attn_proj_weight", + "p_visual_blocks_4_attn_proj_bias" + ], + "output": "linear_17", + "workgroups": [ + 128, + 48, + 1 + ], + "kernel": "kernels/541dedaba172d332aa5f9b78409cd0a49ead48fd2200f67a4984fdeec5664d7c.wgsl" + }, + { + "node": "add_19", + "inputs": [ + "add_16", + "linear_17" + ], + "output": "add_19", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "layer_norm_9", + "inputs": [ + "add_19", + "p_visual_blocks_4_norm2_weight", + "p_visual_blocks_4_norm2_bias" + ], + "output": "layer_norm_9", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/13bcf8d207e7732db735911a6b01201a40428d9f90a835424287d741980d0477.wgsl" + }, + { + "node": "linear_18", + "inputs": [ + "layer_norm_9", + "p_visual_blocks_4_mlp_linear_fc1_weight", + "p_visual_blocks_4_mlp_linear_fc1_bias" + ], + "output": "linear_18", + "workgroups": [ + 512, + 48, + 1 + ], + "kernel": "kernels/278a47f30fab25fda40f1b3f856f14423ee2a89eddd52c8449cab8272befeb49.wgsl" + }, + { + "node": "gelu_4", + "inputs": [ + "linear_18" + ], + "output": "gelu_4", + "workgroups": [ + 24576, + 1, + 1 + ], + "kernel": "kernels/367142dda65caa73aeb0a439dc4e658fd68a839f2ea38435d5dd665c211c8172.wgsl" + }, + { + "node": "linear_19", + "inputs": [ + "gelu_4", + "p_visual_blocks_4_mlp_linear_fc2_weight", + "p_visual_blocks_4_mlp_linear_fc2_bias" + ], + "output": "linear_19", + "workgroups": [ + 128, + 48, + 1 + ], + "kernel": "kernels/7927e7ea9f061b32c446ff19f676ac9467c35b991b07e422c4c9de7950cfce1b.wgsl" + }, + { + "node": "add_20", + "inputs": [ + "add_19", + "linear_19" + ], + "output": "add_20", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "layer_norm_10", + "inputs": [ + "add_20", + "p_visual_blocks_5_norm1_weight", + "p_visual_blocks_5_norm1_bias" + ], + "output": "layer_norm_10", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/13bcf8d207e7732db735911a6b01201a40428d9f90a835424287d741980d0477.wgsl" + }, + { + "node": "linear_20", + "inputs": [ + "layer_norm_10", + "p_visual_blocks_5_attn_qkv_weight", + "p_visual_blocks_5_attn_qkv_bias" + ], + "output": "linear_20", + "workgroups": [ + 384, + 48, + 1 + ], + "kernel": "kernels/dba4024ae699580d26c2a885b514feb3c8588bb7a4c7d95b36549d7d659aa585.wgsl" + }, + { + "node": "view_15", + "inputs": [ + "linear_20" + ], + "output": "view_15", + "workgroups": [ + 18432, + 1, + 1 + ], + "kernel": "kernels/aa4338d1d1db5ac8a6118b17c86acc608c6e0d04c15bfa03f804239b25a9e0b8.wgsl" + }, + { + "node": "permute_5", + "inputs": [ + "view_15" + ], + "output": "permute_5", + "workgroups": [ + 18432, + 1, + 1 + ], + "kernel": "kernels/43d939664a4898e8f9c04ba1dd333e6362d7bee1f0456b0af948d44eb3c8bf69.wgsl" + }, + { + "node": "select_15", + "inputs": [ + "permute_5" + ], + "output": "select_15", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/bf0b301adba19cff55fabb374d25f7a4d0a19137bf03c230bacedf36aefe0cf7.wgsl" + }, + { + "node": "select_16", + "inputs": [ + "permute_5" + ], + "output": "select_16", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/3c0b9a1663ed41b254264c799f5e37cbfd75209c8a1f8be9437bd7fb83fc38d1.wgsl" + }, + { + "node": "select_17", + "inputs": [ + "permute_5" + ], + "output": "select_17", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/a8bb5542d2f9b9f034f69ca618344f167111d00b9a33029671cb28071030050f.wgsl" + }, + { + "node": "unsqueeze_27", + "inputs": [ + "cos" + ], + "output": "unsqueeze_27", + "workgroups": [ + 384, + 1, + 1 + ], + "kernel": "kernels/8898353d0c367a3982a48d416f6777c3ce7a854572eeaf55843f3e7ee458c65d.wgsl" + }, + { + "node": "unsqueeze_28", + "inputs": [ + "sin" + ], + "output": "unsqueeze_28", + "workgroups": [ + 384, + 1, + 1 + ], + "kernel": "kernels/8898353d0c367a3982a48d416f6777c3ce7a854572eeaf55843f3e7ee458c65d.wgsl" + }, + { + "node": "mul_27", + "inputs": [ + "select_15", + "unsqueeze_27" + ], + "output": "mul_27", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "slice_36", + "inputs": [ + "select_15" + ], + "output": "slice_36", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/8980fed160483970508ad7c086f577b51f2b9c3979a00a70776bd65014fc9ccb.wgsl" + }, + { + "node": "slice_37", + "inputs": [ + "select_15" + ], + "output": "slice_37", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2f9ddba9feddcad74fa4a71c8fc02b4b3180c81a6a722f23ceeb94d2dac47b79.wgsl" + }, + { + "node": "neg_10", + "inputs": [ + "slice_37" + ], + "output": "neg_10", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2560bc16afb7b24fa8159af43aa0e509517ac7487bd3dc4e91697682ab604494.wgsl" + }, + { + "node": "cat_16", + "inputs": [ + "neg_10", + "slice_36" + ], + "output": "cat_16", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/2303343653b8442a4c17bedfc99130a7d627720f65d72cb7b639124717225342.wgsl" + }, + { + "node": "mul_28", + "inputs": [ + "cat_16", + "unsqueeze_28" + ], + "output": "mul_28", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "add_21", + "inputs": [ + "mul_27", + "mul_28" + ], + "output": "add_21", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "mul_29", + "inputs": [ + "select_16", + "unsqueeze_27" + ], + "output": "mul_29", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "slice_38", + "inputs": [ + "select_16" + ], + "output": "slice_38", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/8980fed160483970508ad7c086f577b51f2b9c3979a00a70776bd65014fc9ccb.wgsl" + }, + { + "node": "slice_39", + "inputs": [ + "select_16" + ], + "output": "slice_39", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2f9ddba9feddcad74fa4a71c8fc02b4b3180c81a6a722f23ceeb94d2dac47b79.wgsl" + }, + { + "node": "neg_11", + "inputs": [ + "slice_39" + ], + "output": "neg_11", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2560bc16afb7b24fa8159af43aa0e509517ac7487bd3dc4e91697682ab604494.wgsl" + }, + { + "node": "cat_17", + "inputs": [ + "neg_11", + "slice_38" + ], + "output": "cat_17", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/2303343653b8442a4c17bedfc99130a7d627720f65d72cb7b639124717225342.wgsl" + }, + { + "node": "mul_30", + "inputs": [ + "cat_17", + "unsqueeze_28" + ], + "output": "mul_30", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "add_22", + "inputs": [ + "mul_29", + "mul_30" + ], + "output": "add_22", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "transpose_25", + "inputs": [ + "add_21" + ], + "output": "transpose_25", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_29", + "inputs": [ + "transpose_25" + ], + "output": "unsqueeze_29", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "transpose_26", + "inputs": [ + "add_22" + ], + "output": "transpose_26", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_30", + "inputs": [ + "transpose_26" + ], + "output": "unsqueeze_30", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "transpose_27", + "inputs": [ + "select_17" + ], + "output": "transpose_27", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_31", + "inputs": [ + "transpose_27" + ], + "output": "unsqueeze_31", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "slice_40", + "inputs": [ + "unsqueeze_29" + ], + "output": "slice_40", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "slice_41", + "inputs": [ + "unsqueeze_30" + ], + "output": "slice_41", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "slice_42", + "inputs": [ + "unsqueeze_31" + ], + "output": "slice_42", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "transpose_28", + "inputs": [ + "slice_41" + ], + "output": "transpose_28", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/78da066223c17c00b73f3f0437cb9cb82a1265761ad2d76ba4fdba9755d9a3af.wgsl" + }, + { + "node": "matmul_10", + "inputs": [ + "slice_40", + "transpose_28" + ], + "output": "matmul_10", + "workgroups": [ + 36864, + 1, + 1 + ], + "kernel": "kernels/458bf9f5b442f2d9df5267b054e0f412be6e1dd51def1e238871999aa48752de.wgsl" + }, + { + "node": "mul_31", + "inputs": [ + "matmul_10" + ], + "output": "mul_31", + "workgroups": [ + 36864, + 1, + 1 + ], + "kernel": "kernels/e075bc3ef90433a5223d55b1147384e7d4aa10ed5ec6519ed674279f26217ac5.wgsl" + }, + { + "node": "softmax_5", + "inputs": [ + "mul_31" + ], + "output": "softmax_5", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/a4ff44a4eb2d671bdefe9bd97cb77a09117c03f9447a9ff01f546de3842e2ebc.wgsl" + }, + { + "node": "matmul_11", + "inputs": [ + "softmax_5", + "slice_42" + ], + "output": "matmul_11", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/5271dca1a483428217590e5170b6a426874a234120fbee14a75e11b9faadee03.wgsl" + }, + { + "node": "transpose_29", + "inputs": [ + "matmul_11" + ], + "output": "transpose_29", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/47f78f971967ea28b861f83844879dfdfc0f10936de7fb9c56a4b8592280ec88.wgsl" + }, + { + "node": "clone_5", + "inputs": [ + "transpose_29" + ], + "output": "clone_5", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "cat_18", + "inputs": [ + "clone_5" + ], + "output": "cat_18", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/0a63ee401744e4da485ba317e4a798eea6e6827ae4e59fd730d73ef2dd16e91f.wgsl" + }, + { + "node": "view_16", + "inputs": [ + "cat_18" + ], + "output": "view_16", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "linear_21", + "inputs": [ + "view_16", + "p_visual_blocks_5_attn_proj_weight", + "p_visual_blocks_5_attn_proj_bias" + ], + "output": "linear_21", + "workgroups": [ + 128, + 48, + 1 + ], + "kernel": "kernels/541dedaba172d332aa5f9b78409cd0a49ead48fd2200f67a4984fdeec5664d7c.wgsl" + }, + { + "node": "add_23", + "inputs": [ + "add_20", + "linear_21" + ], + "output": "add_23", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "layer_norm_11", + "inputs": [ + "add_23", + "p_visual_blocks_5_norm2_weight", + "p_visual_blocks_5_norm2_bias" + ], + "output": "layer_norm_11", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/13bcf8d207e7732db735911a6b01201a40428d9f90a835424287d741980d0477.wgsl" + }, + { + "node": "linear_22", + "inputs": [ + "layer_norm_11", + "p_visual_blocks_5_mlp_linear_fc1_weight", + "p_visual_blocks_5_mlp_linear_fc1_bias" + ], + "output": "linear_22", + "workgroups": [ + 512, + 48, + 1 + ], + "kernel": "kernels/278a47f30fab25fda40f1b3f856f14423ee2a89eddd52c8449cab8272befeb49.wgsl" + }, + { + "node": "gelu_5", + "inputs": [ + "linear_22" + ], + "output": "gelu_5", + "workgroups": [ + 24576, + 1, + 1 + ], + "kernel": "kernels/367142dda65caa73aeb0a439dc4e658fd68a839f2ea38435d5dd665c211c8172.wgsl" + }, + { + "node": "linear_23", + "inputs": [ + "gelu_5", + "p_visual_blocks_5_mlp_linear_fc2_weight", + "p_visual_blocks_5_mlp_linear_fc2_bias" + ], + "output": "linear_23", + "workgroups": [ + 128, + 48, + 1 + ], + "kernel": "kernels/7927e7ea9f061b32c446ff19f676ac9467c35b991b07e422c4c9de7950cfce1b.wgsl" + }, + { + "node": "add_24", + "inputs": [ + "add_23", + "linear_23" + ], + "output": "add_24", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "layer_norm_12", + "inputs": [ + "add_24", + "p_visual_blocks_6_norm1_weight", + "p_visual_blocks_6_norm1_bias" + ], + "output": "layer_norm_12", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/13bcf8d207e7732db735911a6b01201a40428d9f90a835424287d741980d0477.wgsl" + }, + { + "node": "linear_24", + "inputs": [ + "layer_norm_12", + "p_visual_blocks_6_attn_qkv_weight", + "p_visual_blocks_6_attn_qkv_bias" + ], + "output": "linear_24", + "workgroups": [ + 384, + 48, + 1 + ], + "kernel": "kernels/dba4024ae699580d26c2a885b514feb3c8588bb7a4c7d95b36549d7d659aa585.wgsl" + }, + { + "node": "view_17", + "inputs": [ + "linear_24" + ], + "output": "view_17", + "workgroups": [ + 18432, + 1, + 1 + ], + "kernel": "kernels/aa4338d1d1db5ac8a6118b17c86acc608c6e0d04c15bfa03f804239b25a9e0b8.wgsl" + }, + { + "node": "permute_6", + "inputs": [ + "view_17" + ], + "output": "permute_6", + "workgroups": [ + 18432, + 1, + 1 + ], + "kernel": "kernels/43d939664a4898e8f9c04ba1dd333e6362d7bee1f0456b0af948d44eb3c8bf69.wgsl" + }, + { + "node": "select_18", + "inputs": [ + "permute_6" + ], + "output": "select_18", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/bf0b301adba19cff55fabb374d25f7a4d0a19137bf03c230bacedf36aefe0cf7.wgsl" + }, + { + "node": "select_19", + "inputs": [ + "permute_6" + ], + "output": "select_19", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/3c0b9a1663ed41b254264c799f5e37cbfd75209c8a1f8be9437bd7fb83fc38d1.wgsl" + }, + { + "node": "select_20", + "inputs": [ + "permute_6" + ], + "output": "select_20", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/a8bb5542d2f9b9f034f69ca618344f167111d00b9a33029671cb28071030050f.wgsl" + }, + { + "node": "unsqueeze_32", + "inputs": [ + "cos" + ], + "output": "unsqueeze_32", + "workgroups": [ + 384, + 1, + 1 + ], + "kernel": "kernels/8898353d0c367a3982a48d416f6777c3ce7a854572eeaf55843f3e7ee458c65d.wgsl" + }, + { + "node": "unsqueeze_33", + "inputs": [ + "sin" + ], + "output": "unsqueeze_33", + "workgroups": [ + 384, + 1, + 1 + ], + "kernel": "kernels/8898353d0c367a3982a48d416f6777c3ce7a854572eeaf55843f3e7ee458c65d.wgsl" + }, + { + "node": "mul_32", + "inputs": [ + "select_18", + "unsqueeze_32" + ], + "output": "mul_32", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "slice_43", + "inputs": [ + "select_18" + ], + "output": "slice_43", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/8980fed160483970508ad7c086f577b51f2b9c3979a00a70776bd65014fc9ccb.wgsl" + }, + { + "node": "slice_44", + "inputs": [ + "select_18" + ], + "output": "slice_44", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2f9ddba9feddcad74fa4a71c8fc02b4b3180c81a6a722f23ceeb94d2dac47b79.wgsl" + }, + { + "node": "neg_12", + "inputs": [ + "slice_44" + ], + "output": "neg_12", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2560bc16afb7b24fa8159af43aa0e509517ac7487bd3dc4e91697682ab604494.wgsl" + }, + { + "node": "cat_19", + "inputs": [ + "neg_12", + "slice_43" + ], + "output": "cat_19", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/2303343653b8442a4c17bedfc99130a7d627720f65d72cb7b639124717225342.wgsl" + }, + { + "node": "mul_33", + "inputs": [ + "cat_19", + "unsqueeze_33" + ], + "output": "mul_33", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "add_25", + "inputs": [ + "mul_32", + "mul_33" + ], + "output": "add_25", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "mul_34", + "inputs": [ + "select_19", + "unsqueeze_32" + ], + "output": "mul_34", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "slice_45", + "inputs": [ + "select_19" + ], + "output": "slice_45", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/8980fed160483970508ad7c086f577b51f2b9c3979a00a70776bd65014fc9ccb.wgsl" + }, + { + "node": "slice_46", + "inputs": [ + "select_19" + ], + "output": "slice_46", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2f9ddba9feddcad74fa4a71c8fc02b4b3180c81a6a722f23ceeb94d2dac47b79.wgsl" + }, + { + "node": "neg_13", + "inputs": [ + "slice_46" + ], + "output": "neg_13", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2560bc16afb7b24fa8159af43aa0e509517ac7487bd3dc4e91697682ab604494.wgsl" + }, + { + "node": "cat_20", + "inputs": [ + "neg_13", + "slice_45" + ], + "output": "cat_20", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/2303343653b8442a4c17bedfc99130a7d627720f65d72cb7b639124717225342.wgsl" + }, + { + "node": "mul_35", + "inputs": [ + "cat_20", + "unsqueeze_33" + ], + "output": "mul_35", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "add_26", + "inputs": [ + "mul_34", + "mul_35" + ], + "output": "add_26", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "transpose_30", + "inputs": [ + "add_25" + ], + "output": "transpose_30", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_34", + "inputs": [ + "transpose_30" + ], + "output": "unsqueeze_34", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "transpose_31", + "inputs": [ + "add_26" + ], + "output": "transpose_31", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_35", + "inputs": [ + "transpose_31" + ], + "output": "unsqueeze_35", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "transpose_32", + "inputs": [ + "select_20" + ], + "output": "transpose_32", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_36", + "inputs": [ + "transpose_32" + ], + "output": "unsqueeze_36", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "slice_47", + "inputs": [ + "unsqueeze_34" + ], + "output": "slice_47", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "slice_48", + "inputs": [ + "unsqueeze_35" + ], + "output": "slice_48", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "slice_49", + "inputs": [ + "unsqueeze_36" + ], + "output": "slice_49", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "transpose_33", + "inputs": [ + "slice_48" + ], + "output": "transpose_33", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/78da066223c17c00b73f3f0437cb9cb82a1265761ad2d76ba4fdba9755d9a3af.wgsl" + }, + { + "node": "matmul_12", + "inputs": [ + "slice_47", + "transpose_33" + ], + "output": "matmul_12", + "workgroups": [ + 36864, + 1, + 1 + ], + "kernel": "kernels/458bf9f5b442f2d9df5267b054e0f412be6e1dd51def1e238871999aa48752de.wgsl" + }, + { + "node": "mul_36", + "inputs": [ + "matmul_12" + ], + "output": "mul_36", + "workgroups": [ + 36864, + 1, + 1 + ], + "kernel": "kernels/e075bc3ef90433a5223d55b1147384e7d4aa10ed5ec6519ed674279f26217ac5.wgsl" + }, + { + "node": "softmax_6", + "inputs": [ + "mul_36" + ], + "output": "softmax_6", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/a4ff44a4eb2d671bdefe9bd97cb77a09117c03f9447a9ff01f546de3842e2ebc.wgsl" + }, + { + "node": "matmul_13", + "inputs": [ + "softmax_6", + "slice_49" + ], + "output": "matmul_13", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/5271dca1a483428217590e5170b6a426874a234120fbee14a75e11b9faadee03.wgsl" + }, + { + "node": "transpose_34", + "inputs": [ + "matmul_13" + ], + "output": "transpose_34", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/47f78f971967ea28b861f83844879dfdfc0f10936de7fb9c56a4b8592280ec88.wgsl" + }, + { + "node": "clone_6", + "inputs": [ + "transpose_34" + ], + "output": "clone_6", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "cat_21", + "inputs": [ + "clone_6" + ], + "output": "cat_21", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/0a63ee401744e4da485ba317e4a798eea6e6827ae4e59fd730d73ef2dd16e91f.wgsl" + }, + { + "node": "view_18", + "inputs": [ + "cat_21" + ], + "output": "view_18", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "linear_25", + "inputs": [ + "view_18", + "p_visual_blocks_6_attn_proj_weight", + "p_visual_blocks_6_attn_proj_bias" + ], + "output": "linear_25", + "workgroups": [ + 128, + 48, + 1 + ], + "kernel": "kernels/541dedaba172d332aa5f9b78409cd0a49ead48fd2200f67a4984fdeec5664d7c.wgsl" + }, + { + "node": "add_27", + "inputs": [ + "add_24", + "linear_25" + ], + "output": "add_27", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "layer_norm_13", + "inputs": [ + "add_27", + "p_visual_blocks_6_norm2_weight", + "p_visual_blocks_6_norm2_bias" + ], + "output": "layer_norm_13", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/13bcf8d207e7732db735911a6b01201a40428d9f90a835424287d741980d0477.wgsl" + }, + { + "node": "linear_26", + "inputs": [ + "layer_norm_13", + "p_visual_blocks_6_mlp_linear_fc1_weight", + "p_visual_blocks_6_mlp_linear_fc1_bias" + ], + "output": "linear_26", + "workgroups": [ + 512, + 48, + 1 + ], + "kernel": "kernels/278a47f30fab25fda40f1b3f856f14423ee2a89eddd52c8449cab8272befeb49.wgsl" + }, + { + "node": "gelu_6", + "inputs": [ + "linear_26" + ], + "output": "gelu_6", + "workgroups": [ + 24576, + 1, + 1 + ], + "kernel": "kernels/367142dda65caa73aeb0a439dc4e658fd68a839f2ea38435d5dd665c211c8172.wgsl" + }, + { + "node": "linear_27", + "inputs": [ + "gelu_6", + "p_visual_blocks_6_mlp_linear_fc2_weight", + "p_visual_blocks_6_mlp_linear_fc2_bias" + ], + "output": "linear_27", + "workgroups": [ + 128, + 48, + 1 + ], + "kernel": "kernels/7927e7ea9f061b32c446ff19f676ac9467c35b991b07e422c4c9de7950cfce1b.wgsl" + }, + { + "node": "add_28", + "inputs": [ + "add_27", + "linear_27" + ], + "output": "add_28", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "layer_norm_14", + "inputs": [ + "add_28", + "p_visual_blocks_7_norm1_weight", + "p_visual_blocks_7_norm1_bias" + ], + "output": "layer_norm_14", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/13bcf8d207e7732db735911a6b01201a40428d9f90a835424287d741980d0477.wgsl" + }, + { + "node": "linear_28", + "inputs": [ + "layer_norm_14", + "p_visual_blocks_7_attn_qkv_weight", + "p_visual_blocks_7_attn_qkv_bias" + ], + "output": "linear_28", + "workgroups": [ + 384, + 48, + 1 + ], + "kernel": "kernels/dba4024ae699580d26c2a885b514feb3c8588bb7a4c7d95b36549d7d659aa585.wgsl" + }, + { + "node": "view_19", + "inputs": [ + "linear_28" + ], + "output": "view_19", + "workgroups": [ + 18432, + 1, + 1 + ], + "kernel": "kernels/aa4338d1d1db5ac8a6118b17c86acc608c6e0d04c15bfa03f804239b25a9e0b8.wgsl" + }, + { + "node": "permute_7", + "inputs": [ + "view_19" + ], + "output": "permute_7", + "workgroups": [ + 18432, + 1, + 1 + ], + "kernel": "kernels/43d939664a4898e8f9c04ba1dd333e6362d7bee1f0456b0af948d44eb3c8bf69.wgsl" + }, + { + "node": "select_21", + "inputs": [ + "permute_7" + ], + "output": "select_21", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/bf0b301adba19cff55fabb374d25f7a4d0a19137bf03c230bacedf36aefe0cf7.wgsl" + }, + { + "node": "select_22", + "inputs": [ + "permute_7" + ], + "output": "select_22", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/3c0b9a1663ed41b254264c799f5e37cbfd75209c8a1f8be9437bd7fb83fc38d1.wgsl" + }, + { + "node": "select_23", + "inputs": [ + "permute_7" + ], + "output": "select_23", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/a8bb5542d2f9b9f034f69ca618344f167111d00b9a33029671cb28071030050f.wgsl" + }, + { + "node": "unsqueeze_37", + "inputs": [ + "cos" + ], + "output": "unsqueeze_37", + "workgroups": [ + 384, + 1, + 1 + ], + "kernel": "kernels/8898353d0c367a3982a48d416f6777c3ce7a854572eeaf55843f3e7ee458c65d.wgsl" + }, + { + "node": "unsqueeze_38", + "inputs": [ + "sin" + ], + "output": "unsqueeze_38", + "workgroups": [ + 384, + 1, + 1 + ], + "kernel": "kernels/8898353d0c367a3982a48d416f6777c3ce7a854572eeaf55843f3e7ee458c65d.wgsl" + }, + { + "node": "mul_37", + "inputs": [ + "select_21", + "unsqueeze_37" + ], + "output": "mul_37", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "slice_50", + "inputs": [ + "select_21" + ], + "output": "slice_50", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/8980fed160483970508ad7c086f577b51f2b9c3979a00a70776bd65014fc9ccb.wgsl" + }, + { + "node": "slice_51", + "inputs": [ + "select_21" + ], + "output": "slice_51", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2f9ddba9feddcad74fa4a71c8fc02b4b3180c81a6a722f23ceeb94d2dac47b79.wgsl" + }, + { + "node": "neg_14", + "inputs": [ + "slice_51" + ], + "output": "neg_14", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2560bc16afb7b24fa8159af43aa0e509517ac7487bd3dc4e91697682ab604494.wgsl" + }, + { + "node": "cat_22", + "inputs": [ + "neg_14", + "slice_50" + ], + "output": "cat_22", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/2303343653b8442a4c17bedfc99130a7d627720f65d72cb7b639124717225342.wgsl" + }, + { + "node": "mul_38", + "inputs": [ + "cat_22", + "unsqueeze_38" + ], + "output": "mul_38", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "add_29", + "inputs": [ + "mul_37", + "mul_38" + ], + "output": "add_29", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "mul_39", + "inputs": [ + "select_22", + "unsqueeze_37" + ], + "output": "mul_39", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "slice_52", + "inputs": [ + "select_22" + ], + "output": "slice_52", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/8980fed160483970508ad7c086f577b51f2b9c3979a00a70776bd65014fc9ccb.wgsl" + }, + { + "node": "slice_53", + "inputs": [ + "select_22" + ], + "output": "slice_53", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2f9ddba9feddcad74fa4a71c8fc02b4b3180c81a6a722f23ceeb94d2dac47b79.wgsl" + }, + { + "node": "neg_15", + "inputs": [ + "slice_53" + ], + "output": "neg_15", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2560bc16afb7b24fa8159af43aa0e509517ac7487bd3dc4e91697682ab604494.wgsl" + }, + { + "node": "cat_23", + "inputs": [ + "neg_15", + "slice_52" + ], + "output": "cat_23", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/2303343653b8442a4c17bedfc99130a7d627720f65d72cb7b639124717225342.wgsl" + }, + { + "node": "mul_40", + "inputs": [ + "cat_23", + "unsqueeze_38" + ], + "output": "mul_40", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "add_30", + "inputs": [ + "mul_39", + "mul_40" + ], + "output": "add_30", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "transpose_35", + "inputs": [ + "add_29" + ], + "output": "transpose_35", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_39", + "inputs": [ + "transpose_35" + ], + "output": "unsqueeze_39", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "transpose_36", + "inputs": [ + "add_30" + ], + "output": "transpose_36", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_40", + "inputs": [ + "transpose_36" + ], + "output": "unsqueeze_40", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "transpose_37", + "inputs": [ + "select_23" + ], + "output": "transpose_37", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_41", + "inputs": [ + "transpose_37" + ], + "output": "unsqueeze_41", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "slice_54", + "inputs": [ + "unsqueeze_39" + ], + "output": "slice_54", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "slice_55", + "inputs": [ + "unsqueeze_40" + ], + "output": "slice_55", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "slice_56", + "inputs": [ + "unsqueeze_41" + ], + "output": "slice_56", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "transpose_38", + "inputs": [ + "slice_55" + ], + "output": "transpose_38", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/78da066223c17c00b73f3f0437cb9cb82a1265761ad2d76ba4fdba9755d9a3af.wgsl" + }, + { + "node": "matmul_14", + "inputs": [ + "slice_54", + "transpose_38" + ], + "output": "matmul_14", + "workgroups": [ + 36864, + 1, + 1 + ], + "kernel": "kernels/458bf9f5b442f2d9df5267b054e0f412be6e1dd51def1e238871999aa48752de.wgsl" + }, + { + "node": "mul_41", + "inputs": [ + "matmul_14" + ], + "output": "mul_41", + "workgroups": [ + 36864, + 1, + 1 + ], + "kernel": "kernels/e075bc3ef90433a5223d55b1147384e7d4aa10ed5ec6519ed674279f26217ac5.wgsl" + }, + { + "node": "softmax_7", + "inputs": [ + "mul_41" + ], + "output": "softmax_7", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/a4ff44a4eb2d671bdefe9bd97cb77a09117c03f9447a9ff01f546de3842e2ebc.wgsl" + }, + { + "node": "matmul_15", + "inputs": [ + "softmax_7", + "slice_56" + ], + "output": "matmul_15", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/5271dca1a483428217590e5170b6a426874a234120fbee14a75e11b9faadee03.wgsl" + }, + { + "node": "transpose_39", + "inputs": [ + "matmul_15" + ], + "output": "transpose_39", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/47f78f971967ea28b861f83844879dfdfc0f10936de7fb9c56a4b8592280ec88.wgsl" + }, + { + "node": "clone_7", + "inputs": [ + "transpose_39" + ], + "output": "clone_7", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "cat_24", + "inputs": [ + "clone_7" + ], + "output": "cat_24", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/0a63ee401744e4da485ba317e4a798eea6e6827ae4e59fd730d73ef2dd16e91f.wgsl" + }, + { + "node": "view_20", + "inputs": [ + "cat_24" + ], + "output": "view_20", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "linear_29", + "inputs": [ + "view_20", + "p_visual_blocks_7_attn_proj_weight", + "p_visual_blocks_7_attn_proj_bias" + ], + "output": "linear_29", + "workgroups": [ + 128, + 48, + 1 + ], + "kernel": "kernels/541dedaba172d332aa5f9b78409cd0a49ead48fd2200f67a4984fdeec5664d7c.wgsl" + }, + { + "node": "add_31", + "inputs": [ + "add_28", + "linear_29" + ], + "output": "add_31", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "layer_norm_15", + "inputs": [ + "add_31", + "p_visual_blocks_7_norm2_weight", + "p_visual_blocks_7_norm2_bias" + ], + "output": "layer_norm_15", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/13bcf8d207e7732db735911a6b01201a40428d9f90a835424287d741980d0477.wgsl" + }, + { + "node": "linear_30", + "inputs": [ + "layer_norm_15", + "p_visual_blocks_7_mlp_linear_fc1_weight", + "p_visual_blocks_7_mlp_linear_fc1_bias" + ], + "output": "linear_30", + "workgroups": [ + 512, + 48, + 1 + ], + "kernel": "kernels/278a47f30fab25fda40f1b3f856f14423ee2a89eddd52c8449cab8272befeb49.wgsl" + }, + { + "node": "gelu_7", + "inputs": [ + "linear_30" + ], + "output": "gelu_7", + "workgroups": [ + 24576, + 1, + 1 + ], + "kernel": "kernels/367142dda65caa73aeb0a439dc4e658fd68a839f2ea38435d5dd665c211c8172.wgsl" + }, + { + "node": "linear_31", + "inputs": [ + "gelu_7", + "p_visual_blocks_7_mlp_linear_fc2_weight", + "p_visual_blocks_7_mlp_linear_fc2_bias" + ], + "output": "linear_31", + "workgroups": [ + 128, + 48, + 1 + ], + "kernel": "kernels/7927e7ea9f061b32c446ff19f676ac9467c35b991b07e422c4c9de7950cfce1b.wgsl" + }, + { + "node": "add_32", + "inputs": [ + "add_31", + "linear_31" + ], + "output": "add_32", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "layer_norm_16", + "inputs": [ + "add_32", + "p_visual_blocks_8_norm1_weight", + "p_visual_blocks_8_norm1_bias" + ], + "output": "layer_norm_16", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/13bcf8d207e7732db735911a6b01201a40428d9f90a835424287d741980d0477.wgsl" + }, + { + "node": "linear_32", + "inputs": [ + "layer_norm_16", + "p_visual_blocks_8_attn_qkv_weight", + "p_visual_blocks_8_attn_qkv_bias" + ], + "output": "linear_32", + "workgroups": [ + 384, + 48, + 1 + ], + "kernel": "kernels/dba4024ae699580d26c2a885b514feb3c8588bb7a4c7d95b36549d7d659aa585.wgsl" + }, + { + "node": "view_21", + "inputs": [ + "linear_32" + ], + "output": "view_21", + "workgroups": [ + 18432, + 1, + 1 + ], + "kernel": "kernels/aa4338d1d1db5ac8a6118b17c86acc608c6e0d04c15bfa03f804239b25a9e0b8.wgsl" + }, + { + "node": "permute_8", + "inputs": [ + "view_21" + ], + "output": "permute_8", + "workgroups": [ + 18432, + 1, + 1 + ], + "kernel": "kernels/43d939664a4898e8f9c04ba1dd333e6362d7bee1f0456b0af948d44eb3c8bf69.wgsl" + }, + { + "node": "select_24", + "inputs": [ + "permute_8" + ], + "output": "select_24", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/bf0b301adba19cff55fabb374d25f7a4d0a19137bf03c230bacedf36aefe0cf7.wgsl" + }, + { + "node": "select_25", + "inputs": [ + "permute_8" + ], + "output": "select_25", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/3c0b9a1663ed41b254264c799f5e37cbfd75209c8a1f8be9437bd7fb83fc38d1.wgsl" + }, + { + "node": "select_26", + "inputs": [ + "permute_8" + ], + "output": "select_26", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/a8bb5542d2f9b9f034f69ca618344f167111d00b9a33029671cb28071030050f.wgsl" + }, + { + "node": "unsqueeze_42", + "inputs": [ + "cos" + ], + "output": "unsqueeze_42", + "workgroups": [ + 384, + 1, + 1 + ], + "kernel": "kernels/8898353d0c367a3982a48d416f6777c3ce7a854572eeaf55843f3e7ee458c65d.wgsl" + }, + { + "node": "unsqueeze_43", + "inputs": [ + "sin" + ], + "output": "unsqueeze_43", + "workgroups": [ + 384, + 1, + 1 + ], + "kernel": "kernels/8898353d0c367a3982a48d416f6777c3ce7a854572eeaf55843f3e7ee458c65d.wgsl" + }, + { + "node": "mul_42", + "inputs": [ + "select_24", + "unsqueeze_42" + ], + "output": "mul_42", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "slice_57", + "inputs": [ + "select_24" + ], + "output": "slice_57", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/8980fed160483970508ad7c086f577b51f2b9c3979a00a70776bd65014fc9ccb.wgsl" + }, + { + "node": "slice_58", + "inputs": [ + "select_24" + ], + "output": "slice_58", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2f9ddba9feddcad74fa4a71c8fc02b4b3180c81a6a722f23ceeb94d2dac47b79.wgsl" + }, + { + "node": "neg_16", + "inputs": [ + "slice_58" + ], + "output": "neg_16", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2560bc16afb7b24fa8159af43aa0e509517ac7487bd3dc4e91697682ab604494.wgsl" + }, + { + "node": "cat_25", + "inputs": [ + "neg_16", + "slice_57" + ], + "output": "cat_25", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/2303343653b8442a4c17bedfc99130a7d627720f65d72cb7b639124717225342.wgsl" + }, + { + "node": "mul_43", + "inputs": [ + "cat_25", + "unsqueeze_43" + ], + "output": "mul_43", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "add_33", + "inputs": [ + "mul_42", + "mul_43" + ], + "output": "add_33", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "mul_44", + "inputs": [ + "select_25", + "unsqueeze_42" + ], + "output": "mul_44", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "slice_59", + "inputs": [ + "select_25" + ], + "output": "slice_59", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/8980fed160483970508ad7c086f577b51f2b9c3979a00a70776bd65014fc9ccb.wgsl" + }, + { + "node": "slice_60", + "inputs": [ + "select_25" + ], + "output": "slice_60", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2f9ddba9feddcad74fa4a71c8fc02b4b3180c81a6a722f23ceeb94d2dac47b79.wgsl" + }, + { + "node": "neg_17", + "inputs": [ + "slice_60" + ], + "output": "neg_17", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2560bc16afb7b24fa8159af43aa0e509517ac7487bd3dc4e91697682ab604494.wgsl" + }, + { + "node": "cat_26", + "inputs": [ + "neg_17", + "slice_59" + ], + "output": "cat_26", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/2303343653b8442a4c17bedfc99130a7d627720f65d72cb7b639124717225342.wgsl" + }, + { + "node": "mul_45", + "inputs": [ + "cat_26", + "unsqueeze_43" + ], + "output": "mul_45", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "add_34", + "inputs": [ + "mul_44", + "mul_45" + ], + "output": "add_34", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "transpose_40", + "inputs": [ + "add_33" + ], + "output": "transpose_40", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_44", + "inputs": [ + "transpose_40" + ], + "output": "unsqueeze_44", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "transpose_41", + "inputs": [ + "add_34" + ], + "output": "transpose_41", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_45", + "inputs": [ + "transpose_41" + ], + "output": "unsqueeze_45", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "transpose_42", + "inputs": [ + "select_26" + ], + "output": "transpose_42", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_46", + "inputs": [ + "transpose_42" + ], + "output": "unsqueeze_46", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "slice_61", + "inputs": [ + "unsqueeze_44" + ], + "output": "slice_61", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "slice_62", + "inputs": [ + "unsqueeze_45" + ], + "output": "slice_62", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "slice_63", + "inputs": [ + "unsqueeze_46" + ], + "output": "slice_63", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "transpose_43", + "inputs": [ + "slice_62" + ], + "output": "transpose_43", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/78da066223c17c00b73f3f0437cb9cb82a1265761ad2d76ba4fdba9755d9a3af.wgsl" + }, + { + "node": "matmul_16", + "inputs": [ + "slice_61", + "transpose_43" + ], + "output": "matmul_16", + "workgroups": [ + 36864, + 1, + 1 + ], + "kernel": "kernels/458bf9f5b442f2d9df5267b054e0f412be6e1dd51def1e238871999aa48752de.wgsl" + }, + { + "node": "mul_46", + "inputs": [ + "matmul_16" + ], + "output": "mul_46", + "workgroups": [ + 36864, + 1, + 1 + ], + "kernel": "kernels/e075bc3ef90433a5223d55b1147384e7d4aa10ed5ec6519ed674279f26217ac5.wgsl" + }, + { + "node": "softmax_8", + "inputs": [ + "mul_46" + ], + "output": "softmax_8", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/a4ff44a4eb2d671bdefe9bd97cb77a09117c03f9447a9ff01f546de3842e2ebc.wgsl" + }, + { + "node": "matmul_17", + "inputs": [ + "softmax_8", + "slice_63" + ], + "output": "matmul_17", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/5271dca1a483428217590e5170b6a426874a234120fbee14a75e11b9faadee03.wgsl" + }, + { + "node": "transpose_44", + "inputs": [ + "matmul_17" + ], + "output": "transpose_44", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/47f78f971967ea28b861f83844879dfdfc0f10936de7fb9c56a4b8592280ec88.wgsl" + }, + { + "node": "clone_8", + "inputs": [ + "transpose_44" + ], + "output": "clone_8", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "cat_27", + "inputs": [ + "clone_8" + ], + "output": "cat_27", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/0a63ee401744e4da485ba317e4a798eea6e6827ae4e59fd730d73ef2dd16e91f.wgsl" + }, + { + "node": "view_22", + "inputs": [ + "cat_27" + ], + "output": "view_22", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "linear_33", + "inputs": [ + "view_22", + "p_visual_blocks_8_attn_proj_weight", + "p_visual_blocks_8_attn_proj_bias" + ], + "output": "linear_33", + "workgroups": [ + 128, + 48, + 1 + ], + "kernel": "kernels/541dedaba172d332aa5f9b78409cd0a49ead48fd2200f67a4984fdeec5664d7c.wgsl" + }, + { + "node": "add_35", + "inputs": [ + "add_32", + "linear_33" + ], + "output": "add_35", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "layer_norm_17", + "inputs": [ + "add_35", + "p_visual_blocks_8_norm2_weight", + "p_visual_blocks_8_norm2_bias" + ], + "output": "layer_norm_17", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/13bcf8d207e7732db735911a6b01201a40428d9f90a835424287d741980d0477.wgsl" + }, + { + "node": "linear_34", + "inputs": [ + "layer_norm_17", + "p_visual_blocks_8_mlp_linear_fc1_weight", + "p_visual_blocks_8_mlp_linear_fc1_bias" + ], + "output": "linear_34", + "workgroups": [ + 512, + 48, + 1 + ], + "kernel": "kernels/278a47f30fab25fda40f1b3f856f14423ee2a89eddd52c8449cab8272befeb49.wgsl" + }, + { + "node": "gelu_8", + "inputs": [ + "linear_34" + ], + "output": "gelu_8", + "workgroups": [ + 24576, + 1, + 1 + ], + "kernel": "kernels/367142dda65caa73aeb0a439dc4e658fd68a839f2ea38435d5dd665c211c8172.wgsl" + }, + { + "node": "linear_35", + "inputs": [ + "gelu_8", + "p_visual_blocks_8_mlp_linear_fc2_weight", + "p_visual_blocks_8_mlp_linear_fc2_bias" + ], + "output": "linear_35", + "workgroups": [ + 128, + 48, + 1 + ], + "kernel": "kernels/7927e7ea9f061b32c446ff19f676ac9467c35b991b07e422c4c9de7950cfce1b.wgsl" + }, + { + "node": "add_36", + "inputs": [ + "add_35", + "linear_35" + ], + "output": "add_36", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "layer_norm_18", + "inputs": [ + "add_36", + "p_visual_blocks_9_norm1_weight", + "p_visual_blocks_9_norm1_bias" + ], + "output": "layer_norm_18", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/13bcf8d207e7732db735911a6b01201a40428d9f90a835424287d741980d0477.wgsl" + }, + { + "node": "linear_36", + "inputs": [ + "layer_norm_18", + "p_visual_blocks_9_attn_qkv_weight", + "p_visual_blocks_9_attn_qkv_bias" + ], + "output": "linear_36", + "workgroups": [ + 384, + 48, + 1 + ], + "kernel": "kernels/dba4024ae699580d26c2a885b514feb3c8588bb7a4c7d95b36549d7d659aa585.wgsl" + }, + { + "node": "view_23", + "inputs": [ + "linear_36" + ], + "output": "view_23", + "workgroups": [ + 18432, + 1, + 1 + ], + "kernel": "kernels/aa4338d1d1db5ac8a6118b17c86acc608c6e0d04c15bfa03f804239b25a9e0b8.wgsl" + }, + { + "node": "permute_9", + "inputs": [ + "view_23" + ], + "output": "permute_9", + "workgroups": [ + 18432, + 1, + 1 + ], + "kernel": "kernels/43d939664a4898e8f9c04ba1dd333e6362d7bee1f0456b0af948d44eb3c8bf69.wgsl" + }, + { + "node": "select_27", + "inputs": [ + "permute_9" + ], + "output": "select_27", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/bf0b301adba19cff55fabb374d25f7a4d0a19137bf03c230bacedf36aefe0cf7.wgsl" + }, + { + "node": "select_28", + "inputs": [ + "permute_9" + ], + "output": "select_28", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/3c0b9a1663ed41b254264c799f5e37cbfd75209c8a1f8be9437bd7fb83fc38d1.wgsl" + }, + { + "node": "select_29", + "inputs": [ + "permute_9" + ], + "output": "select_29", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/a8bb5542d2f9b9f034f69ca618344f167111d00b9a33029671cb28071030050f.wgsl" + }, + { + "node": "unsqueeze_47", + "inputs": [ + "cos" + ], + "output": "unsqueeze_47", + "workgroups": [ + 384, + 1, + 1 + ], + "kernel": "kernels/8898353d0c367a3982a48d416f6777c3ce7a854572eeaf55843f3e7ee458c65d.wgsl" + }, + { + "node": "unsqueeze_48", + "inputs": [ + "sin" + ], + "output": "unsqueeze_48", + "workgroups": [ + 384, + 1, + 1 + ], + "kernel": "kernels/8898353d0c367a3982a48d416f6777c3ce7a854572eeaf55843f3e7ee458c65d.wgsl" + }, + { + "node": "mul_47", + "inputs": [ + "select_27", + "unsqueeze_47" + ], + "output": "mul_47", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "slice_64", + "inputs": [ + "select_27" + ], + "output": "slice_64", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/8980fed160483970508ad7c086f577b51f2b9c3979a00a70776bd65014fc9ccb.wgsl" + }, + { + "node": "slice_65", + "inputs": [ + "select_27" + ], + "output": "slice_65", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2f9ddba9feddcad74fa4a71c8fc02b4b3180c81a6a722f23ceeb94d2dac47b79.wgsl" + }, + { + "node": "neg_18", + "inputs": [ + "slice_65" + ], + "output": "neg_18", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2560bc16afb7b24fa8159af43aa0e509517ac7487bd3dc4e91697682ab604494.wgsl" + }, + { + "node": "cat_28", + "inputs": [ + "neg_18", + "slice_64" + ], + "output": "cat_28", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/2303343653b8442a4c17bedfc99130a7d627720f65d72cb7b639124717225342.wgsl" + }, + { + "node": "mul_48", + "inputs": [ + "cat_28", + "unsqueeze_48" + ], + "output": "mul_48", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "add_37", + "inputs": [ + "mul_47", + "mul_48" + ], + "output": "add_37", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "mul_49", + "inputs": [ + "select_28", + "unsqueeze_47" + ], + "output": "mul_49", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "slice_66", + "inputs": [ + "select_28" + ], + "output": "slice_66", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/8980fed160483970508ad7c086f577b51f2b9c3979a00a70776bd65014fc9ccb.wgsl" + }, + { + "node": "slice_67", + "inputs": [ + "select_28" + ], + "output": "slice_67", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2f9ddba9feddcad74fa4a71c8fc02b4b3180c81a6a722f23ceeb94d2dac47b79.wgsl" + }, + { + "node": "neg_19", + "inputs": [ + "slice_67" + ], + "output": "neg_19", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2560bc16afb7b24fa8159af43aa0e509517ac7487bd3dc4e91697682ab604494.wgsl" + }, + { + "node": "cat_29", + "inputs": [ + "neg_19", + "slice_66" + ], + "output": "cat_29", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/2303343653b8442a4c17bedfc99130a7d627720f65d72cb7b639124717225342.wgsl" + }, + { + "node": "mul_50", + "inputs": [ + "cat_29", + "unsqueeze_48" + ], + "output": "mul_50", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "add_38", + "inputs": [ + "mul_49", + "mul_50" + ], + "output": "add_38", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "transpose_45", + "inputs": [ + "add_37" + ], + "output": "transpose_45", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_49", + "inputs": [ + "transpose_45" + ], + "output": "unsqueeze_49", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "transpose_46", + "inputs": [ + "add_38" + ], + "output": "transpose_46", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_50", + "inputs": [ + "transpose_46" + ], + "output": "unsqueeze_50", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "transpose_47", + "inputs": [ + "select_29" + ], + "output": "transpose_47", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_51", + "inputs": [ + "transpose_47" + ], + "output": "unsqueeze_51", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "slice_68", + "inputs": [ + "unsqueeze_49" + ], + "output": "slice_68", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "slice_69", + "inputs": [ + "unsqueeze_50" + ], + "output": "slice_69", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "slice_70", + "inputs": [ + "unsqueeze_51" + ], + "output": "slice_70", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "transpose_48", + "inputs": [ + "slice_69" + ], + "output": "transpose_48", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/78da066223c17c00b73f3f0437cb9cb82a1265761ad2d76ba4fdba9755d9a3af.wgsl" + }, + { + "node": "matmul_18", + "inputs": [ + "slice_68", + "transpose_48" + ], + "output": "matmul_18", + "workgroups": [ + 36864, + 1, + 1 + ], + "kernel": "kernels/458bf9f5b442f2d9df5267b054e0f412be6e1dd51def1e238871999aa48752de.wgsl" + }, + { + "node": "mul_51", + "inputs": [ + "matmul_18" + ], + "output": "mul_51", + "workgroups": [ + 36864, + 1, + 1 + ], + "kernel": "kernels/e075bc3ef90433a5223d55b1147384e7d4aa10ed5ec6519ed674279f26217ac5.wgsl" + }, + { + "node": "softmax_9", + "inputs": [ + "mul_51" + ], + "output": "softmax_9", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/a4ff44a4eb2d671bdefe9bd97cb77a09117c03f9447a9ff01f546de3842e2ebc.wgsl" + }, + { + "node": "matmul_19", + "inputs": [ + "softmax_9", + "slice_70" + ], + "output": "matmul_19", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/5271dca1a483428217590e5170b6a426874a234120fbee14a75e11b9faadee03.wgsl" + }, + { + "node": "transpose_49", + "inputs": [ + "matmul_19" + ], + "output": "transpose_49", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/47f78f971967ea28b861f83844879dfdfc0f10936de7fb9c56a4b8592280ec88.wgsl" + }, + { + "node": "clone_9", + "inputs": [ + "transpose_49" + ], + "output": "clone_9", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "cat_30", + "inputs": [ + "clone_9" + ], + "output": "cat_30", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/0a63ee401744e4da485ba317e4a798eea6e6827ae4e59fd730d73ef2dd16e91f.wgsl" + }, + { + "node": "view_24", + "inputs": [ + "cat_30" + ], + "output": "view_24", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "linear_37", + "inputs": [ + "view_24", + "p_visual_blocks_9_attn_proj_weight", + "p_visual_blocks_9_attn_proj_bias" + ], + "output": "linear_37", + "workgroups": [ + 128, + 48, + 1 + ], + "kernel": "kernels/541dedaba172d332aa5f9b78409cd0a49ead48fd2200f67a4984fdeec5664d7c.wgsl" + }, + { + "node": "add_39", + "inputs": [ + "add_36", + "linear_37" + ], + "output": "add_39", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "layer_norm_19", + "inputs": [ + "add_39", + "p_visual_blocks_9_norm2_weight", + "p_visual_blocks_9_norm2_bias" + ], + "output": "layer_norm_19", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/13bcf8d207e7732db735911a6b01201a40428d9f90a835424287d741980d0477.wgsl" + }, + { + "node": "linear_38", + "inputs": [ + "layer_norm_19", + "p_visual_blocks_9_mlp_linear_fc1_weight", + "p_visual_blocks_9_mlp_linear_fc1_bias" + ], + "output": "linear_38", + "workgroups": [ + 512, + 48, + 1 + ], + "kernel": "kernels/278a47f30fab25fda40f1b3f856f14423ee2a89eddd52c8449cab8272befeb49.wgsl" + }, + { + "node": "gelu_9", + "inputs": [ + "linear_38" + ], + "output": "gelu_9", + "workgroups": [ + 24576, + 1, + 1 + ], + "kernel": "kernels/367142dda65caa73aeb0a439dc4e658fd68a839f2ea38435d5dd665c211c8172.wgsl" + }, + { + "node": "linear_39", + "inputs": [ + "gelu_9", + "p_visual_blocks_9_mlp_linear_fc2_weight", + "p_visual_blocks_9_mlp_linear_fc2_bias" + ], + "output": "linear_39", + "workgroups": [ + 128, + 48, + 1 + ], + "kernel": "kernels/7927e7ea9f061b32c446ff19f676ac9467c35b991b07e422c4c9de7950cfce1b.wgsl" + }, + { + "node": "add_40", + "inputs": [ + "add_39", + "linear_39" + ], + "output": "add_40", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "layer_norm_20", + "inputs": [ + "add_40", + "p_visual_blocks_10_norm1_weight", + "p_visual_blocks_10_norm1_bias" + ], + "output": "layer_norm_20", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/13bcf8d207e7732db735911a6b01201a40428d9f90a835424287d741980d0477.wgsl" + }, + { + "node": "linear_40", + "inputs": [ + "layer_norm_20", + "p_visual_blocks_10_attn_qkv_weight", + "p_visual_blocks_10_attn_qkv_bias" + ], + "output": "linear_40", + "workgroups": [ + 384, + 48, + 1 + ], + "kernel": "kernels/dba4024ae699580d26c2a885b514feb3c8588bb7a4c7d95b36549d7d659aa585.wgsl" + }, + { + "node": "view_25", + "inputs": [ + "linear_40" + ], + "output": "view_25", + "workgroups": [ + 18432, + 1, + 1 + ], + "kernel": "kernels/aa4338d1d1db5ac8a6118b17c86acc608c6e0d04c15bfa03f804239b25a9e0b8.wgsl" + }, + { + "node": "permute_10", + "inputs": [ + "view_25" + ], + "output": "permute_10", + "workgroups": [ + 18432, + 1, + 1 + ], + "kernel": "kernels/43d939664a4898e8f9c04ba1dd333e6362d7bee1f0456b0af948d44eb3c8bf69.wgsl" + }, + { + "node": "select_30", + "inputs": [ + "permute_10" + ], + "output": "select_30", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/bf0b301adba19cff55fabb374d25f7a4d0a19137bf03c230bacedf36aefe0cf7.wgsl" + }, + { + "node": "select_31", + "inputs": [ + "permute_10" + ], + "output": "select_31", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/3c0b9a1663ed41b254264c799f5e37cbfd75209c8a1f8be9437bd7fb83fc38d1.wgsl" + }, + { + "node": "select_32", + "inputs": [ + "permute_10" + ], + "output": "select_32", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/a8bb5542d2f9b9f034f69ca618344f167111d00b9a33029671cb28071030050f.wgsl" + }, + { + "node": "unsqueeze_52", + "inputs": [ + "cos" + ], + "output": "unsqueeze_52", + "workgroups": [ + 384, + 1, + 1 + ], + "kernel": "kernels/8898353d0c367a3982a48d416f6777c3ce7a854572eeaf55843f3e7ee458c65d.wgsl" + }, + { + "node": "unsqueeze_53", + "inputs": [ + "sin" + ], + "output": "unsqueeze_53", + "workgroups": [ + 384, + 1, + 1 + ], + "kernel": "kernels/8898353d0c367a3982a48d416f6777c3ce7a854572eeaf55843f3e7ee458c65d.wgsl" + }, + { + "node": "mul_52", + "inputs": [ + "select_30", + "unsqueeze_52" + ], + "output": "mul_52", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "slice_71", + "inputs": [ + "select_30" + ], + "output": "slice_71", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/8980fed160483970508ad7c086f577b51f2b9c3979a00a70776bd65014fc9ccb.wgsl" + }, + { + "node": "slice_72", + "inputs": [ + "select_30" + ], + "output": "slice_72", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2f9ddba9feddcad74fa4a71c8fc02b4b3180c81a6a722f23ceeb94d2dac47b79.wgsl" + }, + { + "node": "neg_20", + "inputs": [ + "slice_72" + ], + "output": "neg_20", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2560bc16afb7b24fa8159af43aa0e509517ac7487bd3dc4e91697682ab604494.wgsl" + }, + { + "node": "cat_31", + "inputs": [ + "neg_20", + "slice_71" + ], + "output": "cat_31", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/2303343653b8442a4c17bedfc99130a7d627720f65d72cb7b639124717225342.wgsl" + }, + { + "node": "mul_53", + "inputs": [ + "cat_31", + "unsqueeze_53" + ], + "output": "mul_53", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "add_41", + "inputs": [ + "mul_52", + "mul_53" + ], + "output": "add_41", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "mul_54", + "inputs": [ + "select_31", + "unsqueeze_52" + ], + "output": "mul_54", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "slice_73", + "inputs": [ + "select_31" + ], + "output": "slice_73", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/8980fed160483970508ad7c086f577b51f2b9c3979a00a70776bd65014fc9ccb.wgsl" + }, + { + "node": "slice_74", + "inputs": [ + "select_31" + ], + "output": "slice_74", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2f9ddba9feddcad74fa4a71c8fc02b4b3180c81a6a722f23ceeb94d2dac47b79.wgsl" + }, + { + "node": "neg_21", + "inputs": [ + "slice_74" + ], + "output": "neg_21", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2560bc16afb7b24fa8159af43aa0e509517ac7487bd3dc4e91697682ab604494.wgsl" + }, + { + "node": "cat_32", + "inputs": [ + "neg_21", + "slice_73" + ], + "output": "cat_32", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/2303343653b8442a4c17bedfc99130a7d627720f65d72cb7b639124717225342.wgsl" + }, + { + "node": "mul_55", + "inputs": [ + "cat_32", + "unsqueeze_53" + ], + "output": "mul_55", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "add_42", + "inputs": [ + "mul_54", + "mul_55" + ], + "output": "add_42", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "transpose_50", + "inputs": [ + "add_41" + ], + "output": "transpose_50", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_54", + "inputs": [ + "transpose_50" + ], + "output": "unsqueeze_54", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "transpose_51", + "inputs": [ + "add_42" + ], + "output": "transpose_51", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_55", + "inputs": [ + "transpose_51" + ], + "output": "unsqueeze_55", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "transpose_52", + "inputs": [ + "select_32" + ], + "output": "transpose_52", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_56", + "inputs": [ + "transpose_52" + ], + "output": "unsqueeze_56", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "slice_75", + "inputs": [ + "unsqueeze_54" + ], + "output": "slice_75", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "slice_76", + "inputs": [ + "unsqueeze_55" + ], + "output": "slice_76", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "slice_77", + "inputs": [ + "unsqueeze_56" + ], + "output": "slice_77", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "transpose_53", + "inputs": [ + "slice_76" + ], + "output": "transpose_53", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/78da066223c17c00b73f3f0437cb9cb82a1265761ad2d76ba4fdba9755d9a3af.wgsl" + }, + { + "node": "matmul_20", + "inputs": [ + "slice_75", + "transpose_53" + ], + "output": "matmul_20", + "workgroups": [ + 36864, + 1, + 1 + ], + "kernel": "kernels/458bf9f5b442f2d9df5267b054e0f412be6e1dd51def1e238871999aa48752de.wgsl" + }, + { + "node": "mul_56", + "inputs": [ + "matmul_20" + ], + "output": "mul_56", + "workgroups": [ + 36864, + 1, + 1 + ], + "kernel": "kernels/e075bc3ef90433a5223d55b1147384e7d4aa10ed5ec6519ed674279f26217ac5.wgsl" + }, + { + "node": "softmax_10", + "inputs": [ + "mul_56" + ], + "output": "softmax_10", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/a4ff44a4eb2d671bdefe9bd97cb77a09117c03f9447a9ff01f546de3842e2ebc.wgsl" + }, + { + "node": "matmul_21", + "inputs": [ + "softmax_10", + "slice_77" + ], + "output": "matmul_21", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/5271dca1a483428217590e5170b6a426874a234120fbee14a75e11b9faadee03.wgsl" + }, + { + "node": "transpose_54", + "inputs": [ + "matmul_21" + ], + "output": "transpose_54", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/47f78f971967ea28b861f83844879dfdfc0f10936de7fb9c56a4b8592280ec88.wgsl" + }, + { + "node": "clone_10", + "inputs": [ + "transpose_54" + ], + "output": "clone_10", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "cat_33", + "inputs": [ + "clone_10" + ], + "output": "cat_33", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/0a63ee401744e4da485ba317e4a798eea6e6827ae4e59fd730d73ef2dd16e91f.wgsl" + }, + { + "node": "view_26", + "inputs": [ + "cat_33" + ], + "output": "view_26", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "linear_41", + "inputs": [ + "view_26", + "p_visual_blocks_10_attn_proj_weight", + "p_visual_blocks_10_attn_proj_bias" + ], + "output": "linear_41", + "workgroups": [ + 128, + 48, + 1 + ], + "kernel": "kernels/541dedaba172d332aa5f9b78409cd0a49ead48fd2200f67a4984fdeec5664d7c.wgsl" + }, + { + "node": "add_43", + "inputs": [ + "add_40", + "linear_41" + ], + "output": "add_43", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "layer_norm_21", + "inputs": [ + "add_43", + "p_visual_blocks_10_norm2_weight", + "p_visual_blocks_10_norm2_bias" + ], + "output": "layer_norm_21", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/13bcf8d207e7732db735911a6b01201a40428d9f90a835424287d741980d0477.wgsl" + }, + { + "node": "linear_42", + "inputs": [ + "layer_norm_21", + "p_visual_blocks_10_mlp_linear_fc1_weight", + "p_visual_blocks_10_mlp_linear_fc1_bias" + ], + "output": "linear_42", + "workgroups": [ + 512, + 48, + 1 + ], + "kernel": "kernels/278a47f30fab25fda40f1b3f856f14423ee2a89eddd52c8449cab8272befeb49.wgsl" + }, + { + "node": "gelu_10", + "inputs": [ + "linear_42" + ], + "output": "gelu_10", + "workgroups": [ + 24576, + 1, + 1 + ], + "kernel": "kernels/367142dda65caa73aeb0a439dc4e658fd68a839f2ea38435d5dd665c211c8172.wgsl" + }, + { + "node": "linear_43", + "inputs": [ + "gelu_10", + "p_visual_blocks_10_mlp_linear_fc2_weight", + "p_visual_blocks_10_mlp_linear_fc2_bias" + ], + "output": "linear_43", + "workgroups": [ + 128, + 48, + 1 + ], + "kernel": "kernels/7927e7ea9f061b32c446ff19f676ac9467c35b991b07e422c4c9de7950cfce1b.wgsl" + }, + { + "node": "add_44", + "inputs": [ + "add_43", + "linear_43" + ], + "output": "add_44", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "layer_norm_22", + "inputs": [ + "add_44", + "p_visual_blocks_11_norm1_weight", + "p_visual_blocks_11_norm1_bias" + ], + "output": "layer_norm_22", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/13bcf8d207e7732db735911a6b01201a40428d9f90a835424287d741980d0477.wgsl" + }, + { + "node": "linear_44", + "inputs": [ + "layer_norm_22", + "p_visual_blocks_11_attn_qkv_weight", + "p_visual_blocks_11_attn_qkv_bias" + ], + "output": "linear_44", + "workgroups": [ + 384, + 48, + 1 + ], + "kernel": "kernels/dba4024ae699580d26c2a885b514feb3c8588bb7a4c7d95b36549d7d659aa585.wgsl" + }, + { + "node": "view_27", + "inputs": [ + "linear_44" + ], + "output": "view_27", + "workgroups": [ + 18432, + 1, + 1 + ], + "kernel": "kernels/aa4338d1d1db5ac8a6118b17c86acc608c6e0d04c15bfa03f804239b25a9e0b8.wgsl" + }, + { + "node": "permute_11", + "inputs": [ + "view_27" + ], + "output": "permute_11", + "workgroups": [ + 18432, + 1, + 1 + ], + "kernel": "kernels/43d939664a4898e8f9c04ba1dd333e6362d7bee1f0456b0af948d44eb3c8bf69.wgsl" + }, + { + "node": "select_33", + "inputs": [ + "permute_11" + ], + "output": "select_33", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/bf0b301adba19cff55fabb374d25f7a4d0a19137bf03c230bacedf36aefe0cf7.wgsl" + }, + { + "node": "select_34", + "inputs": [ + "permute_11" + ], + "output": "select_34", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/3c0b9a1663ed41b254264c799f5e37cbfd75209c8a1f8be9437bd7fb83fc38d1.wgsl" + }, + { + "node": "select_35", + "inputs": [ + "permute_11" + ], + "output": "select_35", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/a8bb5542d2f9b9f034f69ca618344f167111d00b9a33029671cb28071030050f.wgsl" + }, + { + "node": "unsqueeze_57", + "inputs": [ + "cos" + ], + "output": "unsqueeze_57", + "workgroups": [ + 384, + 1, + 1 + ], + "kernel": "kernels/8898353d0c367a3982a48d416f6777c3ce7a854572eeaf55843f3e7ee458c65d.wgsl" + }, + { + "node": "unsqueeze_58", + "inputs": [ + "sin" + ], + "output": "unsqueeze_58", + "workgroups": [ + 384, + 1, + 1 + ], + "kernel": "kernels/8898353d0c367a3982a48d416f6777c3ce7a854572eeaf55843f3e7ee458c65d.wgsl" + }, + { + "node": "mul_57", + "inputs": [ + "select_33", + "unsqueeze_57" + ], + "output": "mul_57", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "slice_78", + "inputs": [ + "select_33" + ], + "output": "slice_78", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/8980fed160483970508ad7c086f577b51f2b9c3979a00a70776bd65014fc9ccb.wgsl" + }, + { + "node": "slice_79", + "inputs": [ + "select_33" + ], + "output": "slice_79", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2f9ddba9feddcad74fa4a71c8fc02b4b3180c81a6a722f23ceeb94d2dac47b79.wgsl" + }, + { + "node": "neg_22", + "inputs": [ + "slice_79" + ], + "output": "neg_22", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2560bc16afb7b24fa8159af43aa0e509517ac7487bd3dc4e91697682ab604494.wgsl" + }, + { + "node": "cat_34", + "inputs": [ + "neg_22", + "slice_78" + ], + "output": "cat_34", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/2303343653b8442a4c17bedfc99130a7d627720f65d72cb7b639124717225342.wgsl" + }, + { + "node": "mul_58", + "inputs": [ + "cat_34", + "unsqueeze_58" + ], + "output": "mul_58", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "add_45", + "inputs": [ + "mul_57", + "mul_58" + ], + "output": "add_45", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "mul_59", + "inputs": [ + "select_34", + "unsqueeze_57" + ], + "output": "mul_59", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "slice_80", + "inputs": [ + "select_34" + ], + "output": "slice_80", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/8980fed160483970508ad7c086f577b51f2b9c3979a00a70776bd65014fc9ccb.wgsl" + }, + { + "node": "slice_81", + "inputs": [ + "select_34" + ], + "output": "slice_81", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2f9ddba9feddcad74fa4a71c8fc02b4b3180c81a6a722f23ceeb94d2dac47b79.wgsl" + }, + { + "node": "neg_23", + "inputs": [ + "slice_81" + ], + "output": "neg_23", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2560bc16afb7b24fa8159af43aa0e509517ac7487bd3dc4e91697682ab604494.wgsl" + }, + { + "node": "cat_35", + "inputs": [ + "neg_23", + "slice_80" + ], + "output": "cat_35", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/2303343653b8442a4c17bedfc99130a7d627720f65d72cb7b639124717225342.wgsl" + }, + { + "node": "mul_60", + "inputs": [ + "cat_35", + "unsqueeze_58" + ], + "output": "mul_60", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "add_46", + "inputs": [ + "mul_59", + "mul_60" + ], + "output": "add_46", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "transpose_55", + "inputs": [ + "add_45" + ], + "output": "transpose_55", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_59", + "inputs": [ + "transpose_55" + ], + "output": "unsqueeze_59", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "transpose_56", + "inputs": [ + "add_46" + ], + "output": "transpose_56", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_60", + "inputs": [ + "transpose_56" + ], + "output": "unsqueeze_60", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "transpose_57", + "inputs": [ + "select_35" + ], + "output": "transpose_57", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_61", + "inputs": [ + "transpose_57" + ], + "output": "unsqueeze_61", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "slice_82", + "inputs": [ + "unsqueeze_59" + ], + "output": "slice_82", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "slice_83", + "inputs": [ + "unsqueeze_60" + ], + "output": "slice_83", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "slice_84", + "inputs": [ + "unsqueeze_61" + ], + "output": "slice_84", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "transpose_58", + "inputs": [ + "slice_83" + ], + "output": "transpose_58", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/78da066223c17c00b73f3f0437cb9cb82a1265761ad2d76ba4fdba9755d9a3af.wgsl" + }, + { + "node": "matmul_22", + "inputs": [ + "slice_82", + "transpose_58" + ], + "output": "matmul_22", + "workgroups": [ + 36864, + 1, + 1 + ], + "kernel": "kernels/458bf9f5b442f2d9df5267b054e0f412be6e1dd51def1e238871999aa48752de.wgsl" + }, + { + "node": "mul_61", + "inputs": [ + "matmul_22" + ], + "output": "mul_61", + "workgroups": [ + 36864, + 1, + 1 + ], + "kernel": "kernels/e075bc3ef90433a5223d55b1147384e7d4aa10ed5ec6519ed674279f26217ac5.wgsl" + }, + { + "node": "softmax_11", + "inputs": [ + "mul_61" + ], + "output": "softmax_11", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/a4ff44a4eb2d671bdefe9bd97cb77a09117c03f9447a9ff01f546de3842e2ebc.wgsl" + }, + { + "node": "matmul_23", + "inputs": [ + "softmax_11", + "slice_84" + ], + "output": "matmul_23", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/5271dca1a483428217590e5170b6a426874a234120fbee14a75e11b9faadee03.wgsl" + }, + { + "node": "transpose_59", + "inputs": [ + "matmul_23" + ], + "output": "transpose_59", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/47f78f971967ea28b861f83844879dfdfc0f10936de7fb9c56a4b8592280ec88.wgsl" + }, + { + "node": "clone_11", + "inputs": [ + "transpose_59" + ], + "output": "clone_11", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "cat_36", + "inputs": [ + "clone_11" + ], + "output": "cat_36", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/0a63ee401744e4da485ba317e4a798eea6e6827ae4e59fd730d73ef2dd16e91f.wgsl" + }, + { + "node": "view_28", + "inputs": [ + "cat_36" + ], + "output": "view_28", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "linear_45", + "inputs": [ + "view_28", + "p_visual_blocks_11_attn_proj_weight", + "p_visual_blocks_11_attn_proj_bias" + ], + "output": "linear_45", + "workgroups": [ + 128, + 48, + 1 + ], + "kernel": "kernels/541dedaba172d332aa5f9b78409cd0a49ead48fd2200f67a4984fdeec5664d7c.wgsl" + }, + { + "node": "add_47", + "inputs": [ + "add_44", + "linear_45" + ], + "output": "add_47", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "layer_norm_23", + "inputs": [ + "add_47", + "p_visual_blocks_11_norm2_weight", + "p_visual_blocks_11_norm2_bias" + ], + "output": "layer_norm_23", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/13bcf8d207e7732db735911a6b01201a40428d9f90a835424287d741980d0477.wgsl" + }, + { + "node": "linear_46", + "inputs": [ + "layer_norm_23", + "p_visual_blocks_11_mlp_linear_fc1_weight", + "p_visual_blocks_11_mlp_linear_fc1_bias" + ], + "output": "linear_46", + "workgroups": [ + 512, + 48, + 1 + ], + "kernel": "kernels/278a47f30fab25fda40f1b3f856f14423ee2a89eddd52c8449cab8272befeb49.wgsl" + }, + { + "node": "gelu_11", + "inputs": [ + "linear_46" + ], + "output": "gelu_11", + "workgroups": [ + 24576, + 1, + 1 + ], + "kernel": "kernels/367142dda65caa73aeb0a439dc4e658fd68a839f2ea38435d5dd665c211c8172.wgsl" + }, + { + "node": "linear_47", + "inputs": [ + "gelu_11", + "p_visual_blocks_11_mlp_linear_fc2_weight", + "p_visual_blocks_11_mlp_linear_fc2_bias" + ], + "output": "linear_47", + "workgroups": [ + 128, + 48, + 1 + ], + "kernel": "kernels/7927e7ea9f061b32c446ff19f676ac9467c35b991b07e422c4c9de7950cfce1b.wgsl" + }, + { + "node": "add_48", + "inputs": [ + "add_47", + "linear_47" + ], + "output": "add_48", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "layer_norm_24", + "inputs": [ + "add_48", + "p_visual_blocks_12_norm1_weight", + "p_visual_blocks_12_norm1_bias" + ], + "output": "layer_norm_24", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/13bcf8d207e7732db735911a6b01201a40428d9f90a835424287d741980d0477.wgsl" + }, + { + "node": "linear_48", + "inputs": [ + "layer_norm_24", + "p_visual_blocks_12_attn_qkv_weight", + "p_visual_blocks_12_attn_qkv_bias" + ], + "output": "linear_48", + "workgroups": [ + 384, + 48, + 1 + ], + "kernel": "kernels/dba4024ae699580d26c2a885b514feb3c8588bb7a4c7d95b36549d7d659aa585.wgsl" + }, + { + "node": "view_29", + "inputs": [ + "linear_48" + ], + "output": "view_29", + "workgroups": [ + 18432, + 1, + 1 + ], + "kernel": "kernels/aa4338d1d1db5ac8a6118b17c86acc608c6e0d04c15bfa03f804239b25a9e0b8.wgsl" + }, + { + "node": "permute_12", + "inputs": [ + "view_29" + ], + "output": "permute_12", + "workgroups": [ + 18432, + 1, + 1 + ], + "kernel": "kernels/43d939664a4898e8f9c04ba1dd333e6362d7bee1f0456b0af948d44eb3c8bf69.wgsl" + }, + { + "node": "select_36", + "inputs": [ + "permute_12" + ], + "output": "select_36", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/bf0b301adba19cff55fabb374d25f7a4d0a19137bf03c230bacedf36aefe0cf7.wgsl" + }, + { + "node": "select_37", + "inputs": [ + "permute_12" + ], + "output": "select_37", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/3c0b9a1663ed41b254264c799f5e37cbfd75209c8a1f8be9437bd7fb83fc38d1.wgsl" + }, + { + "node": "select_38", + "inputs": [ + "permute_12" + ], + "output": "select_38", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/a8bb5542d2f9b9f034f69ca618344f167111d00b9a33029671cb28071030050f.wgsl" + }, + { + "node": "unsqueeze_62", + "inputs": [ + "cos" + ], + "output": "unsqueeze_62", + "workgroups": [ + 384, + 1, + 1 + ], + "kernel": "kernels/8898353d0c367a3982a48d416f6777c3ce7a854572eeaf55843f3e7ee458c65d.wgsl" + }, + { + "node": "unsqueeze_63", + "inputs": [ + "sin" + ], + "output": "unsqueeze_63", + "workgroups": [ + 384, + 1, + 1 + ], + "kernel": "kernels/8898353d0c367a3982a48d416f6777c3ce7a854572eeaf55843f3e7ee458c65d.wgsl" + }, + { + "node": "mul_62", + "inputs": [ + "select_36", + "unsqueeze_62" + ], + "output": "mul_62", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "slice_85", + "inputs": [ + "select_36" + ], + "output": "slice_85", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/8980fed160483970508ad7c086f577b51f2b9c3979a00a70776bd65014fc9ccb.wgsl" + }, + { + "node": "slice_86", + "inputs": [ + "select_36" + ], + "output": "slice_86", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2f9ddba9feddcad74fa4a71c8fc02b4b3180c81a6a722f23ceeb94d2dac47b79.wgsl" + }, + { + "node": "neg_24", + "inputs": [ + "slice_86" + ], + "output": "neg_24", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2560bc16afb7b24fa8159af43aa0e509517ac7487bd3dc4e91697682ab604494.wgsl" + }, + { + "node": "cat_37", + "inputs": [ + "neg_24", + "slice_85" + ], + "output": "cat_37", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/2303343653b8442a4c17bedfc99130a7d627720f65d72cb7b639124717225342.wgsl" + }, + { + "node": "mul_63", + "inputs": [ + "cat_37", + "unsqueeze_63" + ], + "output": "mul_63", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "add_49", + "inputs": [ + "mul_62", + "mul_63" + ], + "output": "add_49", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "mul_64", + "inputs": [ + "select_37", + "unsqueeze_62" + ], + "output": "mul_64", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "slice_87", + "inputs": [ + "select_37" + ], + "output": "slice_87", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/8980fed160483970508ad7c086f577b51f2b9c3979a00a70776bd65014fc9ccb.wgsl" + }, + { + "node": "slice_88", + "inputs": [ + "select_37" + ], + "output": "slice_88", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2f9ddba9feddcad74fa4a71c8fc02b4b3180c81a6a722f23ceeb94d2dac47b79.wgsl" + }, + { + "node": "neg_25", + "inputs": [ + "slice_88" + ], + "output": "neg_25", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2560bc16afb7b24fa8159af43aa0e509517ac7487bd3dc4e91697682ab604494.wgsl" + }, + { + "node": "cat_38", + "inputs": [ + "neg_25", + "slice_87" + ], + "output": "cat_38", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/2303343653b8442a4c17bedfc99130a7d627720f65d72cb7b639124717225342.wgsl" + }, + { + "node": "mul_65", + "inputs": [ + "cat_38", + "unsqueeze_63" + ], + "output": "mul_65", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "add_50", + "inputs": [ + "mul_64", + "mul_65" + ], + "output": "add_50", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "transpose_60", + "inputs": [ + "add_49" + ], + "output": "transpose_60", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_64", + "inputs": [ + "transpose_60" + ], + "output": "unsqueeze_64", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "transpose_61", + "inputs": [ + "add_50" + ], + "output": "transpose_61", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_65", + "inputs": [ + "transpose_61" + ], + "output": "unsqueeze_65", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "transpose_62", + "inputs": [ + "select_38" + ], + "output": "transpose_62", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_66", + "inputs": [ + "transpose_62" + ], + "output": "unsqueeze_66", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "slice_89", + "inputs": [ + "unsqueeze_64" + ], + "output": "slice_89", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "slice_90", + "inputs": [ + "unsqueeze_65" + ], + "output": "slice_90", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "slice_91", + "inputs": [ + "unsqueeze_66" + ], + "output": "slice_91", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "transpose_63", + "inputs": [ + "slice_90" + ], + "output": "transpose_63", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/78da066223c17c00b73f3f0437cb9cb82a1265761ad2d76ba4fdba9755d9a3af.wgsl" + }, + { + "node": "matmul_24", + "inputs": [ + "slice_89", + "transpose_63" + ], + "output": "matmul_24", + "workgroups": [ + 36864, + 1, + 1 + ], + "kernel": "kernels/458bf9f5b442f2d9df5267b054e0f412be6e1dd51def1e238871999aa48752de.wgsl" + }, + { + "node": "mul_66", + "inputs": [ + "matmul_24" + ], + "output": "mul_66", + "workgroups": [ + 36864, + 1, + 1 + ], + "kernel": "kernels/e075bc3ef90433a5223d55b1147384e7d4aa10ed5ec6519ed674279f26217ac5.wgsl" + }, + { + "node": "softmax_12", + "inputs": [ + "mul_66" + ], + "output": "softmax_12", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/a4ff44a4eb2d671bdefe9bd97cb77a09117c03f9447a9ff01f546de3842e2ebc.wgsl" + }, + { + "node": "matmul_25", + "inputs": [ + "softmax_12", + "slice_91" + ], + "output": "matmul_25", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/5271dca1a483428217590e5170b6a426874a234120fbee14a75e11b9faadee03.wgsl" + }, + { + "node": "transpose_64", + "inputs": [ + "matmul_25" + ], + "output": "transpose_64", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/47f78f971967ea28b861f83844879dfdfc0f10936de7fb9c56a4b8592280ec88.wgsl" + }, + { + "node": "clone_12", + "inputs": [ + "transpose_64" + ], + "output": "clone_12", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "cat_39", + "inputs": [ + "clone_12" + ], + "output": "cat_39", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/0a63ee401744e4da485ba317e4a798eea6e6827ae4e59fd730d73ef2dd16e91f.wgsl" + }, + { + "node": "view_30", + "inputs": [ + "cat_39" + ], + "output": "view_30", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "linear_49", + "inputs": [ + "view_30", + "p_visual_blocks_12_attn_proj_weight", + "p_visual_blocks_12_attn_proj_bias" + ], + "output": "linear_49", + "workgroups": [ + 128, + 48, + 1 + ], + "kernel": "kernels/541dedaba172d332aa5f9b78409cd0a49ead48fd2200f67a4984fdeec5664d7c.wgsl" + }, + { + "node": "add_51", + "inputs": [ + "add_48", + "linear_49" + ], + "output": "add_51", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "layer_norm_25", + "inputs": [ + "add_51", + "p_visual_blocks_12_norm2_weight", + "p_visual_blocks_12_norm2_bias" + ], + "output": "layer_norm_25", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/13bcf8d207e7732db735911a6b01201a40428d9f90a835424287d741980d0477.wgsl" + }, + { + "node": "linear_50", + "inputs": [ + "layer_norm_25", + "p_visual_blocks_12_mlp_linear_fc1_weight", + "p_visual_blocks_12_mlp_linear_fc1_bias" + ], + "output": "linear_50", + "workgroups": [ + 512, + 48, + 1 + ], + "kernel": "kernels/278a47f30fab25fda40f1b3f856f14423ee2a89eddd52c8449cab8272befeb49.wgsl" + }, + { + "node": "gelu_12", + "inputs": [ + "linear_50" + ], + "output": "gelu_12", + "workgroups": [ + 24576, + 1, + 1 + ], + "kernel": "kernels/367142dda65caa73aeb0a439dc4e658fd68a839f2ea38435d5dd665c211c8172.wgsl" + }, + { + "node": "linear_51", + "inputs": [ + "gelu_12", + "p_visual_blocks_12_mlp_linear_fc2_weight", + "p_visual_blocks_12_mlp_linear_fc2_bias" + ], + "output": "linear_51", + "workgroups": [ + 128, + 48, + 1 + ], + "kernel": "kernels/7927e7ea9f061b32c446ff19f676ac9467c35b991b07e422c4c9de7950cfce1b.wgsl" + }, + { + "node": "add_52", + "inputs": [ + "add_51", + "linear_51" + ], + "output": "add_52", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "layer_norm_26", + "inputs": [ + "add_52", + "p_visual_blocks_13_norm1_weight", + "p_visual_blocks_13_norm1_bias" + ], + "output": "layer_norm_26", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/13bcf8d207e7732db735911a6b01201a40428d9f90a835424287d741980d0477.wgsl" + }, + { + "node": "linear_52", + "inputs": [ + "layer_norm_26", + "p_visual_blocks_13_attn_qkv_weight", + "p_visual_blocks_13_attn_qkv_bias" + ], + "output": "linear_52", + "workgroups": [ + 384, + 48, + 1 + ], + "kernel": "kernels/dba4024ae699580d26c2a885b514feb3c8588bb7a4c7d95b36549d7d659aa585.wgsl" + }, + { + "node": "view_31", + "inputs": [ + "linear_52" + ], + "output": "view_31", + "workgroups": [ + 18432, + 1, + 1 + ], + "kernel": "kernels/aa4338d1d1db5ac8a6118b17c86acc608c6e0d04c15bfa03f804239b25a9e0b8.wgsl" + }, + { + "node": "permute_13", + "inputs": [ + "view_31" + ], + "output": "permute_13", + "workgroups": [ + 18432, + 1, + 1 + ], + "kernel": "kernels/43d939664a4898e8f9c04ba1dd333e6362d7bee1f0456b0af948d44eb3c8bf69.wgsl" + }, + { + "node": "select_39", + "inputs": [ + "permute_13" + ], + "output": "select_39", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/bf0b301adba19cff55fabb374d25f7a4d0a19137bf03c230bacedf36aefe0cf7.wgsl" + }, + { + "node": "select_40", + "inputs": [ + "permute_13" + ], + "output": "select_40", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/3c0b9a1663ed41b254264c799f5e37cbfd75209c8a1f8be9437bd7fb83fc38d1.wgsl" + }, + { + "node": "select_41", + "inputs": [ + "permute_13" + ], + "output": "select_41", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/a8bb5542d2f9b9f034f69ca618344f167111d00b9a33029671cb28071030050f.wgsl" + }, + { + "node": "unsqueeze_67", + "inputs": [ + "cos" + ], + "output": "unsqueeze_67", + "workgroups": [ + 384, + 1, + 1 + ], + "kernel": "kernels/8898353d0c367a3982a48d416f6777c3ce7a854572eeaf55843f3e7ee458c65d.wgsl" + }, + { + "node": "unsqueeze_68", + "inputs": [ + "sin" + ], + "output": "unsqueeze_68", + "workgroups": [ + 384, + 1, + 1 + ], + "kernel": "kernels/8898353d0c367a3982a48d416f6777c3ce7a854572eeaf55843f3e7ee458c65d.wgsl" + }, + { + "node": "mul_67", + "inputs": [ + "select_39", + "unsqueeze_67" + ], + "output": "mul_67", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "slice_92", + "inputs": [ + "select_39" + ], + "output": "slice_92", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/8980fed160483970508ad7c086f577b51f2b9c3979a00a70776bd65014fc9ccb.wgsl" + }, + { + "node": "slice_93", + "inputs": [ + "select_39" + ], + "output": "slice_93", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2f9ddba9feddcad74fa4a71c8fc02b4b3180c81a6a722f23ceeb94d2dac47b79.wgsl" + }, + { + "node": "neg_26", + "inputs": [ + "slice_93" + ], + "output": "neg_26", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2560bc16afb7b24fa8159af43aa0e509517ac7487bd3dc4e91697682ab604494.wgsl" + }, + { + "node": "cat_40", + "inputs": [ + "neg_26", + "slice_92" + ], + "output": "cat_40", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/2303343653b8442a4c17bedfc99130a7d627720f65d72cb7b639124717225342.wgsl" + }, + { + "node": "mul_68", + "inputs": [ + "cat_40", + "unsqueeze_68" + ], + "output": "mul_68", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "add_53", + "inputs": [ + "mul_67", + "mul_68" + ], + "output": "add_53", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "mul_69", + "inputs": [ + "select_40", + "unsqueeze_67" + ], + "output": "mul_69", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "slice_94", + "inputs": [ + "select_40" + ], + "output": "slice_94", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/8980fed160483970508ad7c086f577b51f2b9c3979a00a70776bd65014fc9ccb.wgsl" + }, + { + "node": "slice_95", + "inputs": [ + "select_40" + ], + "output": "slice_95", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2f9ddba9feddcad74fa4a71c8fc02b4b3180c81a6a722f23ceeb94d2dac47b79.wgsl" + }, + { + "node": "neg_27", + "inputs": [ + "slice_95" + ], + "output": "neg_27", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2560bc16afb7b24fa8159af43aa0e509517ac7487bd3dc4e91697682ab604494.wgsl" + }, + { + "node": "cat_41", + "inputs": [ + "neg_27", + "slice_94" + ], + "output": "cat_41", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/2303343653b8442a4c17bedfc99130a7d627720f65d72cb7b639124717225342.wgsl" + }, + { + "node": "mul_70", + "inputs": [ + "cat_41", + "unsqueeze_68" + ], + "output": "mul_70", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "add_54", + "inputs": [ + "mul_69", + "mul_70" + ], + "output": "add_54", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "transpose_65", + "inputs": [ + "add_53" + ], + "output": "transpose_65", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_69", + "inputs": [ + "transpose_65" + ], + "output": "unsqueeze_69", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "transpose_66", + "inputs": [ + "add_54" + ], + "output": "transpose_66", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_70", + "inputs": [ + "transpose_66" + ], + "output": "unsqueeze_70", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "transpose_67", + "inputs": [ + "select_41" + ], + "output": "transpose_67", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_71", + "inputs": [ + "transpose_67" + ], + "output": "unsqueeze_71", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "slice_96", + "inputs": [ + "unsqueeze_69" + ], + "output": "slice_96", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "slice_97", + "inputs": [ + "unsqueeze_70" + ], + "output": "slice_97", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "slice_98", + "inputs": [ + "unsqueeze_71" + ], + "output": "slice_98", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "transpose_68", + "inputs": [ + "slice_97" + ], + "output": "transpose_68", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/78da066223c17c00b73f3f0437cb9cb82a1265761ad2d76ba4fdba9755d9a3af.wgsl" + }, + { + "node": "matmul_26", + "inputs": [ + "slice_96", + "transpose_68" + ], + "output": "matmul_26", + "workgroups": [ + 36864, + 1, + 1 + ], + "kernel": "kernels/458bf9f5b442f2d9df5267b054e0f412be6e1dd51def1e238871999aa48752de.wgsl" + }, + { + "node": "mul_71", + "inputs": [ + "matmul_26" + ], + "output": "mul_71", + "workgroups": [ + 36864, + 1, + 1 + ], + "kernel": "kernels/e075bc3ef90433a5223d55b1147384e7d4aa10ed5ec6519ed674279f26217ac5.wgsl" + }, + { + "node": "softmax_13", + "inputs": [ + "mul_71" + ], + "output": "softmax_13", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/a4ff44a4eb2d671bdefe9bd97cb77a09117c03f9447a9ff01f546de3842e2ebc.wgsl" + }, + { + "node": "matmul_27", + "inputs": [ + "softmax_13", + "slice_98" + ], + "output": "matmul_27", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/5271dca1a483428217590e5170b6a426874a234120fbee14a75e11b9faadee03.wgsl" + }, + { + "node": "transpose_69", + "inputs": [ + "matmul_27" + ], + "output": "transpose_69", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/47f78f971967ea28b861f83844879dfdfc0f10936de7fb9c56a4b8592280ec88.wgsl" + }, + { + "node": "clone_13", + "inputs": [ + "transpose_69" + ], + "output": "clone_13", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "cat_42", + "inputs": [ + "clone_13" + ], + "output": "cat_42", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/0a63ee401744e4da485ba317e4a798eea6e6827ae4e59fd730d73ef2dd16e91f.wgsl" + }, + { + "node": "view_32", + "inputs": [ + "cat_42" + ], + "output": "view_32", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "linear_53", + "inputs": [ + "view_32", + "p_visual_blocks_13_attn_proj_weight", + "p_visual_blocks_13_attn_proj_bias" + ], + "output": "linear_53", + "workgroups": [ + 128, + 48, + 1 + ], + "kernel": "kernels/541dedaba172d332aa5f9b78409cd0a49ead48fd2200f67a4984fdeec5664d7c.wgsl" + }, + { + "node": "add_55", + "inputs": [ + "add_52", + "linear_53" + ], + "output": "add_55", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "layer_norm_27", + "inputs": [ + "add_55", + "p_visual_blocks_13_norm2_weight", + "p_visual_blocks_13_norm2_bias" + ], + "output": "layer_norm_27", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/13bcf8d207e7732db735911a6b01201a40428d9f90a835424287d741980d0477.wgsl" + }, + { + "node": "linear_54", + "inputs": [ + "layer_norm_27", + "p_visual_blocks_13_mlp_linear_fc1_weight", + "p_visual_blocks_13_mlp_linear_fc1_bias" + ], + "output": "linear_54", + "workgroups": [ + 512, + 48, + 1 + ], + "kernel": "kernels/278a47f30fab25fda40f1b3f856f14423ee2a89eddd52c8449cab8272befeb49.wgsl" + }, + { + "node": "gelu_13", + "inputs": [ + "linear_54" + ], + "output": "gelu_13", + "workgroups": [ + 24576, + 1, + 1 + ], + "kernel": "kernels/367142dda65caa73aeb0a439dc4e658fd68a839f2ea38435d5dd665c211c8172.wgsl" + }, + { + "node": "linear_55", + "inputs": [ + "gelu_13", + "p_visual_blocks_13_mlp_linear_fc2_weight", + "p_visual_blocks_13_mlp_linear_fc2_bias" + ], + "output": "linear_55", + "workgroups": [ + 128, + 48, + 1 + ], + "kernel": "kernels/7927e7ea9f061b32c446ff19f676ac9467c35b991b07e422c4c9de7950cfce1b.wgsl" + }, + { + "node": "add_56", + "inputs": [ + "add_55", + "linear_55" + ], + "output": "add_56", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "layer_norm_28", + "inputs": [ + "add_56", + "p_visual_blocks_14_norm1_weight", + "p_visual_blocks_14_norm1_bias" + ], + "output": "layer_norm_28", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/13bcf8d207e7732db735911a6b01201a40428d9f90a835424287d741980d0477.wgsl" + }, + { + "node": "linear_56", + "inputs": [ + "layer_norm_28", + "p_visual_blocks_14_attn_qkv_weight", + "p_visual_blocks_14_attn_qkv_bias" + ], + "output": "linear_56", + "workgroups": [ + 384, + 48, + 1 + ], + "kernel": "kernels/dba4024ae699580d26c2a885b514feb3c8588bb7a4c7d95b36549d7d659aa585.wgsl" + }, + { + "node": "view_33", + "inputs": [ + "linear_56" + ], + "output": "view_33", + "workgroups": [ + 18432, + 1, + 1 + ], + "kernel": "kernels/aa4338d1d1db5ac8a6118b17c86acc608c6e0d04c15bfa03f804239b25a9e0b8.wgsl" + }, + { + "node": "permute_14", + "inputs": [ + "view_33" + ], + "output": "permute_14", + "workgroups": [ + 18432, + 1, + 1 + ], + "kernel": "kernels/43d939664a4898e8f9c04ba1dd333e6362d7bee1f0456b0af948d44eb3c8bf69.wgsl" + }, + { + "node": "select_42", + "inputs": [ + "permute_14" + ], + "output": "select_42", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/bf0b301adba19cff55fabb374d25f7a4d0a19137bf03c230bacedf36aefe0cf7.wgsl" + }, + { + "node": "select_43", + "inputs": [ + "permute_14" + ], + "output": "select_43", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/3c0b9a1663ed41b254264c799f5e37cbfd75209c8a1f8be9437bd7fb83fc38d1.wgsl" + }, + { + "node": "select_44", + "inputs": [ + "permute_14" + ], + "output": "select_44", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/a8bb5542d2f9b9f034f69ca618344f167111d00b9a33029671cb28071030050f.wgsl" + }, + { + "node": "unsqueeze_72", + "inputs": [ + "cos" + ], + "output": "unsqueeze_72", + "workgroups": [ + 384, + 1, + 1 + ], + "kernel": "kernels/8898353d0c367a3982a48d416f6777c3ce7a854572eeaf55843f3e7ee458c65d.wgsl" + }, + { + "node": "unsqueeze_73", + "inputs": [ + "sin" + ], + "output": "unsqueeze_73", + "workgroups": [ + 384, + 1, + 1 + ], + "kernel": "kernels/8898353d0c367a3982a48d416f6777c3ce7a854572eeaf55843f3e7ee458c65d.wgsl" + }, + { + "node": "mul_72", + "inputs": [ + "select_42", + "unsqueeze_72" + ], + "output": "mul_72", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "slice_99", + "inputs": [ + "select_42" + ], + "output": "slice_99", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/8980fed160483970508ad7c086f577b51f2b9c3979a00a70776bd65014fc9ccb.wgsl" + }, + { + "node": "slice_100", + "inputs": [ + "select_42" + ], + "output": "slice_100", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2f9ddba9feddcad74fa4a71c8fc02b4b3180c81a6a722f23ceeb94d2dac47b79.wgsl" + }, + { + "node": "neg_28", + "inputs": [ + "slice_100" + ], + "output": "neg_28", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2560bc16afb7b24fa8159af43aa0e509517ac7487bd3dc4e91697682ab604494.wgsl" + }, + { + "node": "cat_43", + "inputs": [ + "neg_28", + "slice_99" + ], + "output": "cat_43", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/2303343653b8442a4c17bedfc99130a7d627720f65d72cb7b639124717225342.wgsl" + }, + { + "node": "mul_73", + "inputs": [ + "cat_43", + "unsqueeze_73" + ], + "output": "mul_73", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "add_57", + "inputs": [ + "mul_72", + "mul_73" + ], + "output": "add_57", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "mul_74", + "inputs": [ + "select_43", + "unsqueeze_72" + ], + "output": "mul_74", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "slice_101", + "inputs": [ + "select_43" + ], + "output": "slice_101", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/8980fed160483970508ad7c086f577b51f2b9c3979a00a70776bd65014fc9ccb.wgsl" + }, + { + "node": "slice_102", + "inputs": [ + "select_43" + ], + "output": "slice_102", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2f9ddba9feddcad74fa4a71c8fc02b4b3180c81a6a722f23ceeb94d2dac47b79.wgsl" + }, + { + "node": "neg_29", + "inputs": [ + "slice_102" + ], + "output": "neg_29", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2560bc16afb7b24fa8159af43aa0e509517ac7487bd3dc4e91697682ab604494.wgsl" + }, + { + "node": "cat_44", + "inputs": [ + "neg_29", + "slice_101" + ], + "output": "cat_44", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/2303343653b8442a4c17bedfc99130a7d627720f65d72cb7b639124717225342.wgsl" + }, + { + "node": "mul_75", + "inputs": [ + "cat_44", + "unsqueeze_73" + ], + "output": "mul_75", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "add_58", + "inputs": [ + "mul_74", + "mul_75" + ], + "output": "add_58", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "transpose_70", + "inputs": [ + "add_57" + ], + "output": "transpose_70", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_74", + "inputs": [ + "transpose_70" + ], + "output": "unsqueeze_74", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "transpose_71", + "inputs": [ + "add_58" + ], + "output": "transpose_71", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_75", + "inputs": [ + "transpose_71" + ], + "output": "unsqueeze_75", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "transpose_72", + "inputs": [ + "select_44" + ], + "output": "transpose_72", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_76", + "inputs": [ + "transpose_72" + ], + "output": "unsqueeze_76", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "slice_103", + "inputs": [ + "unsqueeze_74" + ], + "output": "slice_103", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "slice_104", + "inputs": [ + "unsqueeze_75" + ], + "output": "slice_104", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "slice_105", + "inputs": [ + "unsqueeze_76" + ], + "output": "slice_105", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "transpose_73", + "inputs": [ + "slice_104" + ], + "output": "transpose_73", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/78da066223c17c00b73f3f0437cb9cb82a1265761ad2d76ba4fdba9755d9a3af.wgsl" + }, + { + "node": "matmul_28", + "inputs": [ + "slice_103", + "transpose_73" + ], + "output": "matmul_28", + "workgroups": [ + 36864, + 1, + 1 + ], + "kernel": "kernels/458bf9f5b442f2d9df5267b054e0f412be6e1dd51def1e238871999aa48752de.wgsl" + }, + { + "node": "mul_76", + "inputs": [ + "matmul_28" + ], + "output": "mul_76", + "workgroups": [ + 36864, + 1, + 1 + ], + "kernel": "kernels/e075bc3ef90433a5223d55b1147384e7d4aa10ed5ec6519ed674279f26217ac5.wgsl" + }, + { + "node": "softmax_14", + "inputs": [ + "mul_76" + ], + "output": "softmax_14", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/a4ff44a4eb2d671bdefe9bd97cb77a09117c03f9447a9ff01f546de3842e2ebc.wgsl" + }, + { + "node": "matmul_29", + "inputs": [ + "softmax_14", + "slice_105" + ], + "output": "matmul_29", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/5271dca1a483428217590e5170b6a426874a234120fbee14a75e11b9faadee03.wgsl" + }, + { + "node": "transpose_74", + "inputs": [ + "matmul_29" + ], + "output": "transpose_74", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/47f78f971967ea28b861f83844879dfdfc0f10936de7fb9c56a4b8592280ec88.wgsl" + }, + { + "node": "clone_14", + "inputs": [ + "transpose_74" + ], + "output": "clone_14", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "cat_45", + "inputs": [ + "clone_14" + ], + "output": "cat_45", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/0a63ee401744e4da485ba317e4a798eea6e6827ae4e59fd730d73ef2dd16e91f.wgsl" + }, + { + "node": "view_34", + "inputs": [ + "cat_45" + ], + "output": "view_34", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "linear_57", + "inputs": [ + "view_34", + "p_visual_blocks_14_attn_proj_weight", + "p_visual_blocks_14_attn_proj_bias" + ], + "output": "linear_57", + "workgroups": [ + 128, + 48, + 1 + ], + "kernel": "kernels/541dedaba172d332aa5f9b78409cd0a49ead48fd2200f67a4984fdeec5664d7c.wgsl" + }, + { + "node": "add_59", + "inputs": [ + "add_56", + "linear_57" + ], + "output": "add_59", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "layer_norm_29", + "inputs": [ + "add_59", + "p_visual_blocks_14_norm2_weight", + "p_visual_blocks_14_norm2_bias" + ], + "output": "layer_norm_29", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/13bcf8d207e7732db735911a6b01201a40428d9f90a835424287d741980d0477.wgsl" + }, + { + "node": "linear_58", + "inputs": [ + "layer_norm_29", + "p_visual_blocks_14_mlp_linear_fc1_weight", + "p_visual_blocks_14_mlp_linear_fc1_bias" + ], + "output": "linear_58", + "workgroups": [ + 512, + 48, + 1 + ], + "kernel": "kernels/278a47f30fab25fda40f1b3f856f14423ee2a89eddd52c8449cab8272befeb49.wgsl" + }, + { + "node": "gelu_14", + "inputs": [ + "linear_58" + ], + "output": "gelu_14", + "workgroups": [ + 24576, + 1, + 1 + ], + "kernel": "kernels/367142dda65caa73aeb0a439dc4e658fd68a839f2ea38435d5dd665c211c8172.wgsl" + }, + { + "node": "linear_59", + "inputs": [ + "gelu_14", + "p_visual_blocks_14_mlp_linear_fc2_weight", + "p_visual_blocks_14_mlp_linear_fc2_bias" + ], + "output": "linear_59", + "workgroups": [ + 128, + 48, + 1 + ], + "kernel": "kernels/7927e7ea9f061b32c446ff19f676ac9467c35b991b07e422c4c9de7950cfce1b.wgsl" + }, + { + "node": "add_60", + "inputs": [ + "add_59", + "linear_59" + ], + "output": "add_60", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "layer_norm_30", + "inputs": [ + "add_60", + "p_visual_blocks_15_norm1_weight", + "p_visual_blocks_15_norm1_bias" + ], + "output": "layer_norm_30", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/13bcf8d207e7732db735911a6b01201a40428d9f90a835424287d741980d0477.wgsl" + }, + { + "node": "linear_60", + "inputs": [ + "layer_norm_30", + "p_visual_blocks_15_attn_qkv_weight", + "p_visual_blocks_15_attn_qkv_bias" + ], + "output": "linear_60", + "workgroups": [ + 384, + 48, + 1 + ], + "kernel": "kernels/dba4024ae699580d26c2a885b514feb3c8588bb7a4c7d95b36549d7d659aa585.wgsl" + }, + { + "node": "view_35", + "inputs": [ + "linear_60" + ], + "output": "view_35", + "workgroups": [ + 18432, + 1, + 1 + ], + "kernel": "kernels/aa4338d1d1db5ac8a6118b17c86acc608c6e0d04c15bfa03f804239b25a9e0b8.wgsl" + }, + { + "node": "permute_15", + "inputs": [ + "view_35" + ], + "output": "permute_15", + "workgroups": [ + 18432, + 1, + 1 + ], + "kernel": "kernels/43d939664a4898e8f9c04ba1dd333e6362d7bee1f0456b0af948d44eb3c8bf69.wgsl" + }, + { + "node": "select_45", + "inputs": [ + "permute_15" + ], + "output": "select_45", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/bf0b301adba19cff55fabb374d25f7a4d0a19137bf03c230bacedf36aefe0cf7.wgsl" + }, + { + "node": "select_46", + "inputs": [ + "permute_15" + ], + "output": "select_46", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/3c0b9a1663ed41b254264c799f5e37cbfd75209c8a1f8be9437bd7fb83fc38d1.wgsl" + }, + { + "node": "select_47", + "inputs": [ + "permute_15" + ], + "output": "select_47", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/a8bb5542d2f9b9f034f69ca618344f167111d00b9a33029671cb28071030050f.wgsl" + }, + { + "node": "unsqueeze_77", + "inputs": [ + "cos" + ], + "output": "unsqueeze_77", + "workgroups": [ + 384, + 1, + 1 + ], + "kernel": "kernels/8898353d0c367a3982a48d416f6777c3ce7a854572eeaf55843f3e7ee458c65d.wgsl" + }, + { + "node": "unsqueeze_78", + "inputs": [ + "sin" + ], + "output": "unsqueeze_78", + "workgroups": [ + 384, + 1, + 1 + ], + "kernel": "kernels/8898353d0c367a3982a48d416f6777c3ce7a854572eeaf55843f3e7ee458c65d.wgsl" + }, + { + "node": "mul_77", + "inputs": [ + "select_45", + "unsqueeze_77" + ], + "output": "mul_77", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "slice_106", + "inputs": [ + "select_45" + ], + "output": "slice_106", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/8980fed160483970508ad7c086f577b51f2b9c3979a00a70776bd65014fc9ccb.wgsl" + }, + { + "node": "slice_107", + "inputs": [ + "select_45" + ], + "output": "slice_107", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2f9ddba9feddcad74fa4a71c8fc02b4b3180c81a6a722f23ceeb94d2dac47b79.wgsl" + }, + { + "node": "neg_30", + "inputs": [ + "slice_107" + ], + "output": "neg_30", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2560bc16afb7b24fa8159af43aa0e509517ac7487bd3dc4e91697682ab604494.wgsl" + }, + { + "node": "cat_46", + "inputs": [ + "neg_30", + "slice_106" + ], + "output": "cat_46", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/2303343653b8442a4c17bedfc99130a7d627720f65d72cb7b639124717225342.wgsl" + }, + { + "node": "mul_78", + "inputs": [ + "cat_46", + "unsqueeze_78" + ], + "output": "mul_78", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "add_61", + "inputs": [ + "mul_77", + "mul_78" + ], + "output": "add_61", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "mul_79", + "inputs": [ + "select_46", + "unsqueeze_77" + ], + "output": "mul_79", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "slice_108", + "inputs": [ + "select_46" + ], + "output": "slice_108", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/8980fed160483970508ad7c086f577b51f2b9c3979a00a70776bd65014fc9ccb.wgsl" + }, + { + "node": "slice_109", + "inputs": [ + "select_46" + ], + "output": "slice_109", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2f9ddba9feddcad74fa4a71c8fc02b4b3180c81a6a722f23ceeb94d2dac47b79.wgsl" + }, + { + "node": "neg_31", + "inputs": [ + "slice_109" + ], + "output": "neg_31", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2560bc16afb7b24fa8159af43aa0e509517ac7487bd3dc4e91697682ab604494.wgsl" + }, + { + "node": "cat_47", + "inputs": [ + "neg_31", + "slice_108" + ], + "output": "cat_47", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/2303343653b8442a4c17bedfc99130a7d627720f65d72cb7b639124717225342.wgsl" + }, + { + "node": "mul_80", + "inputs": [ + "cat_47", + "unsqueeze_78" + ], + "output": "mul_80", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "add_62", + "inputs": [ + "mul_79", + "mul_80" + ], + "output": "add_62", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "transpose_75", + "inputs": [ + "add_61" + ], + "output": "transpose_75", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_79", + "inputs": [ + "transpose_75" + ], + "output": "unsqueeze_79", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "transpose_76", + "inputs": [ + "add_62" + ], + "output": "transpose_76", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_80", + "inputs": [ + "transpose_76" + ], + "output": "unsqueeze_80", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "transpose_77", + "inputs": [ + "select_47" + ], + "output": "transpose_77", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_81", + "inputs": [ + "transpose_77" + ], + "output": "unsqueeze_81", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "slice_110", + "inputs": [ + "unsqueeze_79" + ], + "output": "slice_110", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "slice_111", + "inputs": [ + "unsqueeze_80" + ], + "output": "slice_111", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "slice_112", + "inputs": [ + "unsqueeze_81" + ], + "output": "slice_112", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "transpose_78", + "inputs": [ + "slice_111" + ], + "output": "transpose_78", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/78da066223c17c00b73f3f0437cb9cb82a1265761ad2d76ba4fdba9755d9a3af.wgsl" + }, + { + "node": "matmul_30", + "inputs": [ + "slice_110", + "transpose_78" + ], + "output": "matmul_30", + "workgroups": [ + 36864, + 1, + 1 + ], + "kernel": "kernels/458bf9f5b442f2d9df5267b054e0f412be6e1dd51def1e238871999aa48752de.wgsl" + }, + { + "node": "mul_81", + "inputs": [ + "matmul_30" + ], + "output": "mul_81", + "workgroups": [ + 36864, + 1, + 1 + ], + "kernel": "kernels/e075bc3ef90433a5223d55b1147384e7d4aa10ed5ec6519ed674279f26217ac5.wgsl" + }, + { + "node": "softmax_15", + "inputs": [ + "mul_81" + ], + "output": "softmax_15", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/a4ff44a4eb2d671bdefe9bd97cb77a09117c03f9447a9ff01f546de3842e2ebc.wgsl" + }, + { + "node": "matmul_31", + "inputs": [ + "softmax_15", + "slice_112" + ], + "output": "matmul_31", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/5271dca1a483428217590e5170b6a426874a234120fbee14a75e11b9faadee03.wgsl" + }, + { + "node": "transpose_79", + "inputs": [ + "matmul_31" + ], + "output": "transpose_79", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/47f78f971967ea28b861f83844879dfdfc0f10936de7fb9c56a4b8592280ec88.wgsl" + }, + { + "node": "clone_15", + "inputs": [ + "transpose_79" + ], + "output": "clone_15", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "cat_48", + "inputs": [ + "clone_15" + ], + "output": "cat_48", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/0a63ee401744e4da485ba317e4a798eea6e6827ae4e59fd730d73ef2dd16e91f.wgsl" + }, + { + "node": "view_36", + "inputs": [ + "cat_48" + ], + "output": "view_36", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "linear_61", + "inputs": [ + "view_36", + "p_visual_blocks_15_attn_proj_weight", + "p_visual_blocks_15_attn_proj_bias" + ], + "output": "linear_61", + "workgroups": [ + 128, + 48, + 1 + ], + "kernel": "kernels/541dedaba172d332aa5f9b78409cd0a49ead48fd2200f67a4984fdeec5664d7c.wgsl" + }, + { + "node": "add_63", + "inputs": [ + "add_60", + "linear_61" + ], + "output": "add_63", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "layer_norm_31", + "inputs": [ + "add_63", + "p_visual_blocks_15_norm2_weight", + "p_visual_blocks_15_norm2_bias" + ], + "output": "layer_norm_31", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/13bcf8d207e7732db735911a6b01201a40428d9f90a835424287d741980d0477.wgsl" + }, + { + "node": "linear_62", + "inputs": [ + "layer_norm_31", + "p_visual_blocks_15_mlp_linear_fc1_weight", + "p_visual_blocks_15_mlp_linear_fc1_bias" + ], + "output": "linear_62", + "workgroups": [ + 512, + 48, + 1 + ], + "kernel": "kernels/278a47f30fab25fda40f1b3f856f14423ee2a89eddd52c8449cab8272befeb49.wgsl" + }, + { + "node": "gelu_15", + "inputs": [ + "linear_62" + ], + "output": "gelu_15", + "workgroups": [ + 24576, + 1, + 1 + ], + "kernel": "kernels/367142dda65caa73aeb0a439dc4e658fd68a839f2ea38435d5dd665c211c8172.wgsl" + }, + { + "node": "linear_63", + "inputs": [ + "gelu_15", + "p_visual_blocks_15_mlp_linear_fc2_weight", + "p_visual_blocks_15_mlp_linear_fc2_bias" + ], + "output": "linear_63", + "workgroups": [ + 128, + 48, + 1 + ], + "kernel": "kernels/7927e7ea9f061b32c446ff19f676ac9467c35b991b07e422c4c9de7950cfce1b.wgsl" + }, + { + "node": "add_64", + "inputs": [ + "add_63", + "linear_63" + ], + "output": "add_64", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "layer_norm_32", + "inputs": [ + "add_64", + "p_visual_blocks_16_norm1_weight", + "p_visual_blocks_16_norm1_bias" + ], + "output": "layer_norm_32", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/13bcf8d207e7732db735911a6b01201a40428d9f90a835424287d741980d0477.wgsl" + }, + { + "node": "linear_64", + "inputs": [ + "layer_norm_32", + "p_visual_blocks_16_attn_qkv_weight", + "p_visual_blocks_16_attn_qkv_bias" + ], + "output": "linear_64", + "workgroups": [ + 384, + 48, + 1 + ], + "kernel": "kernels/dba4024ae699580d26c2a885b514feb3c8588bb7a4c7d95b36549d7d659aa585.wgsl" + }, + { + "node": "view_37", + "inputs": [ + "linear_64" + ], + "output": "view_37", + "workgroups": [ + 18432, + 1, + 1 + ], + "kernel": "kernels/aa4338d1d1db5ac8a6118b17c86acc608c6e0d04c15bfa03f804239b25a9e0b8.wgsl" + }, + { + "node": "permute_16", + "inputs": [ + "view_37" + ], + "output": "permute_16", + "workgroups": [ + 18432, + 1, + 1 + ], + "kernel": "kernels/43d939664a4898e8f9c04ba1dd333e6362d7bee1f0456b0af948d44eb3c8bf69.wgsl" + }, + { + "node": "select_48", + "inputs": [ + "permute_16" + ], + "output": "select_48", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/bf0b301adba19cff55fabb374d25f7a4d0a19137bf03c230bacedf36aefe0cf7.wgsl" + }, + { + "node": "select_49", + "inputs": [ + "permute_16" + ], + "output": "select_49", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/3c0b9a1663ed41b254264c799f5e37cbfd75209c8a1f8be9437bd7fb83fc38d1.wgsl" + }, + { + "node": "select_50", + "inputs": [ + "permute_16" + ], + "output": "select_50", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/a8bb5542d2f9b9f034f69ca618344f167111d00b9a33029671cb28071030050f.wgsl" + }, + { + "node": "unsqueeze_82", + "inputs": [ + "cos" + ], + "output": "unsqueeze_82", + "workgroups": [ + 384, + 1, + 1 + ], + "kernel": "kernels/8898353d0c367a3982a48d416f6777c3ce7a854572eeaf55843f3e7ee458c65d.wgsl" + }, + { + "node": "unsqueeze_83", + "inputs": [ + "sin" + ], + "output": "unsqueeze_83", + "workgroups": [ + 384, + 1, + 1 + ], + "kernel": "kernels/8898353d0c367a3982a48d416f6777c3ce7a854572eeaf55843f3e7ee458c65d.wgsl" + }, + { + "node": "mul_82", + "inputs": [ + "select_48", + "unsqueeze_82" + ], + "output": "mul_82", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "slice_113", + "inputs": [ + "select_48" + ], + "output": "slice_113", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/8980fed160483970508ad7c086f577b51f2b9c3979a00a70776bd65014fc9ccb.wgsl" + }, + { + "node": "slice_114", + "inputs": [ + "select_48" + ], + "output": "slice_114", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2f9ddba9feddcad74fa4a71c8fc02b4b3180c81a6a722f23ceeb94d2dac47b79.wgsl" + }, + { + "node": "neg_32", + "inputs": [ + "slice_114" + ], + "output": "neg_32", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2560bc16afb7b24fa8159af43aa0e509517ac7487bd3dc4e91697682ab604494.wgsl" + }, + { + "node": "cat_49", + "inputs": [ + "neg_32", + "slice_113" + ], + "output": "cat_49", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/2303343653b8442a4c17bedfc99130a7d627720f65d72cb7b639124717225342.wgsl" + }, + { + "node": "mul_83", + "inputs": [ + "cat_49", + "unsqueeze_83" + ], + "output": "mul_83", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "add_65", + "inputs": [ + "mul_82", + "mul_83" + ], + "output": "add_65", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "mul_84", + "inputs": [ + "select_49", + "unsqueeze_82" + ], + "output": "mul_84", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "slice_115", + "inputs": [ + "select_49" + ], + "output": "slice_115", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/8980fed160483970508ad7c086f577b51f2b9c3979a00a70776bd65014fc9ccb.wgsl" + }, + { + "node": "slice_116", + "inputs": [ + "select_49" + ], + "output": "slice_116", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2f9ddba9feddcad74fa4a71c8fc02b4b3180c81a6a722f23ceeb94d2dac47b79.wgsl" + }, + { + "node": "neg_33", + "inputs": [ + "slice_116" + ], + "output": "neg_33", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2560bc16afb7b24fa8159af43aa0e509517ac7487bd3dc4e91697682ab604494.wgsl" + }, + { + "node": "cat_50", + "inputs": [ + "neg_33", + "slice_115" + ], + "output": "cat_50", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/2303343653b8442a4c17bedfc99130a7d627720f65d72cb7b639124717225342.wgsl" + }, + { + "node": "mul_85", + "inputs": [ + "cat_50", + "unsqueeze_83" + ], + "output": "mul_85", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "add_66", + "inputs": [ + "mul_84", + "mul_85" + ], + "output": "add_66", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "transpose_80", + "inputs": [ + "add_65" + ], + "output": "transpose_80", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_84", + "inputs": [ + "transpose_80" + ], + "output": "unsqueeze_84", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "transpose_81", + "inputs": [ + "add_66" + ], + "output": "transpose_81", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_85", + "inputs": [ + "transpose_81" + ], + "output": "unsqueeze_85", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "transpose_82", + "inputs": [ + "select_50" + ], + "output": "transpose_82", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_86", + "inputs": [ + "transpose_82" + ], + "output": "unsqueeze_86", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "slice_117", + "inputs": [ + "unsqueeze_84" + ], + "output": "slice_117", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "slice_118", + "inputs": [ + "unsqueeze_85" + ], + "output": "slice_118", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "slice_119", + "inputs": [ + "unsqueeze_86" + ], + "output": "slice_119", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "transpose_83", + "inputs": [ + "slice_118" + ], + "output": "transpose_83", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/78da066223c17c00b73f3f0437cb9cb82a1265761ad2d76ba4fdba9755d9a3af.wgsl" + }, + { + "node": "matmul_32", + "inputs": [ + "slice_117", + "transpose_83" + ], + "output": "matmul_32", + "workgroups": [ + 36864, + 1, + 1 + ], + "kernel": "kernels/458bf9f5b442f2d9df5267b054e0f412be6e1dd51def1e238871999aa48752de.wgsl" + }, + { + "node": "mul_86", + "inputs": [ + "matmul_32" + ], + "output": "mul_86", + "workgroups": [ + 36864, + 1, + 1 + ], + "kernel": "kernels/e075bc3ef90433a5223d55b1147384e7d4aa10ed5ec6519ed674279f26217ac5.wgsl" + }, + { + "node": "softmax_16", + "inputs": [ + "mul_86" + ], + "output": "softmax_16", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/a4ff44a4eb2d671bdefe9bd97cb77a09117c03f9447a9ff01f546de3842e2ebc.wgsl" + }, + { + "node": "matmul_33", + "inputs": [ + "softmax_16", + "slice_119" + ], + "output": "matmul_33", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/5271dca1a483428217590e5170b6a426874a234120fbee14a75e11b9faadee03.wgsl" + }, + { + "node": "transpose_84", + "inputs": [ + "matmul_33" + ], + "output": "transpose_84", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/47f78f971967ea28b861f83844879dfdfc0f10936de7fb9c56a4b8592280ec88.wgsl" + }, + { + "node": "clone_16", + "inputs": [ + "transpose_84" + ], + "output": "clone_16", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "cat_51", + "inputs": [ + "clone_16" + ], + "output": "cat_51", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/0a63ee401744e4da485ba317e4a798eea6e6827ae4e59fd730d73ef2dd16e91f.wgsl" + }, + { + "node": "view_38", + "inputs": [ + "cat_51" + ], + "output": "view_38", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "linear_65", + "inputs": [ + "view_38", + "p_visual_blocks_16_attn_proj_weight", + "p_visual_blocks_16_attn_proj_bias" + ], + "output": "linear_65", + "workgroups": [ + 128, + 48, + 1 + ], + "kernel": "kernels/541dedaba172d332aa5f9b78409cd0a49ead48fd2200f67a4984fdeec5664d7c.wgsl" + }, + { + "node": "add_67", + "inputs": [ + "add_64", + "linear_65" + ], + "output": "add_67", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "layer_norm_33", + "inputs": [ + "add_67", + "p_visual_blocks_16_norm2_weight", + "p_visual_blocks_16_norm2_bias" + ], + "output": "layer_norm_33", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/13bcf8d207e7732db735911a6b01201a40428d9f90a835424287d741980d0477.wgsl" + }, + { + "node": "linear_66", + "inputs": [ + "layer_norm_33", + "p_visual_blocks_16_mlp_linear_fc1_weight", + "p_visual_blocks_16_mlp_linear_fc1_bias" + ], + "output": "linear_66", + "workgroups": [ + 512, + 48, + 1 + ], + "kernel": "kernels/278a47f30fab25fda40f1b3f856f14423ee2a89eddd52c8449cab8272befeb49.wgsl" + }, + { + "node": "gelu_16", + "inputs": [ + "linear_66" + ], + "output": "gelu_16", + "workgroups": [ + 24576, + 1, + 1 + ], + "kernel": "kernels/367142dda65caa73aeb0a439dc4e658fd68a839f2ea38435d5dd665c211c8172.wgsl" + }, + { + "node": "linear_67", + "inputs": [ + "gelu_16", + "p_visual_blocks_16_mlp_linear_fc2_weight", + "p_visual_blocks_16_mlp_linear_fc2_bias" + ], + "output": "linear_67", + "workgroups": [ + 128, + 48, + 1 + ], + "kernel": "kernels/7927e7ea9f061b32c446ff19f676ac9467c35b991b07e422c4c9de7950cfce1b.wgsl" + }, + { + "node": "add_68", + "inputs": [ + "add_67", + "linear_67" + ], + "output": "add_68", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "layer_norm_34", + "inputs": [ + "add_68", + "p_visual_blocks_17_norm1_weight", + "p_visual_blocks_17_norm1_bias" + ], + "output": "layer_norm_34", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/13bcf8d207e7732db735911a6b01201a40428d9f90a835424287d741980d0477.wgsl" + }, + { + "node": "linear_68", + "inputs": [ + "layer_norm_34", + "p_visual_blocks_17_attn_qkv_weight", + "p_visual_blocks_17_attn_qkv_bias" + ], + "output": "linear_68", + "workgroups": [ + 384, + 48, + 1 + ], + "kernel": "kernels/dba4024ae699580d26c2a885b514feb3c8588bb7a4c7d95b36549d7d659aa585.wgsl" + }, + { + "node": "view_39", + "inputs": [ + "linear_68" + ], + "output": "view_39", + "workgroups": [ + 18432, + 1, + 1 + ], + "kernel": "kernels/aa4338d1d1db5ac8a6118b17c86acc608c6e0d04c15bfa03f804239b25a9e0b8.wgsl" + }, + { + "node": "permute_17", + "inputs": [ + "view_39" + ], + "output": "permute_17", + "workgroups": [ + 18432, + 1, + 1 + ], + "kernel": "kernels/43d939664a4898e8f9c04ba1dd333e6362d7bee1f0456b0af948d44eb3c8bf69.wgsl" + }, + { + "node": "select_51", + "inputs": [ + "permute_17" + ], + "output": "select_51", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/bf0b301adba19cff55fabb374d25f7a4d0a19137bf03c230bacedf36aefe0cf7.wgsl" + }, + { + "node": "select_52", + "inputs": [ + "permute_17" + ], + "output": "select_52", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/3c0b9a1663ed41b254264c799f5e37cbfd75209c8a1f8be9437bd7fb83fc38d1.wgsl" + }, + { + "node": "select_53", + "inputs": [ + "permute_17" + ], + "output": "select_53", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/a8bb5542d2f9b9f034f69ca618344f167111d00b9a33029671cb28071030050f.wgsl" + }, + { + "node": "unsqueeze_87", + "inputs": [ + "cos" + ], + "output": "unsqueeze_87", + "workgroups": [ + 384, + 1, + 1 + ], + "kernel": "kernels/8898353d0c367a3982a48d416f6777c3ce7a854572eeaf55843f3e7ee458c65d.wgsl" + }, + { + "node": "unsqueeze_88", + "inputs": [ + "sin" + ], + "output": "unsqueeze_88", + "workgroups": [ + 384, + 1, + 1 + ], + "kernel": "kernels/8898353d0c367a3982a48d416f6777c3ce7a854572eeaf55843f3e7ee458c65d.wgsl" + }, + { + "node": "mul_87", + "inputs": [ + "select_51", + "unsqueeze_87" + ], + "output": "mul_87", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "slice_120", + "inputs": [ + "select_51" + ], + "output": "slice_120", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/8980fed160483970508ad7c086f577b51f2b9c3979a00a70776bd65014fc9ccb.wgsl" + }, + { + "node": "slice_121", + "inputs": [ + "select_51" + ], + "output": "slice_121", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2f9ddba9feddcad74fa4a71c8fc02b4b3180c81a6a722f23ceeb94d2dac47b79.wgsl" + }, + { + "node": "neg_34", + "inputs": [ + "slice_121" + ], + "output": "neg_34", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2560bc16afb7b24fa8159af43aa0e509517ac7487bd3dc4e91697682ab604494.wgsl" + }, + { + "node": "cat_52", + "inputs": [ + "neg_34", + "slice_120" + ], + "output": "cat_52", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/2303343653b8442a4c17bedfc99130a7d627720f65d72cb7b639124717225342.wgsl" + }, + { + "node": "mul_88", + "inputs": [ + "cat_52", + "unsqueeze_88" + ], + "output": "mul_88", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "add_69", + "inputs": [ + "mul_87", + "mul_88" + ], + "output": "add_69", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "mul_89", + "inputs": [ + "select_52", + "unsqueeze_87" + ], + "output": "mul_89", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "slice_122", + "inputs": [ + "select_52" + ], + "output": "slice_122", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/8980fed160483970508ad7c086f577b51f2b9c3979a00a70776bd65014fc9ccb.wgsl" + }, + { + "node": "slice_123", + "inputs": [ + "select_52" + ], + "output": "slice_123", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2f9ddba9feddcad74fa4a71c8fc02b4b3180c81a6a722f23ceeb94d2dac47b79.wgsl" + }, + { + "node": "neg_35", + "inputs": [ + "slice_123" + ], + "output": "neg_35", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2560bc16afb7b24fa8159af43aa0e509517ac7487bd3dc4e91697682ab604494.wgsl" + }, + { + "node": "cat_53", + "inputs": [ + "neg_35", + "slice_122" + ], + "output": "cat_53", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/2303343653b8442a4c17bedfc99130a7d627720f65d72cb7b639124717225342.wgsl" + }, + { + "node": "mul_90", + "inputs": [ + "cat_53", + "unsqueeze_88" + ], + "output": "mul_90", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "add_70", + "inputs": [ + "mul_89", + "mul_90" + ], + "output": "add_70", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "transpose_85", + "inputs": [ + "add_69" + ], + "output": "transpose_85", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_89", + "inputs": [ + "transpose_85" + ], + "output": "unsqueeze_89", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "transpose_86", + "inputs": [ + "add_70" + ], + "output": "transpose_86", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_90", + "inputs": [ + "transpose_86" + ], + "output": "unsqueeze_90", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "transpose_87", + "inputs": [ + "select_53" + ], + "output": "transpose_87", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_91", + "inputs": [ + "transpose_87" + ], + "output": "unsqueeze_91", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "slice_124", + "inputs": [ + "unsqueeze_89" + ], + "output": "slice_124", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "slice_125", + "inputs": [ + "unsqueeze_90" + ], + "output": "slice_125", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "slice_126", + "inputs": [ + "unsqueeze_91" + ], + "output": "slice_126", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "transpose_88", + "inputs": [ + "slice_125" + ], + "output": "transpose_88", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/78da066223c17c00b73f3f0437cb9cb82a1265761ad2d76ba4fdba9755d9a3af.wgsl" + }, + { + "node": "matmul_34", + "inputs": [ + "slice_124", + "transpose_88" + ], + "output": "matmul_34", + "workgroups": [ + 36864, + 1, + 1 + ], + "kernel": "kernels/458bf9f5b442f2d9df5267b054e0f412be6e1dd51def1e238871999aa48752de.wgsl" + }, + { + "node": "mul_91", + "inputs": [ + "matmul_34" + ], + "output": "mul_91", + "workgroups": [ + 36864, + 1, + 1 + ], + "kernel": "kernels/e075bc3ef90433a5223d55b1147384e7d4aa10ed5ec6519ed674279f26217ac5.wgsl" + }, + { + "node": "softmax_17", + "inputs": [ + "mul_91" + ], + "output": "softmax_17", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/a4ff44a4eb2d671bdefe9bd97cb77a09117c03f9447a9ff01f546de3842e2ebc.wgsl" + }, + { + "node": "matmul_35", + "inputs": [ + "softmax_17", + "slice_126" + ], + "output": "matmul_35", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/5271dca1a483428217590e5170b6a426874a234120fbee14a75e11b9faadee03.wgsl" + }, + { + "node": "transpose_89", + "inputs": [ + "matmul_35" + ], + "output": "transpose_89", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/47f78f971967ea28b861f83844879dfdfc0f10936de7fb9c56a4b8592280ec88.wgsl" + }, + { + "node": "clone_17", + "inputs": [ + "transpose_89" + ], + "output": "clone_17", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "cat_54", + "inputs": [ + "clone_17" + ], + "output": "cat_54", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/0a63ee401744e4da485ba317e4a798eea6e6827ae4e59fd730d73ef2dd16e91f.wgsl" + }, + { + "node": "view_40", + "inputs": [ + "cat_54" + ], + "output": "view_40", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "linear_69", + "inputs": [ + "view_40", + "p_visual_blocks_17_attn_proj_weight", + "p_visual_blocks_17_attn_proj_bias" + ], + "output": "linear_69", + "workgroups": [ + 128, + 48, + 1 + ], + "kernel": "kernels/541dedaba172d332aa5f9b78409cd0a49ead48fd2200f67a4984fdeec5664d7c.wgsl" + }, + { + "node": "add_71", + "inputs": [ + "add_68", + "linear_69" + ], + "output": "add_71", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "layer_norm_35", + "inputs": [ + "add_71", + "p_visual_blocks_17_norm2_weight", + "p_visual_blocks_17_norm2_bias" + ], + "output": "layer_norm_35", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/13bcf8d207e7732db735911a6b01201a40428d9f90a835424287d741980d0477.wgsl" + }, + { + "node": "linear_70", + "inputs": [ + "layer_norm_35", + "p_visual_blocks_17_mlp_linear_fc1_weight", + "p_visual_blocks_17_mlp_linear_fc1_bias" + ], + "output": "linear_70", + "workgroups": [ + 512, + 48, + 1 + ], + "kernel": "kernels/278a47f30fab25fda40f1b3f856f14423ee2a89eddd52c8449cab8272befeb49.wgsl" + }, + { + "node": "gelu_17", + "inputs": [ + "linear_70" + ], + "output": "gelu_17", + "workgroups": [ + 24576, + 1, + 1 + ], + "kernel": "kernels/367142dda65caa73aeb0a439dc4e658fd68a839f2ea38435d5dd665c211c8172.wgsl" + }, + { + "node": "linear_71", + "inputs": [ + "gelu_17", + "p_visual_blocks_17_mlp_linear_fc2_weight", + "p_visual_blocks_17_mlp_linear_fc2_bias" + ], + "output": "linear_71", + "workgroups": [ + 128, + 48, + 1 + ], + "kernel": "kernels/7927e7ea9f061b32c446ff19f676ac9467c35b991b07e422c4c9de7950cfce1b.wgsl" + }, + { + "node": "add_72", + "inputs": [ + "add_71", + "linear_71" + ], + "output": "add_72", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "layer_norm_36", + "inputs": [ + "add_72", + "p_visual_blocks_18_norm1_weight", + "p_visual_blocks_18_norm1_bias" + ], + "output": "layer_norm_36", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/13bcf8d207e7732db735911a6b01201a40428d9f90a835424287d741980d0477.wgsl" + }, + { + "node": "linear_72", + "inputs": [ + "layer_norm_36", + "p_visual_blocks_18_attn_qkv_weight", + "p_visual_blocks_18_attn_qkv_bias" + ], + "output": "linear_72", + "workgroups": [ + 384, + 48, + 1 + ], + "kernel": "kernels/dba4024ae699580d26c2a885b514feb3c8588bb7a4c7d95b36549d7d659aa585.wgsl" + }, + { + "node": "view_41", + "inputs": [ + "linear_72" + ], + "output": "view_41", + "workgroups": [ + 18432, + 1, + 1 + ], + "kernel": "kernels/aa4338d1d1db5ac8a6118b17c86acc608c6e0d04c15bfa03f804239b25a9e0b8.wgsl" + }, + { + "node": "permute_18", + "inputs": [ + "view_41" + ], + "output": "permute_18", + "workgroups": [ + 18432, + 1, + 1 + ], + "kernel": "kernels/43d939664a4898e8f9c04ba1dd333e6362d7bee1f0456b0af948d44eb3c8bf69.wgsl" + }, + { + "node": "select_54", + "inputs": [ + "permute_18" + ], + "output": "select_54", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/bf0b301adba19cff55fabb374d25f7a4d0a19137bf03c230bacedf36aefe0cf7.wgsl" + }, + { + "node": "select_55", + "inputs": [ + "permute_18" + ], + "output": "select_55", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/3c0b9a1663ed41b254264c799f5e37cbfd75209c8a1f8be9437bd7fb83fc38d1.wgsl" + }, + { + "node": "select_56", + "inputs": [ + "permute_18" + ], + "output": "select_56", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/a8bb5542d2f9b9f034f69ca618344f167111d00b9a33029671cb28071030050f.wgsl" + }, + { + "node": "unsqueeze_92", + "inputs": [ + "cos" + ], + "output": "unsqueeze_92", + "workgroups": [ + 384, + 1, + 1 + ], + "kernel": "kernels/8898353d0c367a3982a48d416f6777c3ce7a854572eeaf55843f3e7ee458c65d.wgsl" + }, + { + "node": "unsqueeze_93", + "inputs": [ + "sin" + ], + "output": "unsqueeze_93", + "workgroups": [ + 384, + 1, + 1 + ], + "kernel": "kernels/8898353d0c367a3982a48d416f6777c3ce7a854572eeaf55843f3e7ee458c65d.wgsl" + }, + { + "node": "mul_92", + "inputs": [ + "select_54", + "unsqueeze_92" + ], + "output": "mul_92", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "slice_127", + "inputs": [ + "select_54" + ], + "output": "slice_127", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/8980fed160483970508ad7c086f577b51f2b9c3979a00a70776bd65014fc9ccb.wgsl" + }, + { + "node": "slice_128", + "inputs": [ + "select_54" + ], + "output": "slice_128", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2f9ddba9feddcad74fa4a71c8fc02b4b3180c81a6a722f23ceeb94d2dac47b79.wgsl" + }, + { + "node": "neg_36", + "inputs": [ + "slice_128" + ], + "output": "neg_36", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2560bc16afb7b24fa8159af43aa0e509517ac7487bd3dc4e91697682ab604494.wgsl" + }, + { + "node": "cat_55", + "inputs": [ + "neg_36", + "slice_127" + ], + "output": "cat_55", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/2303343653b8442a4c17bedfc99130a7d627720f65d72cb7b639124717225342.wgsl" + }, + { + "node": "mul_93", + "inputs": [ + "cat_55", + "unsqueeze_93" + ], + "output": "mul_93", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "add_73", + "inputs": [ + "mul_92", + "mul_93" + ], + "output": "add_73", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "mul_94", + "inputs": [ + "select_55", + "unsqueeze_92" + ], + "output": "mul_94", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "slice_129", + "inputs": [ + "select_55" + ], + "output": "slice_129", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/8980fed160483970508ad7c086f577b51f2b9c3979a00a70776bd65014fc9ccb.wgsl" + }, + { + "node": "slice_130", + "inputs": [ + "select_55" + ], + "output": "slice_130", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2f9ddba9feddcad74fa4a71c8fc02b4b3180c81a6a722f23ceeb94d2dac47b79.wgsl" + }, + { + "node": "neg_37", + "inputs": [ + "slice_130" + ], + "output": "neg_37", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2560bc16afb7b24fa8159af43aa0e509517ac7487bd3dc4e91697682ab604494.wgsl" + }, + { + "node": "cat_56", + "inputs": [ + "neg_37", + "slice_129" + ], + "output": "cat_56", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/2303343653b8442a4c17bedfc99130a7d627720f65d72cb7b639124717225342.wgsl" + }, + { + "node": "mul_95", + "inputs": [ + "cat_56", + "unsqueeze_93" + ], + "output": "mul_95", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "add_74", + "inputs": [ + "mul_94", + "mul_95" + ], + "output": "add_74", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "transpose_90", + "inputs": [ + "add_73" + ], + "output": "transpose_90", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_94", + "inputs": [ + "transpose_90" + ], + "output": "unsqueeze_94", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "transpose_91", + "inputs": [ + "add_74" + ], + "output": "transpose_91", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_95", + "inputs": [ + "transpose_91" + ], + "output": "unsqueeze_95", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "transpose_92", + "inputs": [ + "select_56" + ], + "output": "transpose_92", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_96", + "inputs": [ + "transpose_92" + ], + "output": "unsqueeze_96", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "slice_131", + "inputs": [ + "unsqueeze_94" + ], + "output": "slice_131", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "slice_132", + "inputs": [ + "unsqueeze_95" + ], + "output": "slice_132", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "slice_133", + "inputs": [ + "unsqueeze_96" + ], + "output": "slice_133", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "transpose_93", + "inputs": [ + "slice_132" + ], + "output": "transpose_93", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/78da066223c17c00b73f3f0437cb9cb82a1265761ad2d76ba4fdba9755d9a3af.wgsl" + }, + { + "node": "matmul_36", + "inputs": [ + "slice_131", + "transpose_93" + ], + "output": "matmul_36", + "workgroups": [ + 36864, + 1, + 1 + ], + "kernel": "kernels/458bf9f5b442f2d9df5267b054e0f412be6e1dd51def1e238871999aa48752de.wgsl" + }, + { + "node": "mul_96", + "inputs": [ + "matmul_36" + ], + "output": "mul_96", + "workgroups": [ + 36864, + 1, + 1 + ], + "kernel": "kernels/e075bc3ef90433a5223d55b1147384e7d4aa10ed5ec6519ed674279f26217ac5.wgsl" + }, + { + "node": "softmax_18", + "inputs": [ + "mul_96" + ], + "output": "softmax_18", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/a4ff44a4eb2d671bdefe9bd97cb77a09117c03f9447a9ff01f546de3842e2ebc.wgsl" + }, + { + "node": "matmul_37", + "inputs": [ + "softmax_18", + "slice_133" + ], + "output": "matmul_37", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/5271dca1a483428217590e5170b6a426874a234120fbee14a75e11b9faadee03.wgsl" + }, + { + "node": "transpose_94", + "inputs": [ + "matmul_37" + ], + "output": "transpose_94", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/47f78f971967ea28b861f83844879dfdfc0f10936de7fb9c56a4b8592280ec88.wgsl" + }, + { + "node": "clone_18", + "inputs": [ + "transpose_94" + ], + "output": "clone_18", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "cat_57", + "inputs": [ + "clone_18" + ], + "output": "cat_57", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/0a63ee401744e4da485ba317e4a798eea6e6827ae4e59fd730d73ef2dd16e91f.wgsl" + }, + { + "node": "view_42", + "inputs": [ + "cat_57" + ], + "output": "view_42", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "linear_73", + "inputs": [ + "view_42", + "p_visual_blocks_18_attn_proj_weight", + "p_visual_blocks_18_attn_proj_bias" + ], + "output": "linear_73", + "workgroups": [ + 128, + 48, + 1 + ], + "kernel": "kernels/541dedaba172d332aa5f9b78409cd0a49ead48fd2200f67a4984fdeec5664d7c.wgsl" + }, + { + "node": "add_75", + "inputs": [ + "add_72", + "linear_73" + ], + "output": "add_75", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "layer_norm_37", + "inputs": [ + "add_75", + "p_visual_blocks_18_norm2_weight", + "p_visual_blocks_18_norm2_bias" + ], + "output": "layer_norm_37", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/13bcf8d207e7732db735911a6b01201a40428d9f90a835424287d741980d0477.wgsl" + }, + { + "node": "linear_74", + "inputs": [ + "layer_norm_37", + "p_visual_blocks_18_mlp_linear_fc1_weight", + "p_visual_blocks_18_mlp_linear_fc1_bias" + ], + "output": "linear_74", + "workgroups": [ + 512, + 48, + 1 + ], + "kernel": "kernels/278a47f30fab25fda40f1b3f856f14423ee2a89eddd52c8449cab8272befeb49.wgsl" + }, + { + "node": "gelu_18", + "inputs": [ + "linear_74" + ], + "output": "gelu_18", + "workgroups": [ + 24576, + 1, + 1 + ], + "kernel": "kernels/367142dda65caa73aeb0a439dc4e658fd68a839f2ea38435d5dd665c211c8172.wgsl" + }, + { + "node": "linear_75", + "inputs": [ + "gelu_18", + "p_visual_blocks_18_mlp_linear_fc2_weight", + "p_visual_blocks_18_mlp_linear_fc2_bias" + ], + "output": "linear_75", + "workgroups": [ + 128, + 48, + 1 + ], + "kernel": "kernels/7927e7ea9f061b32c446ff19f676ac9467c35b991b07e422c4c9de7950cfce1b.wgsl" + }, + { + "node": "add_76", + "inputs": [ + "add_75", + "linear_75" + ], + "output": "add_76", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "layer_norm_38", + "inputs": [ + "add_76", + "p_visual_blocks_19_norm1_weight", + "p_visual_blocks_19_norm1_bias" + ], + "output": "layer_norm_38", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/13bcf8d207e7732db735911a6b01201a40428d9f90a835424287d741980d0477.wgsl" + }, + { + "node": "linear_76", + "inputs": [ + "layer_norm_38", + "p_visual_blocks_19_attn_qkv_weight", + "p_visual_blocks_19_attn_qkv_bias" + ], + "output": "linear_76", + "workgroups": [ + 384, + 48, + 1 + ], + "kernel": "kernels/dba4024ae699580d26c2a885b514feb3c8588bb7a4c7d95b36549d7d659aa585.wgsl" + }, + { + "node": "view_43", + "inputs": [ + "linear_76" + ], + "output": "view_43", + "workgroups": [ + 18432, + 1, + 1 + ], + "kernel": "kernels/aa4338d1d1db5ac8a6118b17c86acc608c6e0d04c15bfa03f804239b25a9e0b8.wgsl" + }, + { + "node": "permute_19", + "inputs": [ + "view_43" + ], + "output": "permute_19", + "workgroups": [ + 18432, + 1, + 1 + ], + "kernel": "kernels/43d939664a4898e8f9c04ba1dd333e6362d7bee1f0456b0af948d44eb3c8bf69.wgsl" + }, + { + "node": "select_57", + "inputs": [ + "permute_19" + ], + "output": "select_57", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/bf0b301adba19cff55fabb374d25f7a4d0a19137bf03c230bacedf36aefe0cf7.wgsl" + }, + { + "node": "select_58", + "inputs": [ + "permute_19" + ], + "output": "select_58", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/3c0b9a1663ed41b254264c799f5e37cbfd75209c8a1f8be9437bd7fb83fc38d1.wgsl" + }, + { + "node": "select_59", + "inputs": [ + "permute_19" + ], + "output": "select_59", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/a8bb5542d2f9b9f034f69ca618344f167111d00b9a33029671cb28071030050f.wgsl" + }, + { + "node": "unsqueeze_97", + "inputs": [ + "cos" + ], + "output": "unsqueeze_97", + "workgroups": [ + 384, + 1, + 1 + ], + "kernel": "kernels/8898353d0c367a3982a48d416f6777c3ce7a854572eeaf55843f3e7ee458c65d.wgsl" + }, + { + "node": "unsqueeze_98", + "inputs": [ + "sin" + ], + "output": "unsqueeze_98", + "workgroups": [ + 384, + 1, + 1 + ], + "kernel": "kernels/8898353d0c367a3982a48d416f6777c3ce7a854572eeaf55843f3e7ee458c65d.wgsl" + }, + { + "node": "mul_97", + "inputs": [ + "select_57", + "unsqueeze_97" + ], + "output": "mul_97", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "slice_134", + "inputs": [ + "select_57" + ], + "output": "slice_134", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/8980fed160483970508ad7c086f577b51f2b9c3979a00a70776bd65014fc9ccb.wgsl" + }, + { + "node": "slice_135", + "inputs": [ + "select_57" + ], + "output": "slice_135", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2f9ddba9feddcad74fa4a71c8fc02b4b3180c81a6a722f23ceeb94d2dac47b79.wgsl" + }, + { + "node": "neg_38", + "inputs": [ + "slice_135" + ], + "output": "neg_38", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2560bc16afb7b24fa8159af43aa0e509517ac7487bd3dc4e91697682ab604494.wgsl" + }, + { + "node": "cat_58", + "inputs": [ + "neg_38", + "slice_134" + ], + "output": "cat_58", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/2303343653b8442a4c17bedfc99130a7d627720f65d72cb7b639124717225342.wgsl" + }, + { + "node": "mul_98", + "inputs": [ + "cat_58", + "unsqueeze_98" + ], + "output": "mul_98", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "add_77", + "inputs": [ + "mul_97", + "mul_98" + ], + "output": "add_77", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "mul_99", + "inputs": [ + "select_58", + "unsqueeze_97" + ], + "output": "mul_99", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "slice_136", + "inputs": [ + "select_58" + ], + "output": "slice_136", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/8980fed160483970508ad7c086f577b51f2b9c3979a00a70776bd65014fc9ccb.wgsl" + }, + { + "node": "slice_137", + "inputs": [ + "select_58" + ], + "output": "slice_137", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2f9ddba9feddcad74fa4a71c8fc02b4b3180c81a6a722f23ceeb94d2dac47b79.wgsl" + }, + { + "node": "neg_39", + "inputs": [ + "slice_137" + ], + "output": "neg_39", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2560bc16afb7b24fa8159af43aa0e509517ac7487bd3dc4e91697682ab604494.wgsl" + }, + { + "node": "cat_59", + "inputs": [ + "neg_39", + "slice_136" + ], + "output": "cat_59", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/2303343653b8442a4c17bedfc99130a7d627720f65d72cb7b639124717225342.wgsl" + }, + { + "node": "mul_100", + "inputs": [ + "cat_59", + "unsqueeze_98" + ], + "output": "mul_100", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "add_78", + "inputs": [ + "mul_99", + "mul_100" + ], + "output": "add_78", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "transpose_95", + "inputs": [ + "add_77" + ], + "output": "transpose_95", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_99", + "inputs": [ + "transpose_95" + ], + "output": "unsqueeze_99", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "transpose_96", + "inputs": [ + "add_78" + ], + "output": "transpose_96", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_100", + "inputs": [ + "transpose_96" + ], + "output": "unsqueeze_100", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "transpose_97", + "inputs": [ + "select_59" + ], + "output": "transpose_97", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_101", + "inputs": [ + "transpose_97" + ], + "output": "unsqueeze_101", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "slice_138", + "inputs": [ + "unsqueeze_99" + ], + "output": "slice_138", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "slice_139", + "inputs": [ + "unsqueeze_100" + ], + "output": "slice_139", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "slice_140", + "inputs": [ + "unsqueeze_101" + ], + "output": "slice_140", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "transpose_98", + "inputs": [ + "slice_139" + ], + "output": "transpose_98", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/78da066223c17c00b73f3f0437cb9cb82a1265761ad2d76ba4fdba9755d9a3af.wgsl" + }, + { + "node": "matmul_38", + "inputs": [ + "slice_138", + "transpose_98" + ], + "output": "matmul_38", + "workgroups": [ + 36864, + 1, + 1 + ], + "kernel": "kernels/458bf9f5b442f2d9df5267b054e0f412be6e1dd51def1e238871999aa48752de.wgsl" + }, + { + "node": "mul_101", + "inputs": [ + "matmul_38" + ], + "output": "mul_101", + "workgroups": [ + 36864, + 1, + 1 + ], + "kernel": "kernels/e075bc3ef90433a5223d55b1147384e7d4aa10ed5ec6519ed674279f26217ac5.wgsl" + }, + { + "node": "softmax_19", + "inputs": [ + "mul_101" + ], + "output": "softmax_19", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/a4ff44a4eb2d671bdefe9bd97cb77a09117c03f9447a9ff01f546de3842e2ebc.wgsl" + }, + { + "node": "matmul_39", + "inputs": [ + "softmax_19", + "slice_140" + ], + "output": "matmul_39", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/5271dca1a483428217590e5170b6a426874a234120fbee14a75e11b9faadee03.wgsl" + }, + { + "node": "transpose_99", + "inputs": [ + "matmul_39" + ], + "output": "transpose_99", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/47f78f971967ea28b861f83844879dfdfc0f10936de7fb9c56a4b8592280ec88.wgsl" + }, + { + "node": "clone_19", + "inputs": [ + "transpose_99" + ], + "output": "clone_19", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "cat_60", + "inputs": [ + "clone_19" + ], + "output": "cat_60", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/0a63ee401744e4da485ba317e4a798eea6e6827ae4e59fd730d73ef2dd16e91f.wgsl" + }, + { + "node": "view_44", + "inputs": [ + "cat_60" + ], + "output": "view_44", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "linear_77", + "inputs": [ + "view_44", + "p_visual_blocks_19_attn_proj_weight", + "p_visual_blocks_19_attn_proj_bias" + ], + "output": "linear_77", + "workgroups": [ + 128, + 48, + 1 + ], + "kernel": "kernels/541dedaba172d332aa5f9b78409cd0a49ead48fd2200f67a4984fdeec5664d7c.wgsl" + }, + { + "node": "add_79", + "inputs": [ + "add_76", + "linear_77" + ], + "output": "add_79", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "layer_norm_39", + "inputs": [ + "add_79", + "p_visual_blocks_19_norm2_weight", + "p_visual_blocks_19_norm2_bias" + ], + "output": "layer_norm_39", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/13bcf8d207e7732db735911a6b01201a40428d9f90a835424287d741980d0477.wgsl" + }, + { + "node": "linear_78", + "inputs": [ + "layer_norm_39", + "p_visual_blocks_19_mlp_linear_fc1_weight", + "p_visual_blocks_19_mlp_linear_fc1_bias" + ], + "output": "linear_78", + "workgroups": [ + 512, + 48, + 1 + ], + "kernel": "kernels/278a47f30fab25fda40f1b3f856f14423ee2a89eddd52c8449cab8272befeb49.wgsl" + }, + { + "node": "gelu_19", + "inputs": [ + "linear_78" + ], + "output": "gelu_19", + "workgroups": [ + 24576, + 1, + 1 + ], + "kernel": "kernels/367142dda65caa73aeb0a439dc4e658fd68a839f2ea38435d5dd665c211c8172.wgsl" + }, + { + "node": "linear_79", + "inputs": [ + "gelu_19", + "p_visual_blocks_19_mlp_linear_fc2_weight", + "p_visual_blocks_19_mlp_linear_fc2_bias" + ], + "output": "linear_79", + "workgroups": [ + 128, + 48, + 1 + ], + "kernel": "kernels/7927e7ea9f061b32c446ff19f676ac9467c35b991b07e422c4c9de7950cfce1b.wgsl" + }, + { + "node": "add_80", + "inputs": [ + "add_79", + "linear_79" + ], + "output": "add_80", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "layer_norm_40", + "inputs": [ + "add_80", + "p_visual_blocks_20_norm1_weight", + "p_visual_blocks_20_norm1_bias" + ], + "output": "layer_norm_40", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/13bcf8d207e7732db735911a6b01201a40428d9f90a835424287d741980d0477.wgsl" + }, + { + "node": "linear_80", + "inputs": [ + "layer_norm_40", + "p_visual_blocks_20_attn_qkv_weight", + "p_visual_blocks_20_attn_qkv_bias" + ], + "output": "linear_80", + "workgroups": [ + 384, + 48, + 1 + ], + "kernel": "kernels/dba4024ae699580d26c2a885b514feb3c8588bb7a4c7d95b36549d7d659aa585.wgsl" + }, + { + "node": "view_45", + "inputs": [ + "linear_80" + ], + "output": "view_45", + "workgroups": [ + 18432, + 1, + 1 + ], + "kernel": "kernels/aa4338d1d1db5ac8a6118b17c86acc608c6e0d04c15bfa03f804239b25a9e0b8.wgsl" + }, + { + "node": "permute_20", + "inputs": [ + "view_45" + ], + "output": "permute_20", + "workgroups": [ + 18432, + 1, + 1 + ], + "kernel": "kernels/43d939664a4898e8f9c04ba1dd333e6362d7bee1f0456b0af948d44eb3c8bf69.wgsl" + }, + { + "node": "select_60", + "inputs": [ + "permute_20" + ], + "output": "select_60", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/bf0b301adba19cff55fabb374d25f7a4d0a19137bf03c230bacedf36aefe0cf7.wgsl" + }, + { + "node": "select_61", + "inputs": [ + "permute_20" + ], + "output": "select_61", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/3c0b9a1663ed41b254264c799f5e37cbfd75209c8a1f8be9437bd7fb83fc38d1.wgsl" + }, + { + "node": "select_62", + "inputs": [ + "permute_20" + ], + "output": "select_62", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/a8bb5542d2f9b9f034f69ca618344f167111d00b9a33029671cb28071030050f.wgsl" + }, + { + "node": "unsqueeze_102", + "inputs": [ + "cos" + ], + "output": "unsqueeze_102", + "workgroups": [ + 384, + 1, + 1 + ], + "kernel": "kernels/8898353d0c367a3982a48d416f6777c3ce7a854572eeaf55843f3e7ee458c65d.wgsl" + }, + { + "node": "unsqueeze_103", + "inputs": [ + "sin" + ], + "output": "unsqueeze_103", + "workgroups": [ + 384, + 1, + 1 + ], + "kernel": "kernels/8898353d0c367a3982a48d416f6777c3ce7a854572eeaf55843f3e7ee458c65d.wgsl" + }, + { + "node": "mul_102", + "inputs": [ + "select_60", + "unsqueeze_102" + ], + "output": "mul_102", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "slice_141", + "inputs": [ + "select_60" + ], + "output": "slice_141", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/8980fed160483970508ad7c086f577b51f2b9c3979a00a70776bd65014fc9ccb.wgsl" + }, + { + "node": "slice_142", + "inputs": [ + "select_60" + ], + "output": "slice_142", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2f9ddba9feddcad74fa4a71c8fc02b4b3180c81a6a722f23ceeb94d2dac47b79.wgsl" + }, + { + "node": "neg_40", + "inputs": [ + "slice_142" + ], + "output": "neg_40", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2560bc16afb7b24fa8159af43aa0e509517ac7487bd3dc4e91697682ab604494.wgsl" + }, + { + "node": "cat_61", + "inputs": [ + "neg_40", + "slice_141" + ], + "output": "cat_61", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/2303343653b8442a4c17bedfc99130a7d627720f65d72cb7b639124717225342.wgsl" + }, + { + "node": "mul_103", + "inputs": [ + "cat_61", + "unsqueeze_103" + ], + "output": "mul_103", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "add_81", + "inputs": [ + "mul_102", + "mul_103" + ], + "output": "add_81", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "mul_104", + "inputs": [ + "select_61", + "unsqueeze_102" + ], + "output": "mul_104", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "slice_143", + "inputs": [ + "select_61" + ], + "output": "slice_143", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/8980fed160483970508ad7c086f577b51f2b9c3979a00a70776bd65014fc9ccb.wgsl" + }, + { + "node": "slice_144", + "inputs": [ + "select_61" + ], + "output": "slice_144", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2f9ddba9feddcad74fa4a71c8fc02b4b3180c81a6a722f23ceeb94d2dac47b79.wgsl" + }, + { + "node": "neg_41", + "inputs": [ + "slice_144" + ], + "output": "neg_41", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2560bc16afb7b24fa8159af43aa0e509517ac7487bd3dc4e91697682ab604494.wgsl" + }, + { + "node": "cat_62", + "inputs": [ + "neg_41", + "slice_143" + ], + "output": "cat_62", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/2303343653b8442a4c17bedfc99130a7d627720f65d72cb7b639124717225342.wgsl" + }, + { + "node": "mul_105", + "inputs": [ + "cat_62", + "unsqueeze_103" + ], + "output": "mul_105", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "add_82", + "inputs": [ + "mul_104", + "mul_105" + ], + "output": "add_82", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "transpose_100", + "inputs": [ + "add_81" + ], + "output": "transpose_100", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_104", + "inputs": [ + "transpose_100" + ], + "output": "unsqueeze_104", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "transpose_101", + "inputs": [ + "add_82" + ], + "output": "transpose_101", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_105", + "inputs": [ + "transpose_101" + ], + "output": "unsqueeze_105", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "transpose_102", + "inputs": [ + "select_62" + ], + "output": "transpose_102", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_106", + "inputs": [ + "transpose_102" + ], + "output": "unsqueeze_106", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "slice_145", + "inputs": [ + "unsqueeze_104" + ], + "output": "slice_145", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "slice_146", + "inputs": [ + "unsqueeze_105" + ], + "output": "slice_146", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "slice_147", + "inputs": [ + "unsqueeze_106" + ], + "output": "slice_147", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "transpose_103", + "inputs": [ + "slice_146" + ], + "output": "transpose_103", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/78da066223c17c00b73f3f0437cb9cb82a1265761ad2d76ba4fdba9755d9a3af.wgsl" + }, + { + "node": "matmul_40", + "inputs": [ + "slice_145", + "transpose_103" + ], + "output": "matmul_40", + "workgroups": [ + 36864, + 1, + 1 + ], + "kernel": "kernels/458bf9f5b442f2d9df5267b054e0f412be6e1dd51def1e238871999aa48752de.wgsl" + }, + { + "node": "mul_106", + "inputs": [ + "matmul_40" + ], + "output": "mul_106", + "workgroups": [ + 36864, + 1, + 1 + ], + "kernel": "kernels/e075bc3ef90433a5223d55b1147384e7d4aa10ed5ec6519ed674279f26217ac5.wgsl" + }, + { + "node": "softmax_20", + "inputs": [ + "mul_106" + ], + "output": "softmax_20", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/a4ff44a4eb2d671bdefe9bd97cb77a09117c03f9447a9ff01f546de3842e2ebc.wgsl" + }, + { + "node": "matmul_41", + "inputs": [ + "softmax_20", + "slice_147" + ], + "output": "matmul_41", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/5271dca1a483428217590e5170b6a426874a234120fbee14a75e11b9faadee03.wgsl" + }, + { + "node": "transpose_104", + "inputs": [ + "matmul_41" + ], + "output": "transpose_104", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/47f78f971967ea28b861f83844879dfdfc0f10936de7fb9c56a4b8592280ec88.wgsl" + }, + { + "node": "clone_20", + "inputs": [ + "transpose_104" + ], + "output": "clone_20", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "cat_63", + "inputs": [ + "clone_20" + ], + "output": "cat_63", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/0a63ee401744e4da485ba317e4a798eea6e6827ae4e59fd730d73ef2dd16e91f.wgsl" + }, + { + "node": "view_46", + "inputs": [ + "cat_63" + ], + "output": "view_46", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "linear_81", + "inputs": [ + "view_46", + "p_visual_blocks_20_attn_proj_weight", + "p_visual_blocks_20_attn_proj_bias" + ], + "output": "linear_81", + "workgroups": [ + 128, + 48, + 1 + ], + "kernel": "kernels/541dedaba172d332aa5f9b78409cd0a49ead48fd2200f67a4984fdeec5664d7c.wgsl" + }, + { + "node": "add_83", + "inputs": [ + "add_80", + "linear_81" + ], + "output": "add_83", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "layer_norm_41", + "inputs": [ + "add_83", + "p_visual_blocks_20_norm2_weight", + "p_visual_blocks_20_norm2_bias" + ], + "output": "layer_norm_41", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/13bcf8d207e7732db735911a6b01201a40428d9f90a835424287d741980d0477.wgsl" + }, + { + "node": "linear_82", + "inputs": [ + "layer_norm_41", + "p_visual_blocks_20_mlp_linear_fc1_weight", + "p_visual_blocks_20_mlp_linear_fc1_bias" + ], + "output": "linear_82", + "workgroups": [ + 512, + 48, + 1 + ], + "kernel": "kernels/278a47f30fab25fda40f1b3f856f14423ee2a89eddd52c8449cab8272befeb49.wgsl" + }, + { + "node": "gelu_20", + "inputs": [ + "linear_82" + ], + "output": "gelu_20", + "workgroups": [ + 24576, + 1, + 1 + ], + "kernel": "kernels/367142dda65caa73aeb0a439dc4e658fd68a839f2ea38435d5dd665c211c8172.wgsl" + }, + { + "node": "linear_83", + "inputs": [ + "gelu_20", + "p_visual_blocks_20_mlp_linear_fc2_weight", + "p_visual_blocks_20_mlp_linear_fc2_bias" + ], + "output": "linear_83", + "workgroups": [ + 128, + 48, + 1 + ], + "kernel": "kernels/7927e7ea9f061b32c446ff19f676ac9467c35b991b07e422c4c9de7950cfce1b.wgsl" + }, + { + "node": "add_84", + "inputs": [ + "add_83", + "linear_83" + ], + "output": "add_84", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "layer_norm_42", + "inputs": [ + "add_84", + "p_visual_blocks_21_norm1_weight", + "p_visual_blocks_21_norm1_bias" + ], + "output": "layer_norm_42", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/13bcf8d207e7732db735911a6b01201a40428d9f90a835424287d741980d0477.wgsl" + }, + { + "node": "linear_84", + "inputs": [ + "layer_norm_42", + "p_visual_blocks_21_attn_qkv_weight", + "p_visual_blocks_21_attn_qkv_bias" + ], + "output": "linear_84", + "workgroups": [ + 384, + 48, + 1 + ], + "kernel": "kernels/dba4024ae699580d26c2a885b514feb3c8588bb7a4c7d95b36549d7d659aa585.wgsl" + }, + { + "node": "view_47", + "inputs": [ + "linear_84" + ], + "output": "view_47", + "workgroups": [ + 18432, + 1, + 1 + ], + "kernel": "kernels/aa4338d1d1db5ac8a6118b17c86acc608c6e0d04c15bfa03f804239b25a9e0b8.wgsl" + }, + { + "node": "permute_21", + "inputs": [ + "view_47" + ], + "output": "permute_21", + "workgroups": [ + 18432, + 1, + 1 + ], + "kernel": "kernels/43d939664a4898e8f9c04ba1dd333e6362d7bee1f0456b0af948d44eb3c8bf69.wgsl" + }, + { + "node": "select_63", + "inputs": [ + "permute_21" + ], + "output": "select_63", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/bf0b301adba19cff55fabb374d25f7a4d0a19137bf03c230bacedf36aefe0cf7.wgsl" + }, + { + "node": "select_64", + "inputs": [ + "permute_21" + ], + "output": "select_64", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/3c0b9a1663ed41b254264c799f5e37cbfd75209c8a1f8be9437bd7fb83fc38d1.wgsl" + }, + { + "node": "select_65", + "inputs": [ + "permute_21" + ], + "output": "select_65", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/a8bb5542d2f9b9f034f69ca618344f167111d00b9a33029671cb28071030050f.wgsl" + }, + { + "node": "unsqueeze_107", + "inputs": [ + "cos" + ], + "output": "unsqueeze_107", + "workgroups": [ + 384, + 1, + 1 + ], + "kernel": "kernels/8898353d0c367a3982a48d416f6777c3ce7a854572eeaf55843f3e7ee458c65d.wgsl" + }, + { + "node": "unsqueeze_108", + "inputs": [ + "sin" + ], + "output": "unsqueeze_108", + "workgroups": [ + 384, + 1, + 1 + ], + "kernel": "kernels/8898353d0c367a3982a48d416f6777c3ce7a854572eeaf55843f3e7ee458c65d.wgsl" + }, + { + "node": "mul_107", + "inputs": [ + "select_63", + "unsqueeze_107" + ], + "output": "mul_107", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "slice_148", + "inputs": [ + "select_63" + ], + "output": "slice_148", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/8980fed160483970508ad7c086f577b51f2b9c3979a00a70776bd65014fc9ccb.wgsl" + }, + { + "node": "slice_149", + "inputs": [ + "select_63" + ], + "output": "slice_149", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2f9ddba9feddcad74fa4a71c8fc02b4b3180c81a6a722f23ceeb94d2dac47b79.wgsl" + }, + { + "node": "neg_42", + "inputs": [ + "slice_149" + ], + "output": "neg_42", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2560bc16afb7b24fa8159af43aa0e509517ac7487bd3dc4e91697682ab604494.wgsl" + }, + { + "node": "cat_64", + "inputs": [ + "neg_42", + "slice_148" + ], + "output": "cat_64", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/2303343653b8442a4c17bedfc99130a7d627720f65d72cb7b639124717225342.wgsl" + }, + { + "node": "mul_108", + "inputs": [ + "cat_64", + "unsqueeze_108" + ], + "output": "mul_108", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "add_85", + "inputs": [ + "mul_107", + "mul_108" + ], + "output": "add_85", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "mul_109", + "inputs": [ + "select_64", + "unsqueeze_107" + ], + "output": "mul_109", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "slice_150", + "inputs": [ + "select_64" + ], + "output": "slice_150", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/8980fed160483970508ad7c086f577b51f2b9c3979a00a70776bd65014fc9ccb.wgsl" + }, + { + "node": "slice_151", + "inputs": [ + "select_64" + ], + "output": "slice_151", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2f9ddba9feddcad74fa4a71c8fc02b4b3180c81a6a722f23ceeb94d2dac47b79.wgsl" + }, + { + "node": "neg_43", + "inputs": [ + "slice_151" + ], + "output": "neg_43", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2560bc16afb7b24fa8159af43aa0e509517ac7487bd3dc4e91697682ab604494.wgsl" + }, + { + "node": "cat_65", + "inputs": [ + "neg_43", + "slice_150" + ], + "output": "cat_65", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/2303343653b8442a4c17bedfc99130a7d627720f65d72cb7b639124717225342.wgsl" + }, + { + "node": "mul_110", + "inputs": [ + "cat_65", + "unsqueeze_108" + ], + "output": "mul_110", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "add_86", + "inputs": [ + "mul_109", + "mul_110" + ], + "output": "add_86", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "transpose_105", + "inputs": [ + "add_85" + ], + "output": "transpose_105", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_109", + "inputs": [ + "transpose_105" + ], + "output": "unsqueeze_109", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "transpose_106", + "inputs": [ + "add_86" + ], + "output": "transpose_106", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_110", + "inputs": [ + "transpose_106" + ], + "output": "unsqueeze_110", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "transpose_107", + "inputs": [ + "select_65" + ], + "output": "transpose_107", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_111", + "inputs": [ + "transpose_107" + ], + "output": "unsqueeze_111", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "slice_152", + "inputs": [ + "unsqueeze_109" + ], + "output": "slice_152", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "slice_153", + "inputs": [ + "unsqueeze_110" + ], + "output": "slice_153", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "slice_154", + "inputs": [ + "unsqueeze_111" + ], + "output": "slice_154", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "transpose_108", + "inputs": [ + "slice_153" + ], + "output": "transpose_108", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/78da066223c17c00b73f3f0437cb9cb82a1265761ad2d76ba4fdba9755d9a3af.wgsl" + }, + { + "node": "matmul_42", + "inputs": [ + "slice_152", + "transpose_108" + ], + "output": "matmul_42", + "workgroups": [ + 36864, + 1, + 1 + ], + "kernel": "kernels/458bf9f5b442f2d9df5267b054e0f412be6e1dd51def1e238871999aa48752de.wgsl" + }, + { + "node": "mul_111", + "inputs": [ + "matmul_42" + ], + "output": "mul_111", + "workgroups": [ + 36864, + 1, + 1 + ], + "kernel": "kernels/e075bc3ef90433a5223d55b1147384e7d4aa10ed5ec6519ed674279f26217ac5.wgsl" + }, + { + "node": "softmax_21", + "inputs": [ + "mul_111" + ], + "output": "softmax_21", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/a4ff44a4eb2d671bdefe9bd97cb77a09117c03f9447a9ff01f546de3842e2ebc.wgsl" + }, + { + "node": "matmul_43", + "inputs": [ + "softmax_21", + "slice_154" + ], + "output": "matmul_43", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/5271dca1a483428217590e5170b6a426874a234120fbee14a75e11b9faadee03.wgsl" + }, + { + "node": "transpose_109", + "inputs": [ + "matmul_43" + ], + "output": "transpose_109", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/47f78f971967ea28b861f83844879dfdfc0f10936de7fb9c56a4b8592280ec88.wgsl" + }, + { + "node": "clone_21", + "inputs": [ + "transpose_109" + ], + "output": "clone_21", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "cat_66", + "inputs": [ + "clone_21" + ], + "output": "cat_66", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/0a63ee401744e4da485ba317e4a798eea6e6827ae4e59fd730d73ef2dd16e91f.wgsl" + }, + { + "node": "view_48", + "inputs": [ + "cat_66" + ], + "output": "view_48", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "linear_85", + "inputs": [ + "view_48", + "p_visual_blocks_21_attn_proj_weight", + "p_visual_blocks_21_attn_proj_bias" + ], + "output": "linear_85", + "workgroups": [ + 128, + 48, + 1 + ], + "kernel": "kernels/541dedaba172d332aa5f9b78409cd0a49ead48fd2200f67a4984fdeec5664d7c.wgsl" + }, + { + "node": "add_87", + "inputs": [ + "add_84", + "linear_85" + ], + "output": "add_87", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "layer_norm_43", + "inputs": [ + "add_87", + "p_visual_blocks_21_norm2_weight", + "p_visual_blocks_21_norm2_bias" + ], + "output": "layer_norm_43", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/13bcf8d207e7732db735911a6b01201a40428d9f90a835424287d741980d0477.wgsl" + }, + { + "node": "linear_86", + "inputs": [ + "layer_norm_43", + "p_visual_blocks_21_mlp_linear_fc1_weight", + "p_visual_blocks_21_mlp_linear_fc1_bias" + ], + "output": "linear_86", + "workgroups": [ + 512, + 48, + 1 + ], + "kernel": "kernels/278a47f30fab25fda40f1b3f856f14423ee2a89eddd52c8449cab8272befeb49.wgsl" + }, + { + "node": "gelu_21", + "inputs": [ + "linear_86" + ], + "output": "gelu_21", + "workgroups": [ + 24576, + 1, + 1 + ], + "kernel": "kernels/367142dda65caa73aeb0a439dc4e658fd68a839f2ea38435d5dd665c211c8172.wgsl" + }, + { + "node": "linear_87", + "inputs": [ + "gelu_21", + "p_visual_blocks_21_mlp_linear_fc2_weight", + "p_visual_blocks_21_mlp_linear_fc2_bias" + ], + "output": "linear_87", + "workgroups": [ + 128, + 48, + 1 + ], + "kernel": "kernels/7927e7ea9f061b32c446ff19f676ac9467c35b991b07e422c4c9de7950cfce1b.wgsl" + }, + { + "node": "add_88", + "inputs": [ + "add_87", + "linear_87" + ], + "output": "add_88", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "layer_norm_44", + "inputs": [ + "add_88", + "p_visual_blocks_22_norm1_weight", + "p_visual_blocks_22_norm1_bias" + ], + "output": "layer_norm_44", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/13bcf8d207e7732db735911a6b01201a40428d9f90a835424287d741980d0477.wgsl" + }, + { + "node": "linear_88", + "inputs": [ + "layer_norm_44", + "p_visual_blocks_22_attn_qkv_weight", + "p_visual_blocks_22_attn_qkv_bias" + ], + "output": "linear_88", + "workgroups": [ + 384, + 48, + 1 + ], + "kernel": "kernels/dba4024ae699580d26c2a885b514feb3c8588bb7a4c7d95b36549d7d659aa585.wgsl" + }, + { + "node": "view_49", + "inputs": [ + "linear_88" + ], + "output": "view_49", + "workgroups": [ + 18432, + 1, + 1 + ], + "kernel": "kernels/aa4338d1d1db5ac8a6118b17c86acc608c6e0d04c15bfa03f804239b25a9e0b8.wgsl" + }, + { + "node": "permute_22", + "inputs": [ + "view_49" + ], + "output": "permute_22", + "workgroups": [ + 18432, + 1, + 1 + ], + "kernel": "kernels/43d939664a4898e8f9c04ba1dd333e6362d7bee1f0456b0af948d44eb3c8bf69.wgsl" + }, + { + "node": "select_66", + "inputs": [ + "permute_22" + ], + "output": "select_66", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/bf0b301adba19cff55fabb374d25f7a4d0a19137bf03c230bacedf36aefe0cf7.wgsl" + }, + { + "node": "select_67", + "inputs": [ + "permute_22" + ], + "output": "select_67", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/3c0b9a1663ed41b254264c799f5e37cbfd75209c8a1f8be9437bd7fb83fc38d1.wgsl" + }, + { + "node": "select_68", + "inputs": [ + "permute_22" + ], + "output": "select_68", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/a8bb5542d2f9b9f034f69ca618344f167111d00b9a33029671cb28071030050f.wgsl" + }, + { + "node": "unsqueeze_112", + "inputs": [ + "cos" + ], + "output": "unsqueeze_112", + "workgroups": [ + 384, + 1, + 1 + ], + "kernel": "kernels/8898353d0c367a3982a48d416f6777c3ce7a854572eeaf55843f3e7ee458c65d.wgsl" + }, + { + "node": "unsqueeze_113", + "inputs": [ + "sin" + ], + "output": "unsqueeze_113", + "workgroups": [ + 384, + 1, + 1 + ], + "kernel": "kernels/8898353d0c367a3982a48d416f6777c3ce7a854572eeaf55843f3e7ee458c65d.wgsl" + }, + { + "node": "mul_112", + "inputs": [ + "select_66", + "unsqueeze_112" + ], + "output": "mul_112", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "slice_155", + "inputs": [ + "select_66" + ], + "output": "slice_155", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/8980fed160483970508ad7c086f577b51f2b9c3979a00a70776bd65014fc9ccb.wgsl" + }, + { + "node": "slice_156", + "inputs": [ + "select_66" + ], + "output": "slice_156", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2f9ddba9feddcad74fa4a71c8fc02b4b3180c81a6a722f23ceeb94d2dac47b79.wgsl" + }, + { + "node": "neg_44", + "inputs": [ + "slice_156" + ], + "output": "neg_44", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2560bc16afb7b24fa8159af43aa0e509517ac7487bd3dc4e91697682ab604494.wgsl" + }, + { + "node": "cat_67", + "inputs": [ + "neg_44", + "slice_155" + ], + "output": "cat_67", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/2303343653b8442a4c17bedfc99130a7d627720f65d72cb7b639124717225342.wgsl" + }, + { + "node": "mul_113", + "inputs": [ + "cat_67", + "unsqueeze_113" + ], + "output": "mul_113", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "add_89", + "inputs": [ + "mul_112", + "mul_113" + ], + "output": "add_89", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "mul_114", + "inputs": [ + "select_67", + "unsqueeze_112" + ], + "output": "mul_114", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "slice_157", + "inputs": [ + "select_67" + ], + "output": "slice_157", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/8980fed160483970508ad7c086f577b51f2b9c3979a00a70776bd65014fc9ccb.wgsl" + }, + { + "node": "slice_158", + "inputs": [ + "select_67" + ], + "output": "slice_158", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2f9ddba9feddcad74fa4a71c8fc02b4b3180c81a6a722f23ceeb94d2dac47b79.wgsl" + }, + { + "node": "neg_45", + "inputs": [ + "slice_158" + ], + "output": "neg_45", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2560bc16afb7b24fa8159af43aa0e509517ac7487bd3dc4e91697682ab604494.wgsl" + }, + { + "node": "cat_68", + "inputs": [ + "neg_45", + "slice_157" + ], + "output": "cat_68", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/2303343653b8442a4c17bedfc99130a7d627720f65d72cb7b639124717225342.wgsl" + }, + { + "node": "mul_115", + "inputs": [ + "cat_68", + "unsqueeze_113" + ], + "output": "mul_115", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "add_90", + "inputs": [ + "mul_114", + "mul_115" + ], + "output": "add_90", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "transpose_110", + "inputs": [ + "add_89" + ], + "output": "transpose_110", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_114", + "inputs": [ + "transpose_110" + ], + "output": "unsqueeze_114", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "transpose_111", + "inputs": [ + "add_90" + ], + "output": "transpose_111", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_115", + "inputs": [ + "transpose_111" + ], + "output": "unsqueeze_115", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "transpose_112", + "inputs": [ + "select_68" + ], + "output": "transpose_112", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_116", + "inputs": [ + "transpose_112" + ], + "output": "unsqueeze_116", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "slice_159", + "inputs": [ + "unsqueeze_114" + ], + "output": "slice_159", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "slice_160", + "inputs": [ + "unsqueeze_115" + ], + "output": "slice_160", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "slice_161", + "inputs": [ + "unsqueeze_116" + ], + "output": "slice_161", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "transpose_113", + "inputs": [ + "slice_160" + ], + "output": "transpose_113", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/78da066223c17c00b73f3f0437cb9cb82a1265761ad2d76ba4fdba9755d9a3af.wgsl" + }, + { + "node": "matmul_44", + "inputs": [ + "slice_159", + "transpose_113" + ], + "output": "matmul_44", + "workgroups": [ + 36864, + 1, + 1 + ], + "kernel": "kernels/458bf9f5b442f2d9df5267b054e0f412be6e1dd51def1e238871999aa48752de.wgsl" + }, + { + "node": "mul_116", + "inputs": [ + "matmul_44" + ], + "output": "mul_116", + "workgroups": [ + 36864, + 1, + 1 + ], + "kernel": "kernels/e075bc3ef90433a5223d55b1147384e7d4aa10ed5ec6519ed674279f26217ac5.wgsl" + }, + { + "node": "softmax_22", + "inputs": [ + "mul_116" + ], + "output": "softmax_22", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/a4ff44a4eb2d671bdefe9bd97cb77a09117c03f9447a9ff01f546de3842e2ebc.wgsl" + }, + { + "node": "matmul_45", + "inputs": [ + "softmax_22", + "slice_161" + ], + "output": "matmul_45", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/5271dca1a483428217590e5170b6a426874a234120fbee14a75e11b9faadee03.wgsl" + }, + { + "node": "transpose_114", + "inputs": [ + "matmul_45" + ], + "output": "transpose_114", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/47f78f971967ea28b861f83844879dfdfc0f10936de7fb9c56a4b8592280ec88.wgsl" + }, + { + "node": "clone_22", + "inputs": [ + "transpose_114" + ], + "output": "clone_22", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "cat_69", + "inputs": [ + "clone_22" + ], + "output": "cat_69", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/0a63ee401744e4da485ba317e4a798eea6e6827ae4e59fd730d73ef2dd16e91f.wgsl" + }, + { + "node": "view_50", + "inputs": [ + "cat_69" + ], + "output": "view_50", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "linear_89", + "inputs": [ + "view_50", + "p_visual_blocks_22_attn_proj_weight", + "p_visual_blocks_22_attn_proj_bias" + ], + "output": "linear_89", + "workgroups": [ + 128, + 48, + 1 + ], + "kernel": "kernels/541dedaba172d332aa5f9b78409cd0a49ead48fd2200f67a4984fdeec5664d7c.wgsl" + }, + { + "node": "add_91", + "inputs": [ + "add_88", + "linear_89" + ], + "output": "add_91", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "layer_norm_45", + "inputs": [ + "add_91", + "p_visual_blocks_22_norm2_weight", + "p_visual_blocks_22_norm2_bias" + ], + "output": "layer_norm_45", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/13bcf8d207e7732db735911a6b01201a40428d9f90a835424287d741980d0477.wgsl" + }, + { + "node": "linear_90", + "inputs": [ + "layer_norm_45", + "p_visual_blocks_22_mlp_linear_fc1_weight", + "p_visual_blocks_22_mlp_linear_fc1_bias" + ], + "output": "linear_90", + "workgroups": [ + 512, + 48, + 1 + ], + "kernel": "kernels/278a47f30fab25fda40f1b3f856f14423ee2a89eddd52c8449cab8272befeb49.wgsl" + }, + { + "node": "gelu_22", + "inputs": [ + "linear_90" + ], + "output": "gelu_22", + "workgroups": [ + 24576, + 1, + 1 + ], + "kernel": "kernels/367142dda65caa73aeb0a439dc4e658fd68a839f2ea38435d5dd665c211c8172.wgsl" + }, + { + "node": "linear_91", + "inputs": [ + "gelu_22", + "p_visual_blocks_22_mlp_linear_fc2_weight", + "p_visual_blocks_22_mlp_linear_fc2_bias" + ], + "output": "linear_91", + "workgroups": [ + 128, + 48, + 1 + ], + "kernel": "kernels/7927e7ea9f061b32c446ff19f676ac9467c35b991b07e422c4c9de7950cfce1b.wgsl" + }, + { + "node": "add_92", + "inputs": [ + "add_91", + "linear_91" + ], + "output": "add_92", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "layer_norm_46", + "inputs": [ + "add_92", + "p_visual_blocks_23_norm1_weight", + "p_visual_blocks_23_norm1_bias" + ], + "output": "layer_norm_46", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/13bcf8d207e7732db735911a6b01201a40428d9f90a835424287d741980d0477.wgsl" + }, + { + "node": "linear_92", + "inputs": [ + "layer_norm_46", + "p_visual_blocks_23_attn_qkv_weight", + "p_visual_blocks_23_attn_qkv_bias" + ], + "output": "linear_92", + "workgroups": [ + 384, + 48, + 1 + ], + "kernel": "kernels/dba4024ae699580d26c2a885b514feb3c8588bb7a4c7d95b36549d7d659aa585.wgsl" + }, + { + "node": "view_51", + "inputs": [ + "linear_92" + ], + "output": "view_51", + "workgroups": [ + 18432, + 1, + 1 + ], + "kernel": "kernels/aa4338d1d1db5ac8a6118b17c86acc608c6e0d04c15bfa03f804239b25a9e0b8.wgsl" + }, + { + "node": "permute_23", + "inputs": [ + "view_51" + ], + "output": "permute_23", + "workgroups": [ + 18432, + 1, + 1 + ], + "kernel": "kernels/43d939664a4898e8f9c04ba1dd333e6362d7bee1f0456b0af948d44eb3c8bf69.wgsl" + }, + { + "node": "select_69", + "inputs": [ + "permute_23" + ], + "output": "select_69", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/bf0b301adba19cff55fabb374d25f7a4d0a19137bf03c230bacedf36aefe0cf7.wgsl" + }, + { + "node": "select_70", + "inputs": [ + "permute_23" + ], + "output": "select_70", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/3c0b9a1663ed41b254264c799f5e37cbfd75209c8a1f8be9437bd7fb83fc38d1.wgsl" + }, + { + "node": "select_71", + "inputs": [ + "permute_23" + ], + "output": "select_71", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/a8bb5542d2f9b9f034f69ca618344f167111d00b9a33029671cb28071030050f.wgsl" + }, + { + "node": "unsqueeze_117", + "inputs": [ + "cos" + ], + "output": "unsqueeze_117", + "workgroups": [ + 384, + 1, + 1 + ], + "kernel": "kernels/8898353d0c367a3982a48d416f6777c3ce7a854572eeaf55843f3e7ee458c65d.wgsl" + }, + { + "node": "unsqueeze_118", + "inputs": [ + "sin" + ], + "output": "unsqueeze_118", + "workgroups": [ + 384, + 1, + 1 + ], + "kernel": "kernels/8898353d0c367a3982a48d416f6777c3ce7a854572eeaf55843f3e7ee458c65d.wgsl" + }, + { + "node": "mul_117", + "inputs": [ + "select_69", + "unsqueeze_117" + ], + "output": "mul_117", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "slice_162", + "inputs": [ + "select_69" + ], + "output": "slice_162", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/8980fed160483970508ad7c086f577b51f2b9c3979a00a70776bd65014fc9ccb.wgsl" + }, + { + "node": "slice_163", + "inputs": [ + "select_69" + ], + "output": "slice_163", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2f9ddba9feddcad74fa4a71c8fc02b4b3180c81a6a722f23ceeb94d2dac47b79.wgsl" + }, + { + "node": "neg_46", + "inputs": [ + "slice_163" + ], + "output": "neg_46", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2560bc16afb7b24fa8159af43aa0e509517ac7487bd3dc4e91697682ab604494.wgsl" + }, + { + "node": "cat_70", + "inputs": [ + "neg_46", + "slice_162" + ], + "output": "cat_70", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/2303343653b8442a4c17bedfc99130a7d627720f65d72cb7b639124717225342.wgsl" + }, + { + "node": "mul_118", + "inputs": [ + "cat_70", + "unsqueeze_118" + ], + "output": "mul_118", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "add_93", + "inputs": [ + "mul_117", + "mul_118" + ], + "output": "add_93", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "mul_119", + "inputs": [ + "select_70", + "unsqueeze_117" + ], + "output": "mul_119", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "slice_164", + "inputs": [ + "select_70" + ], + "output": "slice_164", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/8980fed160483970508ad7c086f577b51f2b9c3979a00a70776bd65014fc9ccb.wgsl" + }, + { + "node": "slice_165", + "inputs": [ + "select_70" + ], + "output": "slice_165", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2f9ddba9feddcad74fa4a71c8fc02b4b3180c81a6a722f23ceeb94d2dac47b79.wgsl" + }, + { + "node": "neg_47", + "inputs": [ + "slice_165" + ], + "output": "neg_47", + "workgroups": [ + 3072, + 1, + 1 + ], + "kernel": "kernels/2560bc16afb7b24fa8159af43aa0e509517ac7487bd3dc4e91697682ab604494.wgsl" + }, + { + "node": "cat_71", + "inputs": [ + "neg_47", + "slice_164" + ], + "output": "cat_71", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/2303343653b8442a4c17bedfc99130a7d627720f65d72cb7b639124717225342.wgsl" + }, + { + "node": "mul_120", + "inputs": [ + "cat_71", + "unsqueeze_118" + ], + "output": "mul_120", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/9d15fb7fb3259cd261c3a4c67bf83f2c4704803d103491d32e0edd06a52c4e80.wgsl" + }, + { + "node": "add_94", + "inputs": [ + "mul_119", + "mul_120" + ], + "output": "add_94", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "transpose_115", + "inputs": [ + "add_93" + ], + "output": "transpose_115", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_119", + "inputs": [ + "transpose_115" + ], + "output": "unsqueeze_119", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "transpose_116", + "inputs": [ + "add_94" + ], + "output": "transpose_116", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_120", + "inputs": [ + "transpose_116" + ], + "output": "unsqueeze_120", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "transpose_117", + "inputs": [ + "select_71" + ], + "output": "transpose_117", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/f3caa88cf7d16699d6b85432669a180bacd584009359b466fce4fa63d9a1f7c3.wgsl" + }, + { + "node": "unsqueeze_121", + "inputs": [ + "transpose_117" + ], + "output": "unsqueeze_121", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "slice_166", + "inputs": [ + "unsqueeze_119" + ], + "output": "slice_166", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "slice_167", + "inputs": [ + "unsqueeze_120" + ], + "output": "slice_167", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "slice_168", + "inputs": [ + "unsqueeze_121" + ], + "output": "slice_168", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/cfd78271e2d3cad61fd89696e5b5d82b4bc3dba62227c7bfefca02d66d6358ea.wgsl" + }, + { + "node": "transpose_118", + "inputs": [ + "slice_167" + ], + "output": "transpose_118", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/78da066223c17c00b73f3f0437cb9cb82a1265761ad2d76ba4fdba9755d9a3af.wgsl" + }, + { + "node": "matmul_46", + "inputs": [ + "slice_166", + "transpose_118" + ], + "output": "matmul_46", + "workgroups": [ + 36864, + 1, + 1 + ], + "kernel": "kernels/458bf9f5b442f2d9df5267b054e0f412be6e1dd51def1e238871999aa48752de.wgsl" + }, + { + "node": "mul_121", + "inputs": [ + "matmul_46" + ], + "output": "mul_121", + "workgroups": [ + 36864, + 1, + 1 + ], + "kernel": "kernels/e075bc3ef90433a5223d55b1147384e7d4aa10ed5ec6519ed674279f26217ac5.wgsl" + }, + { + "node": "softmax_23", + "inputs": [ + "mul_121" + ], + "output": "softmax_23", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/a4ff44a4eb2d671bdefe9bd97cb77a09117c03f9447a9ff01f546de3842e2ebc.wgsl" + }, + { + "node": "matmul_47", + "inputs": [ + "softmax_23", + "slice_168" + ], + "output": "matmul_47", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/5271dca1a483428217590e5170b6a426874a234120fbee14a75e11b9faadee03.wgsl" + }, + { + "node": "transpose_119", + "inputs": [ + "matmul_47" + ], + "output": "transpose_119", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/47f78f971967ea28b861f83844879dfdfc0f10936de7fb9c56a4b8592280ec88.wgsl" + }, + { + "node": "clone_23", + "inputs": [ + "transpose_119" + ], + "output": "clone_23", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "cat_72", + "inputs": [ + "clone_23" + ], + "output": "cat_72", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/0a63ee401744e4da485ba317e4a798eea6e6827ae4e59fd730d73ef2dd16e91f.wgsl" + }, + { + "node": "view_52", + "inputs": [ + "cat_72" + ], + "output": "view_52", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "linear_93", + "inputs": [ + "view_52", + "p_visual_blocks_23_attn_proj_weight", + "p_visual_blocks_23_attn_proj_bias" + ], + "output": "linear_93", + "workgroups": [ + 128, + 48, + 1 + ], + "kernel": "kernels/541dedaba172d332aa5f9b78409cd0a49ead48fd2200f67a4984fdeec5664d7c.wgsl" + }, + { + "node": "add_95", + "inputs": [ + "add_92", + "linear_93" + ], + "output": "add_95", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "layer_norm_47", + "inputs": [ + "add_95", + "p_visual_blocks_23_norm2_weight", + "p_visual_blocks_23_norm2_bias" + ], + "output": "layer_norm_47", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/13bcf8d207e7732db735911a6b01201a40428d9f90a835424287d741980d0477.wgsl" + }, + { + "node": "linear_94", + "inputs": [ + "layer_norm_47", + "p_visual_blocks_23_mlp_linear_fc1_weight", + "p_visual_blocks_23_mlp_linear_fc1_bias" + ], + "output": "linear_94", + "workgroups": [ + 512, + 48, + 1 + ], + "kernel": "kernels/278a47f30fab25fda40f1b3f856f14423ee2a89eddd52c8449cab8272befeb49.wgsl" + }, + { + "node": "gelu_23", + "inputs": [ + "linear_94" + ], + "output": "gelu_23", + "workgroups": [ + 24576, + 1, + 1 + ], + "kernel": "kernels/367142dda65caa73aeb0a439dc4e658fd68a839f2ea38435d5dd665c211c8172.wgsl" + }, + { + "node": "linear_95", + "inputs": [ + "gelu_23", + "p_visual_blocks_23_mlp_linear_fc2_weight", + "p_visual_blocks_23_mlp_linear_fc2_bias" + ], + "output": "linear_95", + "workgroups": [ + 128, + 48, + 1 + ], + "kernel": "kernels/7927e7ea9f061b32c446ff19f676ac9467c35b991b07e422c4c9de7950cfce1b.wgsl" + }, + { + "node": "add_96", + "inputs": [ + "add_95", + "linear_95" + ], + "output": "add_96", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl" + }, + { + "node": "layer_norm_48", + "inputs": [ + "add_96", + "p_visual_merger_norm_weight", + "p_visual_merger_norm_bias" + ], + "output": "layer_norm_48", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/13bcf8d207e7732db735911a6b01201a40428d9f90a835424287d741980d0477.wgsl" + }, + { + "node": "view_53", + "inputs": [ + "layer_norm_48" + ], + "output": "view_53", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/c9ee07ccbf1a69fe9051e52e72c7e872f7430b2b6d336bed29f185b5866c89d4.wgsl" + }, + { + "node": "linear_96", + "inputs": [ + "view_53", + "p_visual_merger_linear_fc1_weight", + "p_visual_merger_linear_fc1_bias" + ], + "output": "linear_96", + "workgroups": [ + 512, + 12, + 1 + ], + "kernel": "kernels/0da4a82616e50b86f810c79c9f07f6ce93106bcd76504fedc9abb91d3e8bf1d7.wgsl" + }, + { + "node": "gelu_24", + "inputs": [ + "linear_96" + ], + "output": "gelu_24", + "workgroups": [ + 6144, + 1, + 1 + ], + "kernel": "kernels/46562b75918b3a62c12e3ecd4d54df6e26a29b6df77221fed7fe8a5b49d536cc.wgsl" + }, + { + "node": "linear_97", + "inputs": [ + "gelu_24", + "p_visual_merger_linear_fc2_weight", + "p_visual_merger_linear_fc2_bias" + ], + "output": "linear_97", + "workgroups": [ + 256, + 12, + 1 + ], + "kernel": "kernels/a9c5bb635c0c2aaf5f9769cf1ede8fc8f9f21975fbd44c8d49f5946a12b7d669.wgsl" + } + ], + "memory": { + "slots": [ + 6291456, + 4096, + 4718592, + 4096, + 4096, + 6291456, + 12288, + 2097152, + 4096, + 4096, + 4096, + 8388608, + 16384, + 8388608, + 4096, + 4096, + 4096, + 6291456, + 12288, + 2097152, + 4096, + 4096, + 4096, + 8388608, + 16384, + 8388608, + 4096, + 4096, + 4096, + 6291456, + 12288, + 2097152, + 4096, + 4096, + 4096, + 8388608, + 16384, + 8388608, + 4096, + 4096, + 4096, + 6291456, + 12288, + 2097152, + 4096, + 4096, + 4096, + 8388608, + 16384, + 8388608, + 4096, + 4096, + 4096, + 6291456, + 12288, + 2097152, + 4096, + 4096, + 4096, + 8388608, + 16384, + 8388608, + 4096, + 4096, + 4096, + 6291456, + 12288, + 2097152, + 4096, + 4096, + 4096, + 8388608, + 16384, + 8388608, + 4096, + 4096, + 4096, + 6291456, + 12288, + 2097152, + 4096, + 4096, + 4096, + 8388608, + 16384, + 8388608, + 4096, + 4096, + 4096, + 6291456, + 12288, + 2097152, + 4096, + 4096, + 4096, + 8388608, + 16384, + 8388608, + 4096, + 4096, + 4096, + 6291456, + 12288, + 2097152, + 4096, + 4096, + 4096, + 8388608, + 16384, + 8388608, + 4096, + 4096, + 4096, + 6291456, + 12288, + 2097152, + 4096, + 4096, + 4096, + 8388608, + 16384, + 8388608, + 4096, + 4096, + 4096, + 6291456, + 12288, + 2097152, + 4096, + 4096, + 4096, + 8388608, + 16384, + 8388608, + 4096, + 4096, + 4096, + 6291456, + 12288, + 2097152, + 4096, + 4096, + 4096, + 8388608, + 16384, + 8388608, + 4096, + 4096, + 4096, + 6291456, + 12288, + 2097152, + 4096, + 4096, + 4096, + 8388608, + 16384, + 8388608, + 4096, + 4096, + 4096, + 6291456, + 12288, + 2097152, + 4096, + 4096, + 4096, + 8388608, + 16384, + 8388608, + 4096, + 4096, + 4096, + 6291456, + 12288, + 2097152, + 4096, + 4096, + 4096, + 8388608, + 16384, + 8388608, + 4096, + 4096, + 4096, + 6291456, + 12288, + 2097152, + 4096, + 4096, + 4096, + 8388608, + 16384, + 8388608, + 4096, + 4096, + 4096, + 6291456, + 12288, + 2097152, + 4096, + 4096, + 4096, + 8388608, + 16384, + 8388608, + 4096, + 4096, + 4096, + 6291456, + 12288, + 2097152, + 4096, + 4096, + 4096, + 8388608, + 16384, + 8388608, + 4096, + 4096, + 4096, + 6291456, + 12288, + 2097152, + 4096, + 4096, + 4096, + 8388608, + 16384, + 8388608, + 4096, + 4096, + 4096, + 6291456, + 12288, + 2097152, + 4096, + 4096, + 4096, + 8388608, + 16384, + 8388608, + 4096, + 4096, + 4096, + 6291456, + 12288, + 2097152, + 4096, + 4096, + 4096, + 8388608, + 16384, + 8388608, + 4096, + 4096, + 4096, + 6291456, + 12288, + 2097152, + 4096, + 4096, + 4096, + 8388608, + 16384, + 8388608, + 4096, + 4096, + 4096, + 6291456, + 12288, + 2097152, + 4096, + 4096, + 4096, + 8388608, + 16384, + 8388608, + 4096, + 4096, + 4096, + 6291456, + 12288, + 2097152, + 4096, + 4096, + 4096, + 8388608, + 16384, + 8388608, + 4096, + 4096, + 4096, + 33554432, + 16384, + 16777216, + 8192, + 6144, + 6144, + 3072, + 64, + 2359296, + 2359296, + 1572864, + 6291456, + 6291456, + 4718592, + 4718592, + 1572864, + 98304, + 1572864, + 786432, + 786432, + 1572864, + 9437184, + 9437184 + ], + "assignment": { + "p_visual_patch_embed_proj_weight": 0, + "p_visual_patch_embed_proj_bias": 1, + "p_visual_pos_embed_weight": 2, + "p_visual_blocks_0_norm1_weight": 3, + "p_visual_blocks_0_norm1_bias": 4, + "p_visual_blocks_0_attn_qkv_weight": 5, + "p_visual_blocks_0_attn_qkv_bias": 6, + "p_visual_blocks_0_attn_proj_weight": 7, + "p_visual_blocks_0_attn_proj_bias": 8, + "p_visual_blocks_0_norm2_weight": 9, + "p_visual_blocks_0_norm2_bias": 10, + "p_visual_blocks_0_mlp_linear_fc1_weight": 11, + "p_visual_blocks_0_mlp_linear_fc1_bias": 12, + "p_visual_blocks_0_mlp_linear_fc2_weight": 13, + "p_visual_blocks_0_mlp_linear_fc2_bias": 14, + "p_visual_blocks_1_norm1_weight": 15, + "p_visual_blocks_1_norm1_bias": 16, + "p_visual_blocks_1_attn_qkv_weight": 17, + "p_visual_blocks_1_attn_qkv_bias": 18, + "p_visual_blocks_1_attn_proj_weight": 19, + "p_visual_blocks_1_attn_proj_bias": 20, + "p_visual_blocks_1_norm2_weight": 21, + "p_visual_blocks_1_norm2_bias": 22, + "p_visual_blocks_1_mlp_linear_fc1_weight": 23, + "p_visual_blocks_1_mlp_linear_fc1_bias": 24, + "p_visual_blocks_1_mlp_linear_fc2_weight": 25, + "p_visual_blocks_1_mlp_linear_fc2_bias": 26, + "p_visual_blocks_2_norm1_weight": 27, + "p_visual_blocks_2_norm1_bias": 28, + "p_visual_blocks_2_attn_qkv_weight": 29, + "p_visual_blocks_2_attn_qkv_bias": 30, + "p_visual_blocks_2_attn_proj_weight": 31, + "p_visual_blocks_2_attn_proj_bias": 32, + "p_visual_blocks_2_norm2_weight": 33, + "p_visual_blocks_2_norm2_bias": 34, + "p_visual_blocks_2_mlp_linear_fc1_weight": 35, + "p_visual_blocks_2_mlp_linear_fc1_bias": 36, + "p_visual_blocks_2_mlp_linear_fc2_weight": 37, + "p_visual_blocks_2_mlp_linear_fc2_bias": 38, + "p_visual_blocks_3_norm1_weight": 39, + "p_visual_blocks_3_norm1_bias": 40, + "p_visual_blocks_3_attn_qkv_weight": 41, + "p_visual_blocks_3_attn_qkv_bias": 42, + "p_visual_blocks_3_attn_proj_weight": 43, + "p_visual_blocks_3_attn_proj_bias": 44, + "p_visual_blocks_3_norm2_weight": 45, + "p_visual_blocks_3_norm2_bias": 46, + "p_visual_blocks_3_mlp_linear_fc1_weight": 47, + "p_visual_blocks_3_mlp_linear_fc1_bias": 48, + "p_visual_blocks_3_mlp_linear_fc2_weight": 49, + "p_visual_blocks_3_mlp_linear_fc2_bias": 50, + "p_visual_blocks_4_norm1_weight": 51, + "p_visual_blocks_4_norm1_bias": 52, + "p_visual_blocks_4_attn_qkv_weight": 53, + "p_visual_blocks_4_attn_qkv_bias": 54, + "p_visual_blocks_4_attn_proj_weight": 55, + "p_visual_blocks_4_attn_proj_bias": 56, + "p_visual_blocks_4_norm2_weight": 57, + "p_visual_blocks_4_norm2_bias": 58, + "p_visual_blocks_4_mlp_linear_fc1_weight": 59, + "p_visual_blocks_4_mlp_linear_fc1_bias": 60, + "p_visual_blocks_4_mlp_linear_fc2_weight": 61, + "p_visual_blocks_4_mlp_linear_fc2_bias": 62, + "p_visual_blocks_5_norm1_weight": 63, + "p_visual_blocks_5_norm1_bias": 64, + "p_visual_blocks_5_attn_qkv_weight": 65, + "p_visual_blocks_5_attn_qkv_bias": 66, + "p_visual_blocks_5_attn_proj_weight": 67, + "p_visual_blocks_5_attn_proj_bias": 68, + "p_visual_blocks_5_norm2_weight": 69, + "p_visual_blocks_5_norm2_bias": 70, + "p_visual_blocks_5_mlp_linear_fc1_weight": 71, + "p_visual_blocks_5_mlp_linear_fc1_bias": 72, + "p_visual_blocks_5_mlp_linear_fc2_weight": 73, + "p_visual_blocks_5_mlp_linear_fc2_bias": 74, + "p_visual_blocks_6_norm1_weight": 75, + "p_visual_blocks_6_norm1_bias": 76, + "p_visual_blocks_6_attn_qkv_weight": 77, + "p_visual_blocks_6_attn_qkv_bias": 78, + "p_visual_blocks_6_attn_proj_weight": 79, + "p_visual_blocks_6_attn_proj_bias": 80, + "p_visual_blocks_6_norm2_weight": 81, + "p_visual_blocks_6_norm2_bias": 82, + "p_visual_blocks_6_mlp_linear_fc1_weight": 83, + "p_visual_blocks_6_mlp_linear_fc1_bias": 84, + "p_visual_blocks_6_mlp_linear_fc2_weight": 85, + "p_visual_blocks_6_mlp_linear_fc2_bias": 86, + "p_visual_blocks_7_norm1_weight": 87, + "p_visual_blocks_7_norm1_bias": 88, + "p_visual_blocks_7_attn_qkv_weight": 89, + "p_visual_blocks_7_attn_qkv_bias": 90, + "p_visual_blocks_7_attn_proj_weight": 91, + "p_visual_blocks_7_attn_proj_bias": 92, + "p_visual_blocks_7_norm2_weight": 93, + "p_visual_blocks_7_norm2_bias": 94, + "p_visual_blocks_7_mlp_linear_fc1_weight": 95, + "p_visual_blocks_7_mlp_linear_fc1_bias": 96, + "p_visual_blocks_7_mlp_linear_fc2_weight": 97, + "p_visual_blocks_7_mlp_linear_fc2_bias": 98, + "p_visual_blocks_8_norm1_weight": 99, + "p_visual_blocks_8_norm1_bias": 100, + "p_visual_blocks_8_attn_qkv_weight": 101, + "p_visual_blocks_8_attn_qkv_bias": 102, + "p_visual_blocks_8_attn_proj_weight": 103, + "p_visual_blocks_8_attn_proj_bias": 104, + "p_visual_blocks_8_norm2_weight": 105, + "p_visual_blocks_8_norm2_bias": 106, + "p_visual_blocks_8_mlp_linear_fc1_weight": 107, + "p_visual_blocks_8_mlp_linear_fc1_bias": 108, + "p_visual_blocks_8_mlp_linear_fc2_weight": 109, + "p_visual_blocks_8_mlp_linear_fc2_bias": 110, + "p_visual_blocks_9_norm1_weight": 111, + "p_visual_blocks_9_norm1_bias": 112, + "p_visual_blocks_9_attn_qkv_weight": 113, + "p_visual_blocks_9_attn_qkv_bias": 114, + "p_visual_blocks_9_attn_proj_weight": 115, + "p_visual_blocks_9_attn_proj_bias": 116, + "p_visual_blocks_9_norm2_weight": 117, + "p_visual_blocks_9_norm2_bias": 118, + "p_visual_blocks_9_mlp_linear_fc1_weight": 119, + "p_visual_blocks_9_mlp_linear_fc1_bias": 120, + "p_visual_blocks_9_mlp_linear_fc2_weight": 121, + "p_visual_blocks_9_mlp_linear_fc2_bias": 122, + "p_visual_blocks_10_norm1_weight": 123, + "p_visual_blocks_10_norm1_bias": 124, + "p_visual_blocks_10_attn_qkv_weight": 125, + "p_visual_blocks_10_attn_qkv_bias": 126, + "p_visual_blocks_10_attn_proj_weight": 127, + "p_visual_blocks_10_attn_proj_bias": 128, + "p_visual_blocks_10_norm2_weight": 129, + "p_visual_blocks_10_norm2_bias": 130, + "p_visual_blocks_10_mlp_linear_fc1_weight": 131, + "p_visual_blocks_10_mlp_linear_fc1_bias": 132, + "p_visual_blocks_10_mlp_linear_fc2_weight": 133, + "p_visual_blocks_10_mlp_linear_fc2_bias": 134, + "p_visual_blocks_11_norm1_weight": 135, + "p_visual_blocks_11_norm1_bias": 136, + "p_visual_blocks_11_attn_qkv_weight": 137, + "p_visual_blocks_11_attn_qkv_bias": 138, + "p_visual_blocks_11_attn_proj_weight": 139, + "p_visual_blocks_11_attn_proj_bias": 140, + "p_visual_blocks_11_norm2_weight": 141, + "p_visual_blocks_11_norm2_bias": 142, + "p_visual_blocks_11_mlp_linear_fc1_weight": 143, + "p_visual_blocks_11_mlp_linear_fc1_bias": 144, + "p_visual_blocks_11_mlp_linear_fc2_weight": 145, + "p_visual_blocks_11_mlp_linear_fc2_bias": 146, + "p_visual_blocks_12_norm1_weight": 147, + "p_visual_blocks_12_norm1_bias": 148, + "p_visual_blocks_12_attn_qkv_weight": 149, + "p_visual_blocks_12_attn_qkv_bias": 150, + "p_visual_blocks_12_attn_proj_weight": 151, + "p_visual_blocks_12_attn_proj_bias": 152, + "p_visual_blocks_12_norm2_weight": 153, + "p_visual_blocks_12_norm2_bias": 154, + "p_visual_blocks_12_mlp_linear_fc1_weight": 155, + "p_visual_blocks_12_mlp_linear_fc1_bias": 156, + "p_visual_blocks_12_mlp_linear_fc2_weight": 157, + "p_visual_blocks_12_mlp_linear_fc2_bias": 158, + "p_visual_blocks_13_norm1_weight": 159, + "p_visual_blocks_13_norm1_bias": 160, + "p_visual_blocks_13_attn_qkv_weight": 161, + "p_visual_blocks_13_attn_qkv_bias": 162, + "p_visual_blocks_13_attn_proj_weight": 163, + "p_visual_blocks_13_attn_proj_bias": 164, + "p_visual_blocks_13_norm2_weight": 165, + "p_visual_blocks_13_norm2_bias": 166, + "p_visual_blocks_13_mlp_linear_fc1_weight": 167, + "p_visual_blocks_13_mlp_linear_fc1_bias": 168, + "p_visual_blocks_13_mlp_linear_fc2_weight": 169, + "p_visual_blocks_13_mlp_linear_fc2_bias": 170, + "p_visual_blocks_14_norm1_weight": 171, + "p_visual_blocks_14_norm1_bias": 172, + "p_visual_blocks_14_attn_qkv_weight": 173, + "p_visual_blocks_14_attn_qkv_bias": 174, + "p_visual_blocks_14_attn_proj_weight": 175, + "p_visual_blocks_14_attn_proj_bias": 176, + "p_visual_blocks_14_norm2_weight": 177, + "p_visual_blocks_14_norm2_bias": 178, + "p_visual_blocks_14_mlp_linear_fc1_weight": 179, + "p_visual_blocks_14_mlp_linear_fc1_bias": 180, + "p_visual_blocks_14_mlp_linear_fc2_weight": 181, + "p_visual_blocks_14_mlp_linear_fc2_bias": 182, + "p_visual_blocks_15_norm1_weight": 183, + "p_visual_blocks_15_norm1_bias": 184, + "p_visual_blocks_15_attn_qkv_weight": 185, + "p_visual_blocks_15_attn_qkv_bias": 186, + "p_visual_blocks_15_attn_proj_weight": 187, + "p_visual_blocks_15_attn_proj_bias": 188, + "p_visual_blocks_15_norm2_weight": 189, + "p_visual_blocks_15_norm2_bias": 190, + "p_visual_blocks_15_mlp_linear_fc1_weight": 191, + "p_visual_blocks_15_mlp_linear_fc1_bias": 192, + "p_visual_blocks_15_mlp_linear_fc2_weight": 193, + "p_visual_blocks_15_mlp_linear_fc2_bias": 194, + "p_visual_blocks_16_norm1_weight": 195, + "p_visual_blocks_16_norm1_bias": 196, + "p_visual_blocks_16_attn_qkv_weight": 197, + "p_visual_blocks_16_attn_qkv_bias": 198, + "p_visual_blocks_16_attn_proj_weight": 199, + "p_visual_blocks_16_attn_proj_bias": 200, + "p_visual_blocks_16_norm2_weight": 201, + "p_visual_blocks_16_norm2_bias": 202, + "p_visual_blocks_16_mlp_linear_fc1_weight": 203, + "p_visual_blocks_16_mlp_linear_fc1_bias": 204, + "p_visual_blocks_16_mlp_linear_fc2_weight": 205, + "p_visual_blocks_16_mlp_linear_fc2_bias": 206, + "p_visual_blocks_17_norm1_weight": 207, + "p_visual_blocks_17_norm1_bias": 208, + "p_visual_blocks_17_attn_qkv_weight": 209, + "p_visual_blocks_17_attn_qkv_bias": 210, + "p_visual_blocks_17_attn_proj_weight": 211, + "p_visual_blocks_17_attn_proj_bias": 212, + "p_visual_blocks_17_norm2_weight": 213, + "p_visual_blocks_17_norm2_bias": 214, + "p_visual_blocks_17_mlp_linear_fc1_weight": 215, + "p_visual_blocks_17_mlp_linear_fc1_bias": 216, + "p_visual_blocks_17_mlp_linear_fc2_weight": 217, + "p_visual_blocks_17_mlp_linear_fc2_bias": 218, + "p_visual_blocks_18_norm1_weight": 219, + "p_visual_blocks_18_norm1_bias": 220, + "p_visual_blocks_18_attn_qkv_weight": 221, + "p_visual_blocks_18_attn_qkv_bias": 222, + "p_visual_blocks_18_attn_proj_weight": 223, + "p_visual_blocks_18_attn_proj_bias": 224, + "p_visual_blocks_18_norm2_weight": 225, + "p_visual_blocks_18_norm2_bias": 226, + "p_visual_blocks_18_mlp_linear_fc1_weight": 227, + "p_visual_blocks_18_mlp_linear_fc1_bias": 228, + "p_visual_blocks_18_mlp_linear_fc2_weight": 229, + "p_visual_blocks_18_mlp_linear_fc2_bias": 230, + "p_visual_blocks_19_norm1_weight": 231, + "p_visual_blocks_19_norm1_bias": 232, + "p_visual_blocks_19_attn_qkv_weight": 233, + "p_visual_blocks_19_attn_qkv_bias": 234, + "p_visual_blocks_19_attn_proj_weight": 235, + "p_visual_blocks_19_attn_proj_bias": 236, + "p_visual_blocks_19_norm2_weight": 237, + "p_visual_blocks_19_norm2_bias": 238, + "p_visual_blocks_19_mlp_linear_fc1_weight": 239, + "p_visual_blocks_19_mlp_linear_fc1_bias": 240, + "p_visual_blocks_19_mlp_linear_fc2_weight": 241, + "p_visual_blocks_19_mlp_linear_fc2_bias": 242, + "p_visual_blocks_20_norm1_weight": 243, + "p_visual_blocks_20_norm1_bias": 244, + "p_visual_blocks_20_attn_qkv_weight": 245, + "p_visual_blocks_20_attn_qkv_bias": 246, + "p_visual_blocks_20_attn_proj_weight": 247, + "p_visual_blocks_20_attn_proj_bias": 248, + "p_visual_blocks_20_norm2_weight": 249, + "p_visual_blocks_20_norm2_bias": 250, + "p_visual_blocks_20_mlp_linear_fc1_weight": 251, + "p_visual_blocks_20_mlp_linear_fc1_bias": 252, + "p_visual_blocks_20_mlp_linear_fc2_weight": 253, + "p_visual_blocks_20_mlp_linear_fc2_bias": 254, + "p_visual_blocks_21_norm1_weight": 255, + "p_visual_blocks_21_norm1_bias": 256, + "p_visual_blocks_21_attn_qkv_weight": 257, + "p_visual_blocks_21_attn_qkv_bias": 258, + "p_visual_blocks_21_attn_proj_weight": 259, + "p_visual_blocks_21_attn_proj_bias": 260, + "p_visual_blocks_21_norm2_weight": 261, + "p_visual_blocks_21_norm2_bias": 262, + "p_visual_blocks_21_mlp_linear_fc1_weight": 263, + "p_visual_blocks_21_mlp_linear_fc1_bias": 264, + "p_visual_blocks_21_mlp_linear_fc2_weight": 265, + "p_visual_blocks_21_mlp_linear_fc2_bias": 266, + "p_visual_blocks_22_norm1_weight": 267, + "p_visual_blocks_22_norm1_bias": 268, + "p_visual_blocks_22_attn_qkv_weight": 269, + "p_visual_blocks_22_attn_qkv_bias": 270, + "p_visual_blocks_22_attn_proj_weight": 271, + "p_visual_blocks_22_attn_proj_bias": 272, + "p_visual_blocks_22_norm2_weight": 273, + "p_visual_blocks_22_norm2_bias": 274, + "p_visual_blocks_22_mlp_linear_fc1_weight": 275, + "p_visual_blocks_22_mlp_linear_fc1_bias": 276, + "p_visual_blocks_22_mlp_linear_fc2_weight": 277, + "p_visual_blocks_22_mlp_linear_fc2_bias": 278, + "p_visual_blocks_23_norm1_weight": 279, + "p_visual_blocks_23_norm1_bias": 280, + "p_visual_blocks_23_attn_qkv_weight": 281, + "p_visual_blocks_23_attn_qkv_bias": 282, + "p_visual_blocks_23_attn_proj_weight": 283, + "p_visual_blocks_23_attn_proj_bias": 284, + "p_visual_blocks_23_norm2_weight": 285, + "p_visual_blocks_23_norm2_bias": 286, + "p_visual_blocks_23_mlp_linear_fc1_weight": 287, + "p_visual_blocks_23_mlp_linear_fc1_bias": 288, + "p_visual_blocks_23_mlp_linear_fc2_weight": 289, + "p_visual_blocks_23_mlp_linear_fc2_bias": 290, + "p_visual_merger_norm_weight": 291, + "p_visual_merger_norm_bias": 292, + "p_visual_merger_linear_fc1_weight": 293, + "p_visual_merger_linear_fc1_bias": 294, + "p_visual_merger_linear_fc2_weight": 295, + "p_visual_merger_linear_fc2_bias": 296, + "b_indices": 297, + "b_interpolation_weights": 298, + "b_positions": 299, + "b_visual_rotary_pos_emb_inv_freq": 300, + "pixels": 301, + "view": 302, + "conv3d": 303, + "view_1": 302, + "embedding": 304, + "unsqueeze": 303, + "mul": 305, + "sum_1": 303, + "add": 304, + "unsqueeze_1": 303, + "mul_1": 302, + "view_2": 303, + "view_3": 302, + "view_4": 305, + "cat": 303, + "cos": 304, + "sin": 305, + "layer_norm": 303, + "linear": 306, + "view_5": 307, + "permute": 306, + "select": 303, + "select_1": 307, + "select_2": 308, + "unsqueeze_2": 306, + "unsqueeze_3": 309, + "mul_2": 310, + "slice_1": 311, + "slice_2": 312, + "neg": 303, + "cat_1": 313, + "mul_3": 303, + "add_1": 313, + "mul_4": 310, + "slice_3": 312, + "slice_4": 311, + "neg_1": 303, + "cat_2": 306, + "mul_5": 303, + "add_2": 307, + "transpose": 310, + "unsqueeze_4": 303, + "transpose_1": 313, + "unsqueeze_5": 310, + "transpose_2": 313, + "unsqueeze_6": 308, + "slice_5": 313, + "slice_6": 303, + "slice_7": 310, + "transpose_3": 308, + "matmul": 314, + "mul_6": 315, + "softmax": 314, + "matmul_1": 303, + "transpose_4": 313, + "clone": 308, + "cat_3": 310, + "view_6": 303, + "linear_1": 313, + "add_3": 308, + "layer_norm_1": 310, + "linear_2": 315, + "gelu": 314, + "linear_3": 303, + "add_4": 313, + "layer_norm_2": 310, + "linear_4": 306, + "view_7": 307, + "permute_1": 306, + "select_3": 308, + "select_4": 303, + "select_5": 310, + "unsqueeze_7": 309, + "unsqueeze_8": 311, + "mul_7": 302, + "slice_8": 312, + "slice_9": 307, + "neg_2": 308, + "cat_4": 306, + "mul_8": 308, + "add_5": 307, + "mul_9": 308, + "slice_10": 312, + "slice_11": 302, + "neg_3": 303, + "cat_5": 302, + "mul_10": 303, + "add_6": 302, + "transpose_5": 308, + "unsqueeze_9": 303, + "transpose_6": 308, + "unsqueeze_10": 302, + "transpose_7": 308, + "unsqueeze_11": 310, + "slice_12": 308, + "slice_13": 303, + "slice_14": 302, + "transpose_8": 310, + "matmul_2": 315, + "mul_11": 314, + "softmax_1": 315, + "matmul_3": 303, + "transpose_9": 308, + "clone_1": 310, + "cat_6": 303, + "view_8": 308, + "linear_5": 310, + "add_7": 303, + "layer_norm_3": 308, + "linear_6": 314, + "gelu_1": 315, + "linear_7": 313, + "add_8": 310, + "layer_norm_4": 308, + "linear_8": 306, + "view_9": 307, + "permute_2": 306, + "select_6": 303, + "select_7": 313, + "select_8": 308, + "unsqueeze_12": 309, + "unsqueeze_13": 312, + "mul_12": 302, + "slice_15": 311, + "slice_16": 307, + "neg_4": 303, + "cat_7": 306, + "mul_13": 303, + "add_9": 307, + "mul_14": 303, + "slice_17": 311, + "slice_18": 302, + "neg_5": 313, + "cat_8": 302, + "mul_15": 313, + "add_10": 302, + "transpose_10": 303, + "unsqueeze_14": 313, + "transpose_11": 303, + "unsqueeze_15": 302, + "transpose_12": 303, + "unsqueeze_16": 308, + "slice_19": 303, + "slice_20": 313, + "slice_21": 302, + "transpose_13": 308, + "matmul_4": 314, + "mul_16": 315, + "softmax_2": 314, + "matmul_5": 313, + "transpose_14": 303, + "clone_2": 308, + "cat_9": 313, + "view_10": 303, + "linear_9": 308, + "add_11": 313, + "layer_norm_5": 303, + "linear_10": 315, + "gelu_2": 314, + "linear_11": 310, + "add_12": 308, + "layer_norm_6": 303, + "linear_12": 306, + "view_11": 307, + "permute_3": 306, + "select_9": 313, + "select_10": 310, + "select_11": 303, + "unsqueeze_17": 309, + "unsqueeze_18": 311, + "mul_17": 302, + "slice_22": 312, + "slice_23": 307, + "neg_6": 313, + "cat_10": 306, + "mul_18": 313, + "add_13": 307, + "mul_19": 313, + "slice_24": 312, + "slice_25": 302, + "neg_7": 310, + "cat_11": 302, + "mul_20": 310, + "add_14": 302, + "transpose_15": 313, + "unsqueeze_19": 310, + "transpose_16": 313, + "unsqueeze_20": 302, + "transpose_17": 313, + "unsqueeze_21": 303, + "slice_26": 313, + "slice_27": 310, + "slice_28": 302, + "transpose_18": 303, + "matmul_6": 315, + "mul_21": 314, + "softmax_3": 315, + "matmul_7": 310, + "transpose_19": 313, + "clone_3": 303, + "cat_12": 310, + "view_12": 313, + "linear_13": 303, + "add_15": 310, + "layer_norm_7": 313, + "linear_14": 314, + "gelu_3": 315, + "linear_15": 308, + "add_16": 303, + "layer_norm_8": 313, + "linear_16": 306, + "view_13": 307, + "permute_4": 306, + "select_12": 310, + "select_13": 308, + "select_14": 313, + "unsqueeze_22": 309, + "unsqueeze_23": 312, + "mul_22": 302, + "slice_29": 311, + "slice_30": 307, + "neg_8": 310, + "cat_13": 306, + "mul_23": 310, + "add_17": 307, + "mul_24": 310, + "slice_31": 311, + "slice_32": 302, + "neg_9": 308, + "cat_14": 302, + "mul_25": 308, + "add_18": 302, + "transpose_20": 310, + "unsqueeze_24": 308, + "transpose_21": 310, + "unsqueeze_25": 302, + "transpose_22": 310, + "unsqueeze_26": 313, + "slice_33": 310, + "slice_34": 308, + "slice_35": 302, + "transpose_23": 313, + "matmul_8": 314, + "mul_26": 315, + "softmax_4": 314, + "matmul_9": 308, + "transpose_24": 310, + "clone_4": 313, + "cat_15": 308, + "view_14": 310, + "linear_17": 313, + "add_19": 308, + "layer_norm_9": 310, + "linear_18": 315, + "gelu_4": 314, + "linear_19": 303, + "add_20": 313, + "layer_norm_10": 310, + "linear_20": 306, + "view_15": 307, + "permute_5": 306, + "select_15": 308, + "select_16": 303, + "select_17": 310, + "unsqueeze_27": 309, + "unsqueeze_28": 311, + "mul_27": 302, + "slice_36": 312, + "slice_37": 307, + "neg_10": 308, + "cat_16": 306, + "mul_28": 308, + "add_21": 307, + "mul_29": 308, + "slice_38": 312, + "slice_39": 302, + "neg_11": 303, + "cat_17": 302, + "mul_30": 303, + "add_22": 302, + "transpose_25": 308, + "unsqueeze_29": 303, + "transpose_26": 308, + "unsqueeze_30": 302, + "transpose_27": 308, + "unsqueeze_31": 310, + "slice_40": 308, + "slice_41": 303, + "slice_42": 302, + "transpose_28": 310, + "matmul_10": 315, + "mul_31": 314, + "softmax_5": 315, + "matmul_11": 303, + "transpose_29": 308, + "clone_5": 310, + "cat_18": 303, + "view_16": 308, + "linear_21": 310, + "add_23": 303, + "layer_norm_11": 308, + "linear_22": 314, + "gelu_5": 315, + "linear_23": 313, + "add_24": 310, + "layer_norm_12": 308, + "linear_24": 306, + "view_17": 307, + "permute_6": 306, + "select_18": 303, + "select_19": 313, + "select_20": 308, + "unsqueeze_32": 309, + "unsqueeze_33": 312, + "mul_32": 302, + "slice_43": 311, + "slice_44": 307, + "neg_12": 303, + "cat_19": 306, + "mul_33": 303, + "add_25": 307, + "mul_34": 303, + "slice_45": 311, + "slice_46": 302, + "neg_13": 313, + "cat_20": 302, + "mul_35": 313, + "add_26": 302, + "transpose_30": 303, + "unsqueeze_34": 313, + "transpose_31": 303, + "unsqueeze_35": 302, + "transpose_32": 303, + "unsqueeze_36": 308, + "slice_47": 303, + "slice_48": 313, + "slice_49": 302, + "transpose_33": 308, + "matmul_12": 314, + "mul_36": 315, + "softmax_6": 314, + "matmul_13": 313, + "transpose_34": 303, + "clone_6": 308, + "cat_21": 313, + "view_18": 303, + "linear_25": 308, + "add_27": 313, + "layer_norm_13": 303, + "linear_26": 315, + "gelu_6": 314, + "linear_27": 310, + "add_28": 308, + "layer_norm_14": 303, + "linear_28": 306, + "view_19": 307, + "permute_7": 306, + "select_21": 313, + "select_22": 310, + "select_23": 303, + "unsqueeze_37": 309, + "unsqueeze_38": 311, + "mul_37": 302, + "slice_50": 312, + "slice_51": 307, + "neg_14": 313, + "cat_22": 306, + "mul_38": 313, + "add_29": 307, + "mul_39": 313, + "slice_52": 312, + "slice_53": 302, + "neg_15": 310, + "cat_23": 302, + "mul_40": 310, + "add_30": 302, + "transpose_35": 313, + "unsqueeze_39": 310, + "transpose_36": 313, + "unsqueeze_40": 302, + "transpose_37": 313, + "unsqueeze_41": 303, + "slice_54": 313, + "slice_55": 310, + "slice_56": 302, + "transpose_38": 303, + "matmul_14": 315, + "mul_41": 314, + "softmax_7": 315, + "matmul_15": 310, + "transpose_39": 313, + "clone_7": 303, + "cat_24": 310, + "view_20": 313, + "linear_29": 303, + "add_31": 310, + "layer_norm_15": 313, + "linear_30": 314, + "gelu_7": 315, + "linear_31": 308, + "add_32": 303, + "layer_norm_16": 313, + "linear_32": 306, + "view_21": 307, + "permute_8": 306, + "select_24": 310, + "select_25": 308, + "select_26": 313, + "unsqueeze_42": 309, + "unsqueeze_43": 312, + "mul_42": 302, + "slice_57": 311, + "slice_58": 307, + "neg_16": 310, + "cat_25": 306, + "mul_43": 310, + "add_33": 307, + "mul_44": 310, + "slice_59": 311, + "slice_60": 302, + "neg_17": 308, + "cat_26": 302, + "mul_45": 308, + "add_34": 302, + "transpose_40": 310, + "unsqueeze_44": 308, + "transpose_41": 310, + "unsqueeze_45": 302, + "transpose_42": 310, + "unsqueeze_46": 313, + "slice_61": 310, + "slice_62": 308, + "slice_63": 302, + "transpose_43": 313, + "matmul_16": 314, + "mul_46": 315, + "softmax_8": 314, + "matmul_17": 308, + "transpose_44": 310, + "clone_8": 313, + "cat_27": 308, + "view_22": 310, + "linear_33": 313, + "add_35": 308, + "layer_norm_17": 310, + "linear_34": 315, + "gelu_8": 314, + "linear_35": 303, + "add_36": 313, + "layer_norm_18": 310, + "linear_36": 306, + "view_23": 307, + "permute_9": 306, + "select_27": 308, + "select_28": 303, + "select_29": 310, + "unsqueeze_47": 309, + "unsqueeze_48": 311, + "mul_47": 302, + "slice_64": 312, + "slice_65": 307, + "neg_18": 308, + "cat_28": 306, + "mul_48": 308, + "add_37": 307, + "mul_49": 308, + "slice_66": 312, + "slice_67": 302, + "neg_19": 303, + "cat_29": 302, + "mul_50": 303, + "add_38": 302, + "transpose_45": 308, + "unsqueeze_49": 303, + "transpose_46": 308, + "unsqueeze_50": 302, + "transpose_47": 308, + "unsqueeze_51": 310, + "slice_68": 308, + "slice_69": 303, + "slice_70": 302, + "transpose_48": 310, + "matmul_18": 315, + "mul_51": 314, + "softmax_9": 315, + "matmul_19": 303, + "transpose_49": 308, + "clone_9": 310, + "cat_30": 303, + "view_24": 308, + "linear_37": 310, + "add_39": 303, + "layer_norm_19": 308, + "linear_38": 314, + "gelu_9": 315, + "linear_39": 313, + "add_40": 310, + "layer_norm_20": 308, + "linear_40": 306, + "view_25": 307, + "permute_10": 306, + "select_30": 303, + "select_31": 313, + "select_32": 308, + "unsqueeze_52": 309, + "unsqueeze_53": 312, + "mul_52": 302, + "slice_71": 311, + "slice_72": 307, + "neg_20": 303, + "cat_31": 306, + "mul_53": 303, + "add_41": 307, + "mul_54": 303, + "slice_73": 311, + "slice_74": 302, + "neg_21": 313, + "cat_32": 302, + "mul_55": 313, + "add_42": 302, + "transpose_50": 303, + "unsqueeze_54": 313, + "transpose_51": 303, + "unsqueeze_55": 302, + "transpose_52": 303, + "unsqueeze_56": 308, + "slice_75": 303, + "slice_76": 313, + "slice_77": 302, + "transpose_53": 308, + "matmul_20": 314, + "mul_56": 315, + "softmax_10": 314, + "matmul_21": 313, + "transpose_54": 303, + "clone_10": 308, + "cat_33": 313, + "view_26": 303, + "linear_41": 308, + "add_43": 313, + "layer_norm_21": 303, + "linear_42": 315, + "gelu_10": 314, + "linear_43": 310, + "add_44": 308, + "layer_norm_22": 303, + "linear_44": 306, + "view_27": 307, + "permute_11": 306, + "select_33": 313, + "select_34": 310, + "select_35": 303, + "unsqueeze_57": 309, + "unsqueeze_58": 311, + "mul_57": 302, + "slice_78": 312, + "slice_79": 307, + "neg_22": 313, + "cat_34": 306, + "mul_58": 313, + "add_45": 307, + "mul_59": 313, + "slice_80": 312, + "slice_81": 302, + "neg_23": 310, + "cat_35": 302, + "mul_60": 310, + "add_46": 302, + "transpose_55": 313, + "unsqueeze_59": 310, + "transpose_56": 313, + "unsqueeze_60": 302, + "transpose_57": 313, + "unsqueeze_61": 303, + "slice_82": 313, + "slice_83": 310, + "slice_84": 302, + "transpose_58": 303, + "matmul_22": 315, + "mul_61": 314, + "softmax_11": 315, + "matmul_23": 310, + "transpose_59": 313, + "clone_11": 303, + "cat_36": 310, + "view_28": 313, + "linear_45": 303, + "add_47": 310, + "layer_norm_23": 313, + "linear_46": 314, + "gelu_11": 315, + "linear_47": 308, + "add_48": 303, + "layer_norm_24": 313, + "linear_48": 306, + "view_29": 307, + "permute_12": 306, + "select_36": 310, + "select_37": 308, + "select_38": 313, + "unsqueeze_62": 309, + "unsqueeze_63": 312, + "mul_62": 302, + "slice_85": 311, + "slice_86": 307, + "neg_24": 310, + "cat_37": 306, + "mul_63": 310, + "add_49": 307, + "mul_64": 310, + "slice_87": 311, + "slice_88": 302, + "neg_25": 308, + "cat_38": 302, + "mul_65": 308, + "add_50": 302, + "transpose_60": 310, + "unsqueeze_64": 308, + "transpose_61": 310, + "unsqueeze_65": 302, + "transpose_62": 310, + "unsqueeze_66": 313, + "slice_89": 310, + "slice_90": 308, + "slice_91": 302, + "transpose_63": 313, + "matmul_24": 314, + "mul_66": 315, + "softmax_12": 314, + "matmul_25": 308, + "transpose_64": 310, + "clone_12": 313, + "cat_39": 308, + "view_30": 310, + "linear_49": 313, + "add_51": 308, + "layer_norm_25": 310, + "linear_50": 315, + "gelu_12": 314, + "linear_51": 303, + "add_52": 313, + "layer_norm_26": 310, + "linear_52": 306, + "view_31": 307, + "permute_13": 306, + "select_39": 308, + "select_40": 303, + "select_41": 310, + "unsqueeze_67": 309, + "unsqueeze_68": 311, + "mul_67": 302, + "slice_92": 312, + "slice_93": 307, + "neg_26": 308, + "cat_40": 306, + "mul_68": 308, + "add_53": 307, + "mul_69": 308, + "slice_94": 312, + "slice_95": 302, + "neg_27": 303, + "cat_41": 302, + "mul_70": 303, + "add_54": 302, + "transpose_65": 308, + "unsqueeze_69": 303, + "transpose_66": 308, + "unsqueeze_70": 302, + "transpose_67": 308, + "unsqueeze_71": 310, + "slice_96": 308, + "slice_97": 303, + "slice_98": 302, + "transpose_68": 310, + "matmul_26": 315, + "mul_71": 314, + "softmax_13": 315, + "matmul_27": 303, + "transpose_69": 308, + "clone_13": 310, + "cat_42": 303, + "view_32": 308, + "linear_53": 310, + "add_55": 303, + "layer_norm_27": 308, + "linear_54": 314, + "gelu_13": 315, + "linear_55": 313, + "add_56": 310, + "layer_norm_28": 308, + "linear_56": 306, + "view_33": 307, + "permute_14": 306, + "select_42": 303, + "select_43": 313, + "select_44": 308, + "unsqueeze_72": 309, + "unsqueeze_73": 312, + "mul_72": 302, + "slice_99": 311, + "slice_100": 307, + "neg_28": 303, + "cat_43": 306, + "mul_73": 303, + "add_57": 307, + "mul_74": 303, + "slice_101": 311, + "slice_102": 302, + "neg_29": 313, + "cat_44": 302, + "mul_75": 313, + "add_58": 302, + "transpose_70": 303, + "unsqueeze_74": 313, + "transpose_71": 303, + "unsqueeze_75": 302, + "transpose_72": 303, + "unsqueeze_76": 308, + "slice_103": 303, + "slice_104": 313, + "slice_105": 302, + "transpose_73": 308, + "matmul_28": 314, + "mul_76": 315, + "softmax_14": 314, + "matmul_29": 313, + "transpose_74": 303, + "clone_14": 308, + "cat_45": 313, + "view_34": 303, + "linear_57": 308, + "add_59": 313, + "layer_norm_29": 303, + "linear_58": 315, + "gelu_14": 314, + "linear_59": 310, + "add_60": 308, + "layer_norm_30": 303, + "linear_60": 306, + "view_35": 307, + "permute_15": 306, + "select_45": 313, + "select_46": 310, + "select_47": 303, + "unsqueeze_77": 309, + "unsqueeze_78": 311, + "mul_77": 302, + "slice_106": 312, + "slice_107": 307, + "neg_30": 313, + "cat_46": 306, + "mul_78": 313, + "add_61": 307, + "mul_79": 313, + "slice_108": 312, + "slice_109": 302, + "neg_31": 310, + "cat_47": 302, + "mul_80": 310, + "add_62": 302, + "transpose_75": 313, + "unsqueeze_79": 310, + "transpose_76": 313, + "unsqueeze_80": 302, + "transpose_77": 313, + "unsqueeze_81": 303, + "slice_110": 313, + "slice_111": 310, + "slice_112": 302, + "transpose_78": 303, + "matmul_30": 315, + "mul_81": 314, + "softmax_15": 315, + "matmul_31": 310, + "transpose_79": 313, + "clone_15": 303, + "cat_48": 310, + "view_36": 313, + "linear_61": 303, + "add_63": 310, + "layer_norm_31": 313, + "linear_62": 314, + "gelu_15": 315, + "linear_63": 308, + "add_64": 303, + "layer_norm_32": 313, + "linear_64": 306, + "view_37": 307, + "permute_16": 306, + "select_48": 310, + "select_49": 308, + "select_50": 313, + "unsqueeze_82": 309, + "unsqueeze_83": 312, + "mul_82": 302, + "slice_113": 311, + "slice_114": 307, + "neg_32": 310, + "cat_49": 306, + "mul_83": 310, + "add_65": 307, + "mul_84": 310, + "slice_115": 311, + "slice_116": 302, + "neg_33": 308, + "cat_50": 302, + "mul_85": 308, + "add_66": 302, + "transpose_80": 310, + "unsqueeze_84": 308, + "transpose_81": 310, + "unsqueeze_85": 302, + "transpose_82": 310, + "unsqueeze_86": 313, + "slice_117": 310, + "slice_118": 308, + "slice_119": 302, + "transpose_83": 313, + "matmul_32": 314, + "mul_86": 315, + "softmax_16": 314, + "matmul_33": 308, + "transpose_84": 310, + "clone_16": 313, + "cat_51": 308, + "view_38": 310, + "linear_65": 313, + "add_67": 308, + "layer_norm_33": 310, + "linear_66": 315, + "gelu_16": 314, + "linear_67": 303, + "add_68": 313, + "layer_norm_34": 310, + "linear_68": 306, + "view_39": 307, + "permute_17": 306, + "select_51": 308, + "select_52": 303, + "select_53": 310, + "unsqueeze_87": 309, + "unsqueeze_88": 311, + "mul_87": 302, + "slice_120": 312, + "slice_121": 307, + "neg_34": 308, + "cat_52": 306, + "mul_88": 308, + "add_69": 307, + "mul_89": 308, + "slice_122": 312, + "slice_123": 302, + "neg_35": 303, + "cat_53": 302, + "mul_90": 303, + "add_70": 302, + "transpose_85": 308, + "unsqueeze_89": 303, + "transpose_86": 308, + "unsqueeze_90": 302, + "transpose_87": 308, + "unsqueeze_91": 310, + "slice_124": 308, + "slice_125": 303, + "slice_126": 302, + "transpose_88": 310, + "matmul_34": 315, + "mul_91": 314, + "softmax_17": 315, + "matmul_35": 303, + "transpose_89": 308, + "clone_17": 310, + "cat_54": 303, + "view_40": 308, + "linear_69": 310, + "add_71": 303, + "layer_norm_35": 308, + "linear_70": 314, + "gelu_17": 315, + "linear_71": 313, + "add_72": 310, + "layer_norm_36": 308, + "linear_72": 306, + "view_41": 307, + "permute_18": 306, + "select_54": 303, + "select_55": 313, + "select_56": 308, + "unsqueeze_92": 309, + "unsqueeze_93": 312, + "mul_92": 302, + "slice_127": 311, + "slice_128": 307, + "neg_36": 303, + "cat_55": 306, + "mul_93": 303, + "add_73": 307, + "mul_94": 303, + "slice_129": 311, + "slice_130": 302, + "neg_37": 313, + "cat_56": 302, + "mul_95": 313, + "add_74": 302, + "transpose_90": 303, + "unsqueeze_94": 313, + "transpose_91": 303, + "unsqueeze_95": 302, + "transpose_92": 303, + "unsqueeze_96": 308, + "slice_131": 303, + "slice_132": 313, + "slice_133": 302, + "transpose_93": 308, + "matmul_36": 314, + "mul_96": 315, + "softmax_18": 314, + "matmul_37": 313, + "transpose_94": 303, + "clone_18": 308, + "cat_57": 313, + "view_42": 303, + "linear_73": 308, + "add_75": 313, + "layer_norm_37": 303, + "linear_74": 315, + "gelu_18": 314, + "linear_75": 310, + "add_76": 308, + "layer_norm_38": 303, + "linear_76": 306, + "view_43": 307, + "permute_19": 306, + "select_57": 313, + "select_58": 310, + "select_59": 303, + "unsqueeze_97": 309, + "unsqueeze_98": 311, + "mul_97": 302, + "slice_134": 312, + "slice_135": 307, + "neg_38": 313, + "cat_58": 306, + "mul_98": 313, + "add_77": 307, + "mul_99": 313, + "slice_136": 312, + "slice_137": 302, + "neg_39": 310, + "cat_59": 302, + "mul_100": 310, + "add_78": 302, + "transpose_95": 313, + "unsqueeze_99": 310, + "transpose_96": 313, + "unsqueeze_100": 302, + "transpose_97": 313, + "unsqueeze_101": 303, + "slice_138": 313, + "slice_139": 310, + "slice_140": 302, + "transpose_98": 303, + "matmul_38": 315, + "mul_101": 314, + "softmax_19": 315, + "matmul_39": 310, + "transpose_99": 313, + "clone_19": 303, + "cat_60": 310, + "view_44": 313, + "linear_77": 303, + "add_79": 310, + "layer_norm_39": 313, + "linear_78": 314, + "gelu_19": 315, + "linear_79": 308, + "add_80": 303, + "layer_norm_40": 313, + "linear_80": 306, + "view_45": 307, + "permute_20": 306, + "select_60": 310, + "select_61": 308, + "select_62": 313, + "unsqueeze_102": 309, + "unsqueeze_103": 312, + "mul_102": 302, + "slice_141": 311, + "slice_142": 307, + "neg_40": 310, + "cat_61": 306, + "mul_103": 310, + "add_81": 307, + "mul_104": 310, + "slice_143": 311, + "slice_144": 302, + "neg_41": 308, + "cat_62": 302, + "mul_105": 308, + "add_82": 302, + "transpose_100": 310, + "unsqueeze_104": 308, + "transpose_101": 310, + "unsqueeze_105": 302, + "transpose_102": 310, + "unsqueeze_106": 313, + "slice_145": 310, + "slice_146": 308, + "slice_147": 302, + "transpose_103": 313, + "matmul_40": 314, + "mul_106": 315, + "softmax_20": 314, + "matmul_41": 308, + "transpose_104": 310, + "clone_20": 313, + "cat_63": 308, + "view_46": 310, + "linear_81": 313, + "add_83": 308, + "layer_norm_41": 310, + "linear_82": 315, + "gelu_20": 314, + "linear_83": 303, + "add_84": 313, + "layer_norm_42": 310, + "linear_84": 306, + "view_47": 307, + "permute_21": 306, + "select_63": 308, + "select_64": 303, + "select_65": 310, + "unsqueeze_107": 309, + "unsqueeze_108": 311, + "mul_107": 302, + "slice_148": 312, + "slice_149": 307, + "neg_42": 308, + "cat_64": 306, + "mul_108": 308, + "add_85": 307, + "mul_109": 308, + "slice_150": 312, + "slice_151": 302, + "neg_43": 303, + "cat_65": 302, + "mul_110": 303, + "add_86": 302, + "transpose_105": 308, + "unsqueeze_109": 303, + "transpose_106": 308, + "unsqueeze_110": 302, + "transpose_107": 308, + "unsqueeze_111": 310, + "slice_152": 308, + "slice_153": 303, + "slice_154": 302, + "transpose_108": 310, + "matmul_42": 315, + "mul_111": 314, + "softmax_21": 315, + "matmul_43": 303, + "transpose_109": 308, + "clone_21": 310, + "cat_66": 303, + "view_48": 308, + "linear_85": 310, + "add_87": 303, + "layer_norm_43": 308, + "linear_86": 314, + "gelu_21": 315, + "linear_87": 313, + "add_88": 310, + "layer_norm_44": 308, + "linear_88": 306, + "view_49": 307, + "permute_22": 306, + "select_66": 303, + "select_67": 313, + "select_68": 308, + "unsqueeze_112": 309, + "unsqueeze_113": 312, + "mul_112": 302, + "slice_155": 311, + "slice_156": 307, + "neg_44": 303, + "cat_67": 306, + "mul_113": 303, + "add_89": 307, + "mul_114": 303, + "slice_157": 311, + "slice_158": 302, + "neg_45": 313, + "cat_68": 302, + "mul_115": 313, + "add_90": 302, + "transpose_110": 303, + "unsqueeze_114": 313, + "transpose_111": 303, + "unsqueeze_115": 302, + "transpose_112": 303, + "unsqueeze_116": 308, + "slice_159": 303, + "slice_160": 313, + "slice_161": 302, + "transpose_113": 308, + "matmul_44": 314, + "mul_116": 315, + "softmax_22": 314, + "matmul_45": 313, + "transpose_114": 303, + "clone_22": 308, + "cat_69": 313, + "view_50": 303, + "linear_89": 308, + "add_91": 313, + "layer_norm_45": 303, + "linear_90": 315, + "gelu_22": 314, + "linear_91": 310, + "add_92": 308, + "layer_norm_46": 303, + "linear_92": 306, + "view_51": 307, + "permute_23": 306, + "select_69": 313, + "select_70": 310, + "select_71": 303, + "unsqueeze_117": 309, + "unsqueeze_118": 311, + "mul_117": 302, + "slice_162": 312, + "slice_163": 307, + "neg_46": 313, + "cat_70": 306, + "mul_118": 313, + "add_93": 307, + "mul_119": 313, + "slice_164": 312, + "slice_165": 302, + "neg_47": 310, + "cat_71": 302, + "mul_120": 310, + "add_94": 302, + "transpose_115": 313, + "unsqueeze_119": 310, + "transpose_116": 313, + "unsqueeze_120": 302, + "transpose_117": 313, + "unsqueeze_121": 303, + "slice_166": 313, + "slice_167": 310, + "slice_168": 302, + "transpose_118": 303, + "matmul_46": 315, + "mul_121": 314, + "softmax_23": 315, + "matmul_47": 310, + "transpose_119": 313, + "clone_23": 303, + "cat_72": 310, + "view_52": 313, + "linear_93": 303, + "add_95": 310, + "layer_norm_47": 313, + "linear_94": 304, + "gelu_23": 305, + "linear_95": 308, + "add_96": 303, + "layer_norm_48": 313, + "view_53": 310, + "linear_96": 308, + "gelu_24": 313, + "linear_97": 312 + }, + "byteLength": 720227392 + }, + "rewrites": [], + "partitions": [] +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/0a63ee401744e4da485ba317e4a798eea6e6827ae4e59fd730d73ef2dd16e91f.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/0a63ee401744e4da485ba317e4a798eea6e6827ae4e59fd730d73ef2dd16e91f.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..8e86ab9af48d49e0c8ee3718d0a47e33fd1bf24e --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/0a63ee401744e4da485ba317e4a798eea6e6827ae4e59fd730d73ef2dd16e91f.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 393216u; +if (i >= 393216u) { return; } +let coord = (i / 1024u) % 384u; +if (coord >= 0u && coord < 384u) { out[i] = f32(b0[(i / 393216u) * 393216u + (coord - 0u) * 1024u + i % 1024u]); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/0b698140a8774709ca7d2b76068766e5d37a5f74acf8cb585f24a492ec1fcf57.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/0b698140a8774709ca7d2b76068766e5d37a5f74acf8cb585f24a492ec1fcf57.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..a2c9276645a64c3134d763ed66e9a9428b2b6153 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/0b698140a8774709ca7d2b76068766e5d37a5f74acf8cb585f24a492ec1fcf57.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 1536u; +if (i >= 1536u) { return; } +out[i] = f32(b0[i]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/0da4a82616e50b86f810c79c9f07f6ce93106bcd76504fedc9abb91d3e8bf1d7.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/0da4a82616e50b86f810c79c9f07f6ce93106bcd76504fedc9abb91d3e8bf1d7.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..dbda8dfe0fd3eaa9e5a86a2b53d8a492ca0fe165 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/0da4a82616e50b86f810c79c9f07f6ce93106bcd76504fedc9abb91d3e8bf1d7.wgsl @@ -0,0 +1,29 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var b2: array; +@group(0) @binding(3) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +var tile_a: array; +var tile_b: array; +@compute @workgroup_size(8, 8) +fn main(@builtin(workgroup_id) group: vec3, @builtin(local_invocation_id) local: vec3) { + let row = group.y * 8u + local.y; + let col = group.x * 8u + local.x; + let i = (group.z * 96u + row) * 4096u + col; + var acc = 0.0; + for (var tile = 0u; tile < 4096u; tile += 8u) { + tile_a[local.y * 8u + local.x] = 0.0; + tile_b[local.x * 8u + local.y] = 0.0; + if (row < 96u && tile + local.x < 4096u) { tile_a[local.y * 8u + local.x] = f32(b0[(group.z * 96u + row) * 4096u + tile + local.x]); } + if (group.x * 8u + local.y < 4096u && tile + local.x < 4096u) { tile_b[local.x * 8u + local.y] = unpack_bf16_1((group.x * 8u + local.y) * 4096u + tile + local.x); } + workgroupBarrier(); + for (var p = 0u; p < 8u; p++) { acc += tile_a[local.y * 8u + p] * tile_b[p * 8u + local.x]; } + workgroupBarrier(); + } + if (row < 96u && col < 4096u) { out[i] = f32(acc + f32(b2[col])); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/0fea7aef3ec78ffbd5681389865cf0b7353282f19c0a762f934b4172577a78c4.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/0fea7aef3ec78ffbd5681389865cf0b7353282f19c0a762f934b4172577a78c4.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..11b2ac045f3e8b732564bfb1ec61d7cf5bef630b --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/0fea7aef3ec78ffbd5681389865cf0b7353282f19c0a762f934b4172577a78c4.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 589824u; +if (i >= 589824u) { return; } +out[i] = f32(b0[i]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/13bcf8d207e7732db735911a6b01201a40428d9f90a835424287d741980d0477.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/13bcf8d207e7732db735911a6b01201a40428d9f90a835424287d741980d0477.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..6413f84fb74a353dc4bd79b253da0f4efdf8f872 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/13bcf8d207e7732db735911a6b01201a40428d9f90a835424287d741980d0477.wgsl @@ -0,0 +1,18 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var b2: array; +@group(0) @binding(3) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 393216u; +if (i >= 393216u) { return; } +let base = (i / 1024u) * 1024u; +var mean = 0.0; +for (var j = 0u; j < 1024u; j++) { mean += f32(b0[base + j]); } +mean /= 1024.0; +var variance = 0.0; +for (var j = 0u; j < 1024u; j++) { let centered = f32(b0[base + j]) - mean; variance += centered * centered; } +out[i] = f32((f32(b0[i]) - mean) * inverseSqrt(variance / 1024.0 + 1e-06) * f32(b1[i % 1024u]) + f32(b2[i % 1024u])); + +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/2303343653b8442a4c17bedfc99130a7d627720f65d72cb7b639124717225342.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/2303343653b8442a4c17bedfc99130a7d627720f65d72cb7b639124717225342.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..99b171a14321527023c82fafef9f67e1e148a69a --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/2303343653b8442a4c17bedfc99130a7d627720f65d72cb7b639124717225342.wgsl @@ -0,0 +1,12 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 393216u; +if (i >= 393216u) { return; } +let coord = (i / 1u) % 64u; +if (coord >= 0u && coord < 32u) { out[i] = f32(b0[(i / 64u) * 32u + (coord - 0u) * 1u + i % 1u]); } +if (coord >= 32u && coord < 64u) { out[i] = f32(b1[(i / 64u) * 32u + (coord - 32u) * 1u + i % 1u]); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/2560bc16afb7b24fa8159af43aa0e509517ac7487bd3dc4e91697682ab604494.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/2560bc16afb7b24fa8159af43aa0e509517ac7487bd3dc4e91697682ab604494.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..34c1c5f405ba983949343f2920cabe9daaee9b9c --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/2560bc16afb7b24fa8159af43aa0e509517ac7487bd3dc4e91697682ab604494.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 196608u; +if (i >= 196608u) { return; } +let x = f32(b0[i]); +out[i] = f32(-x); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/278a47f30fab25fda40f1b3f856f14423ee2a89eddd52c8449cab8272befeb49.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/278a47f30fab25fda40f1b3f856f14423ee2a89eddd52c8449cab8272befeb49.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..85671ded14b471bad993ba07ab8fd7c16aff6a09 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/278a47f30fab25fda40f1b3f856f14423ee2a89eddd52c8449cab8272befeb49.wgsl @@ -0,0 +1,29 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var b2: array; +@group(0) @binding(3) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +var tile_a: array; +var tile_b: array; +@compute @workgroup_size(8, 8) +fn main(@builtin(workgroup_id) group: vec3, @builtin(local_invocation_id) local: vec3) { + let row = group.y * 8u + local.y; + let col = group.x * 8u + local.x; + let i = (group.z * 384u + row) * 4096u + col; + var acc = 0.0; + for (var tile = 0u; tile < 1024u; tile += 8u) { + tile_a[local.y * 8u + local.x] = 0.0; + tile_b[local.x * 8u + local.y] = 0.0; + if (row < 384u && tile + local.x < 1024u) { tile_a[local.y * 8u + local.x] = f32(b0[(group.z * 384u + row) * 1024u + tile + local.x]); } + if (group.x * 8u + local.y < 4096u && tile + local.x < 1024u) { tile_b[local.x * 8u + local.y] = unpack_bf16_1((group.x * 8u + local.y) * 1024u + tile + local.x); } + workgroupBarrier(); + for (var p = 0u; p < 8u; p++) { acc += tile_a[local.y * 8u + p] * tile_b[p * 8u + local.x]; } + workgroupBarrier(); + } + if (row < 384u && col < 4096u) { out[i] = f32(acc + f32(b2[col])); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/2f9ddba9feddcad74fa4a71c8fc02b4b3180c81a6a722f23ceeb94d2dac47b79.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/2f9ddba9feddcad74fa4a71c8fc02b4b3180c81a6a722f23ceeb94d2dac47b79.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..d2ee5584067758af8401f4a5ed0d588a25770da2 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/2f9ddba9feddcad74fa4a71c8fc02b4b3180c81a6a722f23ceeb94d2dac47b79.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 196608u; +if (i >= 196608u) { return; } +out[i] = f32(b0[((i / 512u) % 384u) * 1024u + ((i / 32u) % 16u) * 64u + (((i / 1u) % 32u) * 1u + 32u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/367142dda65caa73aeb0a439dc4e658fd68a839f2ea38435d5dd665c211c8172.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/367142dda65caa73aeb0a439dc4e658fd68a839f2ea38435d5dd665c211c8172.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..5f58e5aabe08fae7640e5055080ba6aa9d26b8b9 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/367142dda65caa73aeb0a439dc4e658fd68a839f2ea38435d5dd665c211c8172.wgsl @@ -0,0 +1,12 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 1572864u; +if (i >= 1572864u) { return; } +let x = f32(b0[i]); +if (x > 10.0) { out[i] = f32(x); return; } +if (x < -10.0) { out[i] = f32(0.0); return; } +out[i] = f32(0.5 * x * (1.0 + tanh(clamp(0.7978845608028654 * (x + 0.044715 * x*x*x), -10.0, 10.0)))); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/3c0b9a1663ed41b254264c799f5e37cbfd75209c8a1f8be9437bd7fb83fc38d1.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/3c0b9a1663ed41b254264c799f5e37cbfd75209c8a1f8be9437bd7fb83fc38d1.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..07643d9707ef19c17e65f0e21cbbc01df68760b1 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/3c0b9a1663ed41b254264c799f5e37cbfd75209c8a1f8be9437bd7fb83fc38d1.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 393216u; +if (i >= 393216u) { return; } +out[i] = f32(b0[1u * 393216u + ((i / 1024u) % 384u) * 1024u + ((i / 64u) % 16u) * 64u + ((i / 1u) % 64u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/3f456e017dd363441267ad210f064a656b4a7462e00e4dcffa34faeae391e02c.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/3f456e017dd363441267ad210f064a656b4a7462e00e4dcffa34faeae391e02c.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..9c05e47ca9df8da90167a86523515f24b8309bcf --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/3f456e017dd363441267ad210f064a656b4a7462e00e4dcffa34faeae391e02c.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 24576u; +if (i >= 24576u) { return; } +let x = f32(b0[i]); +out[i] = f32(cos(x)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/43d939664a4898e8f9c04ba1dd333e6362d7bee1f0456b0af948d44eb3c8bf69.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/43d939664a4898e8f9c04ba1dd333e6362d7bee1f0456b0af948d44eb3c8bf69.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..fa19c1fb487e1c1270a4366cfb9a204d0423fec5 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/43d939664a4898e8f9c04ba1dd333e6362d7bee1f0456b0af948d44eb3c8bf69.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 1179648u; +if (i >= 1179648u) { return; } +out[i] = f32(b0[((i / 393216u) % 3u) * 1024u + ((i / 1024u) % 384u) * 3072u + ((i / 64u) % 16u) * 64u + ((i / 1u) % 64u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/458bf9f5b442f2d9df5267b054e0f412be6e1dd51def1e238871999aa48752de.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/458bf9f5b442f2d9df5267b054e0f412be6e1dd51def1e238871999aa48752de.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..978ea0e8faea60b96e06d1e70628004919267c75 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/458bf9f5b442f2d9df5267b054e0f412be6e1dd51def1e238871999aa48752de.wgsl @@ -0,0 +1,17 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 2359296u; +if (i >= 2359296u) { return; } +let batch = i / 147456u; +let row = (i / 384u) % 384u; +let col = i % 384u; +var acc = 0.0; +for (var p = 0u; p < 64u; p++) { + acc += f32(b0[(((batch / 1u) % 16u) * 24576u) + row * 64u + p]) * f32(b1[(((batch / 1u) % 16u) * 24576u) + p * 384u + col]); +} +out[i] = f32(acc); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/46562b75918b3a62c12e3ecd4d54df6e26a29b6df77221fed7fe8a5b49d536cc.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/46562b75918b3a62c12e3ecd4d54df6e26a29b6df77221fed7fe8a5b49d536cc.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..5eea3da87b16d6047b5968fe36b1699c340c395d --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/46562b75918b3a62c12e3ecd4d54df6e26a29b6df77221fed7fe8a5b49d536cc.wgsl @@ -0,0 +1,17 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 393216u; +if (i >= 393216u) { return; } +let x = f32(b0[i]); +if (x > 10.0) { out[i] = f32(x); return; } +if (x < -10.0) { out[i] = f32(0.0); return; } +let z = x * 0.7071067811865476; +let t = 1.0 / (1.0 + 0.3275911 * abs(z)); +let polynomial = (((((1.061405429 * t - 1.453152027) * t) + 1.421413741) * t - 0.284496736) * t + 0.254829592) * t; +let erf = sign(z) * (1.0 - polynomial * exp(-z * z)); +out[i] = f32(0.5 * x * (1.0 + erf)); + +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/47f78f971967ea28b861f83844879dfdfc0f10936de7fb9c56a4b8592280ec88.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/47f78f971967ea28b861f83844879dfdfc0f10936de7fb9c56a4b8592280ec88.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..309e5930f52d94de57e481c21acd500b4e969801 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/47f78f971967ea28b861f83844879dfdfc0f10936de7fb9c56a4b8592280ec88.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 393216u; +if (i >= 393216u) { return; } +out[i] = f32(b0[((i / 393216u) % 1u) * 393216u + ((i / 1024u) % 384u) * 64u + ((i / 64u) % 16u) * 24576u + ((i / 1u) % 64u) * 1u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..3c5a2361a71079211a1bdd869772f7057839474c --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/4d38df0298ce1a8614d3b00a26b4d521b9f08f5e27e2ef174b4f08976ab42233.wgsl @@ -0,0 +1,10 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 393216u; +if (i >= 393216u) { return; } +out[i] = f32(f32(b0[i]) + (f32(b1[i]) * 1.0)); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/5271dca1a483428217590e5170b6a426874a234120fbee14a75e11b9faadee03.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/5271dca1a483428217590e5170b6a426874a234120fbee14a75e11b9faadee03.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..fcf73aa12b61feaf6c7d23bac3f1b602ee72db6a --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/5271dca1a483428217590e5170b6a426874a234120fbee14a75e11b9faadee03.wgsl @@ -0,0 +1,17 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 393216u; +if (i >= 393216u) { return; } +let batch = i / 24576u; +let row = (i / 64u) % 384u; +let col = i % 64u; +var acc = 0.0; +for (var p = 0u; p < 384u; p++) { + acc += f32(b0[(((batch / 1u) % 16u) * 147456u) + row * 384u + p]) * f32(b1[(((batch / 1u) % 16u) * 24576u) + p * 64u + col]); +} +out[i] = f32(acc); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/541dedaba172d332aa5f9b78409cd0a49ead48fd2200f67a4984fdeec5664d7c.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/541dedaba172d332aa5f9b78409cd0a49ead48fd2200f67a4984fdeec5664d7c.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..0c1384d9ded8e95d777988bdd688155cafbcbddf --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/541dedaba172d332aa5f9b78409cd0a49ead48fd2200f67a4984fdeec5664d7c.wgsl @@ -0,0 +1,29 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var b2: array; +@group(0) @binding(3) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +var tile_a: array; +var tile_b: array; +@compute @workgroup_size(8, 8) +fn main(@builtin(workgroup_id) group: vec3, @builtin(local_invocation_id) local: vec3) { + let row = group.y * 8u + local.y; + let col = group.x * 8u + local.x; + let i = (group.z * 384u + row) * 1024u + col; + var acc = 0.0; + for (var tile = 0u; tile < 1024u; tile += 8u) { + tile_a[local.y * 8u + local.x] = 0.0; + tile_b[local.x * 8u + local.y] = 0.0; + if (row < 384u && tile + local.x < 1024u) { tile_a[local.y * 8u + local.x] = f32(b0[(group.z * 384u + row) * 1024u + tile + local.x]); } + if (group.x * 8u + local.y < 1024u && tile + local.x < 1024u) { tile_b[local.x * 8u + local.y] = unpack_bf16_1((group.x * 8u + local.y) * 1024u + tile + local.x); } + workgroupBarrier(); + for (var p = 0u; p < 8u; p++) { acc += tile_a[local.y * 8u + p] * tile_b[p * 8u + local.x]; } + workgroupBarrier(); + } + if (row < 384u && col < 1024u) { out[i] = f32(acc + f32(b2[col])); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/78da066223c17c00b73f3f0437cb9cb82a1265761ad2d76ba4fdba9755d9a3af.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/78da066223c17c00b73f3f0437cb9cb82a1265761ad2d76ba4fdba9755d9a3af.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..a85a9f3176a622b79cb5e7dee1a5b2b4d3a51cd5 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/78da066223c17c00b73f3f0437cb9cb82a1265761ad2d76ba4fdba9755d9a3af.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 393216u; +if (i >= 393216u) { return; } +out[i] = f32(b0[((i / 393216u) % 1u) * 393216u + ((i / 24576u) % 16u) * 24576u + ((i / 384u) % 64u) * 1u + ((i / 1u) % 384u) * 64u]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/7927e7ea9f061b32c446ff19f676ac9467c35b991b07e422c4c9de7950cfce1b.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/7927e7ea9f061b32c446ff19f676ac9467c35b991b07e422c4c9de7950cfce1b.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..bb008065d24cc32bc46cee1b1ed73d6fa3897f72 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/7927e7ea9f061b32c446ff19f676ac9467c35b991b07e422c4c9de7950cfce1b.wgsl @@ -0,0 +1,29 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var b1: array; +@group(0) @binding(2) var b2: array; +@group(0) @binding(3) var out: array; +fn unpack_bf16_1(index: u32) -> f32 { + let pair = b1[index / 2u]; + let bits = (pair >> ((index % 2u) * 16u)) & 65535u; + return bitcast(bits << 16u); +} + +var tile_a: array; +var tile_b: array; +@compute @workgroup_size(8, 8) +fn main(@builtin(workgroup_id) group: vec3, @builtin(local_invocation_id) local: vec3) { + let row = group.y * 8u + local.y; + let col = group.x * 8u + local.x; + let i = (group.z * 384u + row) * 1024u + col; + var acc = 0.0; + for (var tile = 0u; tile < 4096u; tile += 8u) { + tile_a[local.y * 8u + local.x] = 0.0; + tile_b[local.x * 8u + local.y] = 0.0; + if (row < 384u && tile + local.x < 4096u) { tile_a[local.y * 8u + local.x] = f32(b0[(group.z * 384u + row) * 4096u + tile + local.x]); } + if (group.x * 8u + local.y < 1024u && tile + local.x < 4096u) { tile_b[local.x * 8u + local.y] = unpack_bf16_1((group.x * 8u + local.y) * 4096u + tile + local.x); } + workgroupBarrier(); + for (var p = 0u; p < 8u; p++) { acc += tile_a[local.y * 8u + p] * tile_b[p * 8u + local.x]; } + workgroupBarrier(); + } + if (row < 384u && col < 1024u) { out[i] = f32(acc + f32(b2[col])); } +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/8898353d0c367a3982a48d416f6777c3ce7a854572eeaf55843f3e7ee458c65d.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/8898353d0c367a3982a48d416f6777c3ce7a854572eeaf55843f3e7ee458c65d.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..ef9b5984a050b004ec691b6fd90a5704e441c981 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/8898353d0c367a3982a48d416f6777c3ce7a854572eeaf55843f3e7ee458c65d.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 24576u; +if (i >= 24576u) { return; } +out[i] = f32(b0[i]); +} diff --git a/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/8980fed160483970508ad7c086f577b51f2b9c3979a00a70776bd65014fc9ccb.wgsl b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/8980fed160483970508ad7c086f577b51f2b9c3979a00a70776bd65014fc9ccb.wgsl new file mode 100644 index 0000000000000000000000000000000000000000..daaf3c3d6cf356a1f67f58fff7d708c6cd606f49 --- /dev/null +++ b/qwen35-2b-multimodal-fp32-three-grid-state-alias-token-major-v2/vision/256x384/kernels/8980fed160483970508ad7c086f577b51f2b9c3979a00a70776bd65014fc9ccb.wgsl @@ -0,0 +1,9 @@ +@group(0) @binding(0) var b0: array; +@group(0) @binding(1) var out: array; + +@compute @workgroup_size(64) +fn main(@builtin(global_invocation_id) gid: vec3) { +let i = gid.x + gid.y * 196608u; +if (i >= 196608u) { return; } +out[i] = f32(b0[((i / 512u) % 384u) * 1024u + ((i / 32u) % 16u) * 64u + (((i / 1u) % 32u) * 1u + 0u) * 1u]); +}