Kernels:
Trusted publisher
Uploaded using `kernel-builder`.
Browse files- build/torch210-xpu20253-x86_64-linux/__init__.py +57 -0
- build/torch210-xpu20253-x86_64-linux/_ops.py +9 -0
- build/torch210-xpu20253-x86_64-linux/_rotary_xpu_fe2bb66.abi3.so +3 -0
- build/torch210-xpu20253-x86_64-linux/layers.py +41 -0
- build/torch210-xpu20253-x86_64-linux/metadata.json +33 -0
- build/torch210-xpu20253-x86_64-linux/metadata.json.sigstore +1 -0
- build/torch210-xpu20253-x86_64-linux/symbols.json +103 -0
- build/torch211-xpu20253-x86_64-linux/__init__.py +57 -0
- build/torch211-xpu20253-x86_64-linux/_ops.py +9 -0
- build/torch211-xpu20253-x86_64-linux/_rotary_xpu_fe2bb66.abi3.so +3 -0
- build/torch211-xpu20253-x86_64-linux/layers.py +41 -0
- build/torch211-xpu20253-x86_64-linux/metadata.json +33 -0
- build/torch211-xpu20253-x86_64-linux/metadata.json.sigstore +1 -0
- build/torch211-xpu20253-x86_64-linux/symbols.json +103 -0
- build/torch212-xpu20253-x86_64-linux/__init__.py +57 -0
- build/torch212-xpu20253-x86_64-linux/_ops.py +9 -0
- build/torch212-xpu20253-x86_64-linux/_rotary_xpu_fe2bb66.abi3.so +3 -0
- build/torch212-xpu20253-x86_64-linux/layers.py +41 -0
- build/torch212-xpu20253-x86_64-linux/metadata.json +33 -0
- build/torch212-xpu20253-x86_64-linux/metadata.json.sigstore +1 -0
- build/torch212-xpu20253-x86_64-linux/symbols.json +103 -0
- build/torch213-xpu20260-x86_64-linux/__init__.py +57 -0
- build/torch213-xpu20260-x86_64-linux/_ops.py +9 -0
- build/torch213-xpu20260-x86_64-linux/_rotary_xpu_fe2bb66.abi3.so +3 -0
- build/torch213-xpu20260-x86_64-linux/layers.py +41 -0
- build/torch213-xpu20260-x86_64-linux/metadata.json +33 -0
- build/torch213-xpu20260-x86_64-linux/metadata.json.sigstore +1 -0
- build/torch213-xpu20260-x86_64-linux/symbols.json +103 -0
- build/torch214-xpu20261-x86_64-linux/__init__.py +57 -0
- build/torch214-xpu20261-x86_64-linux/_ops.py +9 -0
- build/torch214-xpu20261-x86_64-linux/_rotary_xpu_fe2bb66.abi3.so +3 -0
- build/torch214-xpu20261-x86_64-linux/layers.py +41 -0
- build/torch214-xpu20261-x86_64-linux/metadata.json +33 -0
- build/torch214-xpu20261-x86_64-linux/metadata.json.sigstore +1 -0
- build/torch214-xpu20261-x86_64-linux/symbols.json +103 -0
- build/torch215-xpu20261-x86_64-linux/__init__.py +57 -0
- build/torch215-xpu20261-x86_64-linux/_ops.py +9 -0
- build/torch215-xpu20261-x86_64-linux/_rotary_xpu_fe2bb66.abi3.so +3 -0
- build/torch215-xpu20261-x86_64-linux/layers.py +41 -0
- build/torch215-xpu20261-x86_64-linux/metadata.json +33 -0
- build/torch215-xpu20261-x86_64-linux/metadata.json.sigstore +1 -0
- build/torch215-xpu20261-x86_64-linux/symbols.json +103 -0
build/torch210-xpu20253-x86_64-linux/__init__.py
ADDED
|
@@ -0,0 +1,57 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import torch
|
| 2 |
+
|
| 3 |
+
from . import layers
|
| 4 |
+
from ._ops import ops
|
| 5 |
+
|
| 6 |
+
|
| 7 |
+
def apply_rotary(
|
| 8 |
+
x1: torch.Tensor,
|
| 9 |
+
x2: torch.Tensor,
|
| 10 |
+
cos: torch.Tensor,
|
| 11 |
+
sin: torch.Tensor,
|
| 12 |
+
out1: torch.Tensor,
|
| 13 |
+
out2: torch.Tensor,
|
| 14 |
+
conj: bool,
|
| 15 |
+
) -> None:
|
| 16 |
+
ops.apply_rotary(x1, x2, cos, sin, out1, out2, conj)
|
| 17 |
+
|
| 18 |
+
|
| 19 |
+
def apply_rotary_transformers(
|
| 20 |
+
q: torch.Tensor,
|
| 21 |
+
k: torch.Tensor,
|
| 22 |
+
cos: torch.Tensor,
|
| 23 |
+
sin: torch.Tensor,
|
| 24 |
+
unsqueeze_dim: int = 1,
|
| 25 |
+
) -> tuple[torch.Tensor, torch.Tensor]:
|
| 26 |
+
"""
|
| 27 |
+
Rotary kernel implementation wrapper
|
| 28 |
+
Adapts rotary kernel implementation to match transformers apply_rotary_pos_emb signature
|
| 29 |
+
"""
|
| 30 |
+
cos = cos.unsqueeze(unsqueeze_dim)
|
| 31 |
+
sin = sin.unsqueeze(unsqueeze_dim)
|
| 32 |
+
|
| 33 |
+
q_rotated = q.clone()
|
| 34 |
+
k_rotated = k.clone()
|
| 35 |
+
|
| 36 |
+
# Get half dimension for rotation
|
| 37 |
+
half_dim = q.shape[-1] // 2
|
| 38 |
+
q1 = q_rotated[..., :half_dim]
|
| 39 |
+
q2 = q_rotated[..., half_dim:]
|
| 40 |
+
k1 = k_rotated[..., :half_dim]
|
| 41 |
+
k2 = k_rotated[..., half_dim:]
|
| 42 |
+
if cos.shape[-1] != half_dim:
|
| 43 |
+
# Trim cos/sin to match half_dim
|
| 44 |
+
cos = cos[..., :half_dim]
|
| 45 |
+
sin = sin[..., :half_dim]
|
| 46 |
+
|
| 47 |
+
apply_rotary(q1, q2, cos, sin, q1, q2, False)
|
| 48 |
+
apply_rotary(k1, k2, cos, sin, k1, k2, False)
|
| 49 |
+
return q_rotated, k_rotated
|
| 50 |
+
|
| 51 |
+
|
| 52 |
+
# Add torch compile support for functions
|
| 53 |
+
apply_rotary_transformers.can_torch_compile = True
|
| 54 |
+
|
| 55 |
+
|
| 56 |
+
# Keeping `apply_rotary` and `apply_rotary_transformers` for BC
|
| 57 |
+
__all__ = ["apply_rotary", "apply_rotary_transformers", "layers"]
|
build/torch210-xpu20253-x86_64-linux/_ops.py
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import torch
|
| 2 |
+
from . import _rotary_xpu_fe2bb66
|
| 3 |
+
ops = torch.ops._rotary_xpu_fe2bb66
|
| 4 |
+
|
| 5 |
+
def add_op_namespace_prefix(op_name: str):
|
| 6 |
+
"""
|
| 7 |
+
Prefix op by namespace.
|
| 8 |
+
"""
|
| 9 |
+
return f"_rotary_xpu_fe2bb66::{op_name}"
|
build/torch210-xpu20253-x86_64-linux/_rotary_xpu_fe2bb66.abi3.so
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:e0e88ecfb7c570f35312f8a42b997350a042a59a601f16c9e88a4191f753e786
|
| 3 |
+
size 465032
|
build/torch210-xpu20253-x86_64-linux/layers.py
ADDED
|
@@ -0,0 +1,41 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import torch
|
| 2 |
+
import torch.nn as nn
|
| 3 |
+
|
| 4 |
+
from ._ops import ops
|
| 5 |
+
|
| 6 |
+
|
| 7 |
+
class apply_rotary_transformers(nn.Module):
|
| 8 |
+
can_torch_compile = True
|
| 9 |
+
|
| 10 |
+
def forward(
|
| 11 |
+
self,
|
| 12 |
+
q: torch.Tensor,
|
| 13 |
+
k: torch.Tensor,
|
| 14 |
+
cos: torch.Tensor,
|
| 15 |
+
sin: torch.Tensor,
|
| 16 |
+
unsqueeze_dim: int = 1,
|
| 17 |
+
) -> tuple[torch.Tensor, torch.Tensor]:
|
| 18 |
+
"""
|
| 19 |
+
Rotary kernel implementation wrapper
|
| 20 |
+
Adapts rotary kernel implementation to match transformers apply_rotary_pos_emb signature
|
| 21 |
+
"""
|
| 22 |
+
cos = cos.unsqueeze(unsqueeze_dim)
|
| 23 |
+
sin = sin.unsqueeze(unsqueeze_dim)
|
| 24 |
+
|
| 25 |
+
q_rotated = q.clone()
|
| 26 |
+
k_rotated = k.clone()
|
| 27 |
+
|
| 28 |
+
# Get half dimension for rotation
|
| 29 |
+
half_dim = q.shape[-1] // 2
|
| 30 |
+
q1 = q_rotated[..., :half_dim]
|
| 31 |
+
q2 = q_rotated[..., half_dim:]
|
| 32 |
+
k1 = k_rotated[..., :half_dim]
|
| 33 |
+
k2 = k_rotated[..., half_dim:]
|
| 34 |
+
if cos.shape[-1] != half_dim:
|
| 35 |
+
# Trim cos/sin to match half_dim
|
| 36 |
+
cos = cos[..., :half_dim]
|
| 37 |
+
sin = sin[..., :half_dim]
|
| 38 |
+
|
| 39 |
+
ops.apply_rotary(q1, q2, cos, sin, q1, q2, False)
|
| 40 |
+
ops.apply_rotary(k1, k2, cos, sin, k1, k2, False)
|
| 41 |
+
return q_rotated, k_rotated
|
build/torch210-xpu20253-x86_64-linux/metadata.json
ADDED
|
@@ -0,0 +1,33 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"name": "rotary",
|
| 3 |
+
"id": "_rotary_xpu_fe2bb66",
|
| 4 |
+
"version": 2,
|
| 5 |
+
"kernels-minver": "0.14.0",
|
| 6 |
+
"license": "BSD-3-Clause",
|
| 7 |
+
"python-depends": [],
|
| 8 |
+
"kernel-depends": [],
|
| 9 |
+
"backend": {
|
| 10 |
+
"type": "xpu"
|
| 11 |
+
},
|
| 12 |
+
"digest": {
|
| 13 |
+
"algorithm": "sha256",
|
| 14 |
+
"files": {
|
| 15 |
+
"__init__.py": "qlvCb0Z6KMkcCxgjDRxjD1ofWaJ/Lqx0cTFlqrncWyE=",
|
| 16 |
+
"_ops.py": "Jeq0/zADY+Cq3MnRyzR/8jDpyYANlwKH71wgSME2/vA=",
|
| 17 |
+
"_rotary_xpu_fe2bb66.abi3.so": "4OiOz7fFcPNTEvikK5lzUKBCpZpgHxbJ6IpBkfdT54Y=",
|
| 18 |
+
"layers.py": "c8ZzUlsVi1lOGhM67JSViZdKBSbIKItQxmWkXPiTEy4=",
|
| 19 |
+
"symbols.json": "PxgUNQB1dU+NEARgssX8a05dn1+R6dbDC79RXAlVxqw="
|
| 20 |
+
}
|
| 21 |
+
},
|
| 22 |
+
"provenance": {
|
| 23 |
+
"kernel-builder": {
|
| 24 |
+
"version": "0.18.0-dev0",
|
| 25 |
+
"commit": "d054906a13710b811b96697b4635f03020842733",
|
| 26 |
+
"dirty": false
|
| 27 |
+
},
|
| 28 |
+
"kernel": {
|
| 29 |
+
"commit": "fe2bb66fee6c2a77eccf08a0508dc57428d488ed",
|
| 30 |
+
"dirty": false
|
| 31 |
+
}
|
| 32 |
+
}
|
| 33 |
+
}
|
build/torch210-xpu20253-x86_64-linux/metadata.json.sigstore
ADDED
|
@@ -0,0 +1 @@
|
|
|
|
|
|
|
| 1 |
+
{"mediaType":"application/vnd.dev.sigstore.bundle.v0.3+json", "verificationMaterial":{"certificate":{"rawBytes":"MIIHKjCCBrGgAwIBAgIUMIh6eLdsZyLoNza1uHi2LlCAETYwCgYIKoZIzj0EAwMwNzEVMBMGA1UEChMMc2lnc3RvcmUuZGV2MR4wHAYDVQQDExVzaWdzdG9yZS1pbnRlcm1lZGlhdGUwHhcNMjYxMDE5MTUwNDQ2WhcNMjYxMDE5MTUxNDQ2WjAAMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEWf4XDqWD14Rns5PCt/cDBGFs/EfYnMbVIY+/RzZva9avFNiuYVSBpZepC3Y2b81Ba4PXYCGP5b/UvaHJcmp2dqOCBdAwggXMMA4GA1UdDwEB/wQEAwIHgDATBgNVHSUEDDAKBggrBgEFBQcDAzAfBgNVHSMEGDAWgBTf0+nPViQRlvmo2OkoVaLGLhhkPzBrBgNVHREBAf8EYTBfhl1odHRwczovL2dpdGh1Yi5jb20vaHVnZ2luZ2ZhY2Uva2VybmVscy1jb21tdW5pdHkvLmdpdGh1Yi93b3JrZmxvd3MvYnVpbGQueWFtbEByZWZzL2hlYWRzL21haW4wOQYKKwYBBAGDvzABAQQraHR0cHM6Ly90b2tlbi5hY3Rpb25zLmdpdGh1YnVzZXJjb250ZW50LmNvbTAfBgorBgEEAYO/MAECBBF3b3JrZmxvd19kaXNwYXRjaDA2BgorBgEEAYO/MAEDBChmZTJiYjY2ZmVlNmMyYTc3ZWNjZjA4YTA1MDhkYzU3NDI4ZDQ4OGVkMBMGCisGAQQBg78wAQQEBUJ1aWxkMCsGCisGAQQBg78wAQUEHWh1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5MB0GCisGAQQBg78wAQYED3JlZnMvaGVhZHMvbWFpbjA7BgorBgEEAYO/MAEIBC0MK2h0dHBzOi8vdG9rZW4uYWN0aW9ucy5naXRodWJ1c2VyY29udGVudC5jb20wbQYKKwYBBAGDvzABCQRfDF1odHRwczovL2dpdGh1Yi5jb20vaHVnZ2luZ2ZhY2Uva2VybmVscy1jb21tdW5pdHkvLmdpdGh1Yi93b3JrZmxvd3MvYnVpbGQueWFtbEByZWZzL2hlYWRzL21haW4wOAYKKwYBBAGDvzABCgQqDChmZTJiYjY2ZmVlNmMyYTc3ZWNjZjA4YTA1MDhkYzU3NDI4ZDQ4OGVkMBsGCisGAQQBg78wAQsEDQwLc2VsZi1ob3N0ZWQwQAYKKwYBBAGDvzABDAQyDDBodHRwczovL2dpdGh1Yi5jb20vaHVnZ2luZ2ZhY2Uva2VybmVscy1jb21tdW5pdHkwOAYKKwYBBAGDvzABDQQqDChmZTJiYjY2ZmVlNmMyYTc3ZWNjZjA4YTA1MDhkYzU3NDI4ZDQ4OGVkMB8GCisGAQQBg78wAQ4EEQwPcmVmcy9oZWFkcy9tYWluMBoGCisGAQQBg78wAQ8EDAwKMTA3MTQ3NTUyOTAuBgorBgEEAYO/MAEQBCAMHmh0dHBzOi8vZ2l0aHViLmNvbS9odWdnaW5nZmFjZTAYBgorBgEEAYO/MAERBAoMCDI1NzIwNzQzMG0GCisGAQQBg78wARIEXwxdaHR0cHM6Ly9naXRodWIuY29tL2h1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5Ly5naXRodWIvd29ya2Zsb3dzL2J1aWxkLnlhbWxAcmVmcy9oZWFkcy9tYWluMDgGCisGAQQBg78wARMEKgwoZmUyYmI2NmZlZTZjMmE3N2VjY2YwOGEwNTA4ZGM1NzQyOGQ0ODhlZDAhBgorBgEEAYO/MAEUBBMMEXdvcmtmbG93X2Rpc3BhdGNoMGQGCisGAQQBg78wARUEVgxUaHR0cHM6Ly9naXRodWIuY29tL2h1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5L2FjdGlvbnMvcnVucy8zOTIzOTY0ODU2MS9hdHRlbXB0cy8xMBYGCisGAQQBg78wARYECAwGcHVibGljMEYGCisGAQQBg78wARgEOAw2cmVwbzpodWdnaW5nZmFjZS9rZXJuZWxzLWNvbW11bml0eTpyZWY6cmVmcy9oZWFkcy9tYWluMIGJBgorBgEEAdZ5AgQCBHsEeQB3AHUA3T0wasbHETJjGR4cmWc3AqJKXrjePK3/h4pygC8p7o4AAAGhVLGVVQAABAMARjBEAiBBvCQxaaqrE307XvlTuF0k9z+jj0gh4p2K+auuXrqYgQIgSZVNixy5+6+Cl408BhyXzHnrvTFYLu10An+jSJg1vxUwCgYIKoZIzj0EAwMDZwAwZAIwKsXWwuGdjoRh26yiDV5aoVB2F4jAd5ExnrMlnUkyvYCDG0lTJBhqM7cxu9W9lelzAjArDu9BWneLuuVntX9Vm4a4d3zuoSEK4fcNcDOjX2YUADs2tdKtAu3JONon9VmePmk="}, "tlogEntries":[{"logIndex":"3322434413", "logId":{"keyId":"wNI9atQGlz+VWfO6LRygH4QUfY/8W4RFwiT5i5WRgB0="}, "kindVersion":{"kind":"hashedrekord", "version":"0.0.1"}, "integratedTime":"1792422287", "inclusionPromise":{"signedEntryTimestamp":"MEYCIQCxxsUlxQmHaEKUpQh1Cy8WbEoDzefAQhQ0axm+Rjdq2AIhALahmnHsF5Cz3/SdWA2sqqlZqwptZL1qq4SA7u1zDv4x"}, "inclusionProof":{"logIndex":"3200530151", "rootHash":"VkpUCpPjdMLLWxz8lNnSQUX6qUq4uFO3+QcMIrj6hvA=", "treeSize":"3200530410", "hashes":["PfuQdKTrMQIvmIMmmifsBGQgoB9Tn40QX/123cuEeQM=", "Nn3W+tohC5TJg0cznln7bjjCN3QEEKqsk1fjVTDyHDE=", "vUzMK7Fn6xlbIQD3IpMl8aMelAACFl0pY4+r0CvsBAM=", "MD+/3HswGRMx+c2DhZGSux36lF3PTspILW9Yt8BJMdc=", "kFfdHVM19x1LEY4IO559LQG0h6OrBgFtGbFm86X2j7w=", "iuQj5xTp4hMuSFH6qfOHMJg7La3iBznWKDzfSd0S6Es=", "OvxagxiNk41xZ3zq5cuyVb8DKsjq9PanoTwVtowYqGQ=", "H6uKwGEXUhYRDIsIXolBpjFjdn8t3dlTsANFXs8oWt0=", "/dvOgTzgnWYp8D6/jBHff4KQhnZR1Yb6245L58S4MK0=", "pe9jv+1dq7au5gHQahyLKBKV5mhvNI1oRcqtmPWrMLk=", "689vm80pwqzkwHjMpf6WdRK7U5abvGg+f132sB4g5aA=", "kPs/NJfJB3GOjEAa3rCM+19o4Lii1xBD4t4fO1Ccj5c=", "he9CYbukrPRH8TJtLX4O5uamOGODItWglfqW/ZFrOsg=", "+uGmdFlSXHU/F2/EH9t0YPf1KfLVa0s8IOgjHO79Z0Q=", "7WFpoaiQCzLwM3o2YI5Ngo8J7JD0OfyCCQtmXhWxVes=", "nyQV/+cWQUG5Hb2PKjQQNkQIJmz2qzAZKBQlkHGIknM=", "G+nk7mgE5h6dUmv2UY7NDJrY3WvrZY31raaO1AETt+o=", "qlTWNDzERnTBQVcHHXXVPjiUP0SsikGxfcxVlgqVFDo=", "gg9GNApNke3+zNhl4tsWtmIycCFrOMCB3lys6XuSQNQ=", "NlOclldmKPA1tMKIskqHAwuQDYHp31YwpK+OOMrMccc=", "qxzHanAzz57SDdmJe0B7bJK72NTIBbwEMGBBKvDOROw=", "xH/DCseLHr9eKoYT8qsORZK7zVdEGYWHuVtsVrD95wY="], "checkpoint":{"envelope":"rekor.sigstore.dev - 1193050959916656506\n3200530410\nVkpUCpPjdMLLWxz8lNnSQUX6qUq4uFO3+QcMIrj6hvA=\n\n— rekor.sigstore.dev wNI9ajBEAiADf2d/jB4E3gv8nTR0d2wQqKcEeaERxPgM7GNKfZVnFAIgfIGucYkk2i7rt9EdZed2TKvVISOUvnljkMsty0/sJS8=\n"}}, "canonicalizedBody":"eyJhcGlWZXJzaW9uIjoiMC4wLjEiLCJraW5kIjoiaGFzaGVkcmVrb3JkIiwic3BlYyI6eyJkYXRhIjp7Imhhc2giOnsiYWxnb3JpdGhtIjoic2hhMjU2IiwidmFsdWUiOiJiMGNiNmE3ZWM0YzI4YmE2ZjEzZTdkMDVmMmNjNzU4MDAxMmNjYTc3ODYzOWE5MTRkNTY4MmRiOWZiMjY0ZDQ0In19LCJzaWduYXR1cmUiOnsiY29udGVudCI6Ik1FWUNJUUR5OUxnaTg1UWt4Z080QWlUcG5tQjJCNUExMHRYRHdVM1ZJdGU1Y1NsRXJnSWhBS1k4U2JqQ3FGeUlCUHZEMWpkNng2bEk1VkI1SXM1N29xWDhOaFlOSWt4OSIsInB1YmxpY0tleSI6eyJjb250ZW50IjoiTFMwdExTMUNSVWRKVGlCRFJWSlVTVVpKUTBGVVJTMHRMUzB0Q2sxSlNVaExha05EUW5KSFowRjNTVUpCWjBsVlRVbG9ObVZNWkhOYWVVeHZUbnBoTVhWSWFUSk1iRU5CUlZSWmQwTm5XVWxMYjFwSmVtb3dSVUYzVFhjS1RucEZWazFDVFVkQk1WVkZRMmhOVFdNeWJHNWpNMUoyWTIxVmRWcEhWakpOVWpSM1NFRlpSRlpSVVVSRmVGWjZZVmRrZW1SSE9YbGFVekZ3WW01U2JBcGpiVEZzV2tkc2FHUkhWWGRJYUdOT1RXcFplRTFFUlRWTlZGVjNUa1JSTWxkb1kwNU5hbGw0VFVSRk5VMVVWWGhPUkZFeVYycEJRVTFHYTNkRmQxbElDa3R2V2tsNmFqQkRRVkZaU1V0dldrbDZhakJFUVZGalJGRm5RVVZYWmpSWVJIRlhSREUwVW01ek5WQkRkQzlqUkVKSFJuTXZSV1paYmsxaVZrbFpLeThLVW5wYWRtRTVZWFpHVG1sMVdWWlRRbkJhWlhCRE0xa3lZamd4UW1FMFVGaFpRMGRRTldJdlZYWmhTRXBqYlhBeVpIRlBRMEprUVhkbloxaE5UVUUwUndwQk1WVmtSSGRGUWk5M1VVVkJkMGxJWjBSQlZFSm5UbFpJVTFWRlJFUkJTMEpuWjNKQ1owVkdRbEZqUkVGNlFXWkNaMDVXU0ZOTlJVZEVRVmRuUWxSbUNqQXJibEJXYVZGU2JIWnRiekpQYTI5V1lVeEhUR2hvYTFCNlFuSkNaMDVXU0ZKRlFrRm1PRVZaVkVKbWFHd3hiMlJJVW5kamVtOTJUREprY0dSSGFERUtXV2sxYW1JeU1IWmhTRlp1V2pKc2RWb3lXbWhaTWxWMllUSldlV0p0Vm5OamVURnFZakl4ZEdSWE5YQmtTR3QyVEcxa2NHUkhhREZaYVRrellqTktjZ3BhYlhoMlpETk5kbGx1Vm5CaVIxRjFaVmRHZEdKRlFubGFWMXA2VERKb2JGbFhVbnBNTWpGb1lWYzBkMDlSV1V0TGQxbENRa0ZIUkhaNlFVSkJVVkZ5Q21GSVVqQmpTRTAyVEhrNU1HSXlkR3hpYVRWb1dUTlNjR0l5TlhwTWJXUndaRWRvTVZsdVZucGFXRXBxWWpJMU1GcFhOVEJNYlU1MllsUkJaa0puYjNJS1FtZEZSVUZaVHk5TlFVVkRRa0pHTTJJelNuSmFiWGgyWkRFNWEyRllUbmRaV0ZKcVlVUkJNa0puYjNKQ1owVkZRVmxQTDAxQlJVUkNRMmh0V2xSS2FRcFphbGt5V20xV2JFNXRUWGxaVkdNeldsZE9hbHBxUVRSWlZFRXhUVVJvYTFsNlZUTk9SRWswV2tSUk5FOUhWbXROUWsxSFEybHpSMEZSVVVKbk56aDNDa0ZSVVVWQ1ZVb3hZVmQ0YTAxRGMwZERhWE5IUVZGUlFtYzNPSGRCVVZWRlNGZG9NVm95WkhCaWJXUnRXVmRPYkV3eWRHeGpiVFZzWWtoTmRGa3lPWFFLWWxoV2RXRllValZOUWpCSFEybHpSMEZSVVVKbk56aDNRVkZaUlVRelNteGFiazEyWVVkV2FGcElUWFppVjBad1ltcEJOMEpuYjNKQ1owVkZRVmxQTHdwTlFVVkpRa013VFVzeWFEQmtTRUo2VDJrNGRtUkhPWEphVnpSMVdWZE9NR0ZYT1hWamVUVnVZVmhTYjJSWFNqRmpNbFo1V1RJNWRXUkhWblZrUXpWcUNtSXlNSGRpVVZsTFMzZFpRa0pCUjBSMmVrRkNRMUZTWmtSR01XOWtTRkozWTNwdmRrd3laSEJrUjJneFdXazFhbUl5TUhaaFNGWnVXakpzZFZveVdtZ0tXVEpWZG1FeVZubGliVlp6WTNreGFtSXlNWFJrVnpWd1pFaHJka3h0WkhCa1IyZ3hXV2s1TTJJelNuSmFiWGgyWkROTmRsbHVWbkJpUjFGMVpWZEdkQXBpUlVKNVdsZGFla3d5YUd4WlYxSjZUREl4YUdGWE5IZFBRVmxMUzNkWlFrSkJSMFIyZWtGQ1EyZFJjVVJEYUcxYVZFcHBXV3BaTWxwdFZteE9iVTE1Q2xsVVl6TmFWMDVxV21wQk5GbFVRVEZOUkdocldYcFZNMDVFU1RSYVJGRTBUMGRXYTAxQ2MwZERhWE5IUVZGUlFtYzNPSGRCVVhORlJGRjNUR015Vm5NS1dta3hiMkl6VGpCYVYxRjNVVUZaUzB0M1dVSkNRVWRFZG5wQlFrUkJVWGxFUkVKdlpFaFNkMk42YjNaTU1tUndaRWRvTVZscE5XcGlNakIyWVVoV2JncGFNbXgxV2pKYWFGa3lWWFpoTWxaNVltMVdjMk41TVdwaU1qRjBaRmMxY0dSSWEzZFBRVmxMUzNkWlFrSkJSMFIyZWtGQ1JGRlJjVVJEYUcxYVZFcHBDbGxxV1RKYWJWWnNUbTFOZVZsVVl6TmFWMDVxV21wQk5GbFVRVEZOUkdocldYcFZNMDVFU1RSYVJGRTBUMGRXYTAxQ09FZERhWE5IUVZGUlFtYzNPSGNLUVZFMFJVVlJkMUJqYlZadFkzazViMXBYUm10amVUbDBXVmRzZFUxQ2IwZERhWE5IUVZGUlFtYzNPSGRCVVRoRlJFRjNTMDFVUVROTlZGRXpUbFJWZVFwUFZFRjFRbWR2Y2tKblJVVkJXVTh2VFVGRlVVSkRRVTFJYldnd1pFaENlazlwT0haYU1td3dZVWhXYVV4dFRuWmlVemx2WkZka2JtRlhOVzVhYlVacUNscFVRVmxDWjI5eVFtZEZSVUZaVHk5TlFVVlNRa0Z2VFVORVNURk9la2wzVG5wUmVrMUhNRWREYVhOSFFWRlJRbWMzT0hkQlVrbEZXSGQ0WkdGSVVqQUtZMGhOTmt4NU9XNWhXRkp2WkZkSmRWa3lPWFJNTW1neFdqSmtjR0p0WkcxWlYwNXNUREowYkdOdE5XeGlTRTEwV1RJNWRHSllWblZoV0ZJMVRIazFiZ3BoV0ZKdlpGZEpkbVF5T1hsaE1scHpZak5rZWt3eVNqRmhWM2hyVEc1c2FHSlhlRUZqYlZadFkzazViMXBYUm10amVUbDBXVmRzZFUxRVowZERhWE5IQ2tGUlVVSm5OemgzUVZKTlJVdG5kMjlhYlZWNVdXMUpNazV0V214YVZGcHFUVzFGTTA0eVZtcFpNbGwzVDBkRmQwNVVRVFJhUjAweFRucFJlVTlIVVRBS1QwUm9iRnBFUVdoQ1oyOXlRbWRGUlVGWlR5OU5RVVZWUWtKTlRVVllaSFpqYlhSdFlrYzVNMWd5VW5Cak0wSm9aRWRPYjAxSFVVZERhWE5IUVZGUlFncG5OemgzUVZKVlJWWm5lRlZoU0ZJd1kwaE5Oa3g1T1c1aFdGSnZaRmRKZFZreU9YUk1NbWd4V2pKa2NHSnRaRzFaVjA1c1RESjBiR050Tld4aVNFMTBDbGt5T1hSaVdGWjFZVmhTTlV3eVJtcGtSMngyWW01TmRtTnVWblZqZVRoNlQxUkplazlVV1RCUFJGVXlUVk01YUdSSVVteGlXRUl3WTNrNGVFMUNXVWNLUTJselIwRlJVVUpuTnpoM1FWSlpSVU5CZDBkalNGWnBZa2RzYWsxRldVZERhWE5IUVZGUlFtYzNPSGRCVW1kRlQwRjNNbU50Vm5kaWVuQnZaRmRrYmdwaFZ6VnVXbTFHYWxwVE9YSmFXRXAxV2xkNGVreFhUblppVnpFeFltMXNNR1ZVY0hsYVYxazJZMjFXYldONU9XOWFWMFpyWTNrNWRGbFhiSFZOU1VkS0NrSm5iM0pDWjBWRlFXUmFOVUZuVVVOQ1NITkZaVkZDTTBGSVZVRXpWREIzWVhOaVNFVlVTbXBIVWpSamJWZGpNMEZ4U2t0WWNtcGxVRXN6TDJnMGNIa0taME00Y0Rkdk5FRkJRVWRvVmt4SFZsWlJRVUZDUVUxQlVtcENSVUZwUWtKMlExRjRZV0Z4Y2tVek1EZFlkbXhVZFVZd2F6bDZLMnBxTUdkb05IQXlTd29yWVhWMVdISnhXV2RSU1dkVFdsWk9hWGg1TlNzMkswTnNOREE0UW1oNVdIcElibkoyVkVaWlRIVXhNRUZ1SzJwVFNtY3hkbmhWZDBObldVbExiMXBKQ25wcU1FVkJkMDFFV25kQmQxcEJTWGRMYzFoWGQzVkhaR3B2VW1neU5ubHBSRlkxWVc5V1FqSkdOR3BCWkRWRmVHNXlUV3h1Vld0NWRsbERSRWN3YkZRS1NrSm9jVTAzWTNoMU9WYzViR1ZzZWtGcVFYSkVkVGxDVjI1bFRIVjFWbTUwV0RsV2JUUmhOR1F6ZW5WdlUwVkxOR1pqVG1ORVQycFlNbGxWUVVSek1ncDBaRXQwUVhVelNrOU9iMjQ1Vm0xbFVHMXJQUW90TFMwdExVVk9SQ0JEUlZKVVNVWkpRMEZVUlMwdExTMHRDZz09In19fX0="}], "timestampVerificationData":{"rfc3161Timestamps":[{"signedTimestamp":"MIICyTADAgEAMIICwAYJKoZIhvcNAQcCoIICsTCCAq0CAQMxDTALBglghkgBZQMEAgEwgbcGCyqGSIb3DQEJEAEEoIGnBIGkMIGhAgEBBgkrBgEEAYO/MAIwMTANBglghkgBZQMEAgEFAAQg+OEIVTQJmWuZAW8+5RpD5lf+128lyYzaKLD8qrXA8lcCFEdQ6r7x8+PEBQqhl93HnyS8oqCPGA8yMDI2MTAxOTE1MDQ0NlowAwIBAaAypDAwLjEVMBMGA1UEChMMc2lnc3RvcmUuZGV2MRUwEwYDVQQDEwxzaWdzdG9yZS10c2GgADGCAdswggHXAgEBMFEwOTEVMBMGA1UEChMMc2lnc3RvcmUuZGV2MSAwHgYDVQQDExdzaWdzdG9yZS10c2Etc2VsZnNpZ25lZAIUOhNULwyQYe68wUMvy4qOiyojiwwwCwYJYIZIAWUDBAIBoIH8MBoGCSqGSIb3DQEJAzENBgsqhkiG9w0BCRABBDAcBgkqhkiG9w0BCQUxDxcNMjYxMDE5MTUwNDQ2WjAvBgkqhkiG9w0BCQQxIgQgJbqYdC1rrA9cQWxUQV8nQwpg6U/BI+MeNW9CVMabupowgY4GCyqGSIb3DQEJEAIvMX8wfTB7MHkEIIX5J7wHq2LKw7RDVsEO/IGyxog/2nq55thw2dE6zQW3MFUwPaQ7MDkxFTATBgNVBAoTDHNpZ3N0b3JlLmRldjEgMB4GA1UEAxMXc2lnc3RvcmUtdHNhLXNlbGZzaWduZWQCFDoTVC8MkGHuvMFDL8uKjosqI4sMMAoGCCqGSM49BAMCBGcwZQIwUAerccut6kMx2EMosgeKkIS9NG7klDJreiLTtvW1pzCxd6q/Y6MWgCBHnvuER/qSAjEA5b5t6STZPC6dCggS8j8iqOISJUr8P6uMlWtpN9TYd+NHBgrL+13U6q6/ibvPycvI"}]}}, "messageSignature":{"messageDigest":{"algorithm":"SHA2_256", "digest":"sMtqfsTCi6bxPn0F8sx1gAEsyneGOakU1WgtufsmTUQ="}, "signature":"MEYCIQDy9Lgi85QkxgO4AiTpnmB2B5A10tXDwU3VIte5cSlErgIhAKY8SbjCqFyIBPvD1jd6x6lI5VB5Is57oqX8NhYNIkx9"}}
|
build/torch210-xpu20253-x86_64-linux/symbols.json
ADDED
|
@@ -0,0 +1,103 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"schema_version": 1,
|
| 3 |
+
"module": "_rotary_xpu_fe2bb66",
|
| 4 |
+
"functions": [
|
| 5 |
+
{
|
| 6 |
+
"name": "apply_rotary",
|
| 7 |
+
"qualname": "apply_rotary",
|
| 8 |
+
"module": "_rotary_xpu_fe2bb66",
|
| 9 |
+
"kind": "function",
|
| 10 |
+
"doc": null,
|
| 11 |
+
"signature": {
|
| 12 |
+
"parameters": [
|
| 13 |
+
{
|
| 14 |
+
"name": "x1",
|
| 15 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 16 |
+
"default": null,
|
| 17 |
+
"annotation": "torch.Tensor"
|
| 18 |
+
},
|
| 19 |
+
{
|
| 20 |
+
"name": "x2",
|
| 21 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 22 |
+
"default": null,
|
| 23 |
+
"annotation": "torch.Tensor"
|
| 24 |
+
},
|
| 25 |
+
{
|
| 26 |
+
"name": "cos",
|
| 27 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 28 |
+
"default": null,
|
| 29 |
+
"annotation": "torch.Tensor"
|
| 30 |
+
},
|
| 31 |
+
{
|
| 32 |
+
"name": "sin",
|
| 33 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 34 |
+
"default": null,
|
| 35 |
+
"annotation": "torch.Tensor"
|
| 36 |
+
},
|
| 37 |
+
{
|
| 38 |
+
"name": "out1",
|
| 39 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 40 |
+
"default": null,
|
| 41 |
+
"annotation": "torch.Tensor"
|
| 42 |
+
},
|
| 43 |
+
{
|
| 44 |
+
"name": "out2",
|
| 45 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 46 |
+
"default": null,
|
| 47 |
+
"annotation": "torch.Tensor"
|
| 48 |
+
},
|
| 49 |
+
{
|
| 50 |
+
"name": "conj",
|
| 51 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 52 |
+
"default": null,
|
| 53 |
+
"annotation": "bool"
|
| 54 |
+
}
|
| 55 |
+
],
|
| 56 |
+
"return_annotation": "None"
|
| 57 |
+
}
|
| 58 |
+
},
|
| 59 |
+
{
|
| 60 |
+
"name": "apply_rotary_transformers",
|
| 61 |
+
"qualname": "apply_rotary_transformers",
|
| 62 |
+
"module": "_rotary_xpu_fe2bb66",
|
| 63 |
+
"kind": "function",
|
| 64 |
+
"doc": "Rotary kernel implementation wrapper\nAdapts rotary kernel implementation to match transformers apply_rotary_pos_emb signature",
|
| 65 |
+
"signature": {
|
| 66 |
+
"parameters": [
|
| 67 |
+
{
|
| 68 |
+
"name": "q",
|
| 69 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 70 |
+
"default": null,
|
| 71 |
+
"annotation": "torch.Tensor"
|
| 72 |
+
},
|
| 73 |
+
{
|
| 74 |
+
"name": "k",
|
| 75 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 76 |
+
"default": null,
|
| 77 |
+
"annotation": "torch.Tensor"
|
| 78 |
+
},
|
| 79 |
+
{
|
| 80 |
+
"name": "cos",
|
| 81 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 82 |
+
"default": null,
|
| 83 |
+
"annotation": "torch.Tensor"
|
| 84 |
+
},
|
| 85 |
+
{
|
| 86 |
+
"name": "sin",
|
| 87 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 88 |
+
"default": null,
|
| 89 |
+
"annotation": "torch.Tensor"
|
| 90 |
+
},
|
| 91 |
+
{
|
| 92 |
+
"name": "unsqueeze_dim",
|
| 93 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 94 |
+
"default": "1",
|
| 95 |
+
"annotation": "int"
|
| 96 |
+
}
|
| 97 |
+
],
|
| 98 |
+
"return_annotation": "tuple[torch.Tensor, torch.Tensor]"
|
| 99 |
+
}
|
| 100 |
+
}
|
| 101 |
+
],
|
| 102 |
+
"layers": []
|
| 103 |
+
}
|
build/torch211-xpu20253-x86_64-linux/__init__.py
ADDED
|
@@ -0,0 +1,57 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import torch
|
| 2 |
+
|
| 3 |
+
from . import layers
|
| 4 |
+
from ._ops import ops
|
| 5 |
+
|
| 6 |
+
|
| 7 |
+
def apply_rotary(
|
| 8 |
+
x1: torch.Tensor,
|
| 9 |
+
x2: torch.Tensor,
|
| 10 |
+
cos: torch.Tensor,
|
| 11 |
+
sin: torch.Tensor,
|
| 12 |
+
out1: torch.Tensor,
|
| 13 |
+
out2: torch.Tensor,
|
| 14 |
+
conj: bool,
|
| 15 |
+
) -> None:
|
| 16 |
+
ops.apply_rotary(x1, x2, cos, sin, out1, out2, conj)
|
| 17 |
+
|
| 18 |
+
|
| 19 |
+
def apply_rotary_transformers(
|
| 20 |
+
q: torch.Tensor,
|
| 21 |
+
k: torch.Tensor,
|
| 22 |
+
cos: torch.Tensor,
|
| 23 |
+
sin: torch.Tensor,
|
| 24 |
+
unsqueeze_dim: int = 1,
|
| 25 |
+
) -> tuple[torch.Tensor, torch.Tensor]:
|
| 26 |
+
"""
|
| 27 |
+
Rotary kernel implementation wrapper
|
| 28 |
+
Adapts rotary kernel implementation to match transformers apply_rotary_pos_emb signature
|
| 29 |
+
"""
|
| 30 |
+
cos = cos.unsqueeze(unsqueeze_dim)
|
| 31 |
+
sin = sin.unsqueeze(unsqueeze_dim)
|
| 32 |
+
|
| 33 |
+
q_rotated = q.clone()
|
| 34 |
+
k_rotated = k.clone()
|
| 35 |
+
|
| 36 |
+
# Get half dimension for rotation
|
| 37 |
+
half_dim = q.shape[-1] // 2
|
| 38 |
+
q1 = q_rotated[..., :half_dim]
|
| 39 |
+
q2 = q_rotated[..., half_dim:]
|
| 40 |
+
k1 = k_rotated[..., :half_dim]
|
| 41 |
+
k2 = k_rotated[..., half_dim:]
|
| 42 |
+
if cos.shape[-1] != half_dim:
|
| 43 |
+
# Trim cos/sin to match half_dim
|
| 44 |
+
cos = cos[..., :half_dim]
|
| 45 |
+
sin = sin[..., :half_dim]
|
| 46 |
+
|
| 47 |
+
apply_rotary(q1, q2, cos, sin, q1, q2, False)
|
| 48 |
+
apply_rotary(k1, k2, cos, sin, k1, k2, False)
|
| 49 |
+
return q_rotated, k_rotated
|
| 50 |
+
|
| 51 |
+
|
| 52 |
+
# Add torch compile support for functions
|
| 53 |
+
apply_rotary_transformers.can_torch_compile = True
|
| 54 |
+
|
| 55 |
+
|
| 56 |
+
# Keeping `apply_rotary` and `apply_rotary_transformers` for BC
|
| 57 |
+
__all__ = ["apply_rotary", "apply_rotary_transformers", "layers"]
|
build/torch211-xpu20253-x86_64-linux/_ops.py
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import torch
|
| 2 |
+
from . import _rotary_xpu_fe2bb66
|
| 3 |
+
ops = torch.ops._rotary_xpu_fe2bb66
|
| 4 |
+
|
| 5 |
+
def add_op_namespace_prefix(op_name: str):
|
| 6 |
+
"""
|
| 7 |
+
Prefix op by namespace.
|
| 8 |
+
"""
|
| 9 |
+
return f"_rotary_xpu_fe2bb66::{op_name}"
|
build/torch211-xpu20253-x86_64-linux/_rotary_xpu_fe2bb66.abi3.so
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:89027cff7db89d7fd5bd8b3f8a94c9c97aeafd3abb84df6145c610ba6c4c362d
|
| 3 |
+
size 465032
|
build/torch211-xpu20253-x86_64-linux/layers.py
ADDED
|
@@ -0,0 +1,41 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import torch
|
| 2 |
+
import torch.nn as nn
|
| 3 |
+
|
| 4 |
+
from ._ops import ops
|
| 5 |
+
|
| 6 |
+
|
| 7 |
+
class apply_rotary_transformers(nn.Module):
|
| 8 |
+
can_torch_compile = True
|
| 9 |
+
|
| 10 |
+
def forward(
|
| 11 |
+
self,
|
| 12 |
+
q: torch.Tensor,
|
| 13 |
+
k: torch.Tensor,
|
| 14 |
+
cos: torch.Tensor,
|
| 15 |
+
sin: torch.Tensor,
|
| 16 |
+
unsqueeze_dim: int = 1,
|
| 17 |
+
) -> tuple[torch.Tensor, torch.Tensor]:
|
| 18 |
+
"""
|
| 19 |
+
Rotary kernel implementation wrapper
|
| 20 |
+
Adapts rotary kernel implementation to match transformers apply_rotary_pos_emb signature
|
| 21 |
+
"""
|
| 22 |
+
cos = cos.unsqueeze(unsqueeze_dim)
|
| 23 |
+
sin = sin.unsqueeze(unsqueeze_dim)
|
| 24 |
+
|
| 25 |
+
q_rotated = q.clone()
|
| 26 |
+
k_rotated = k.clone()
|
| 27 |
+
|
| 28 |
+
# Get half dimension for rotation
|
| 29 |
+
half_dim = q.shape[-1] // 2
|
| 30 |
+
q1 = q_rotated[..., :half_dim]
|
| 31 |
+
q2 = q_rotated[..., half_dim:]
|
| 32 |
+
k1 = k_rotated[..., :half_dim]
|
| 33 |
+
k2 = k_rotated[..., half_dim:]
|
| 34 |
+
if cos.shape[-1] != half_dim:
|
| 35 |
+
# Trim cos/sin to match half_dim
|
| 36 |
+
cos = cos[..., :half_dim]
|
| 37 |
+
sin = sin[..., :half_dim]
|
| 38 |
+
|
| 39 |
+
ops.apply_rotary(q1, q2, cos, sin, q1, q2, False)
|
| 40 |
+
ops.apply_rotary(k1, k2, cos, sin, k1, k2, False)
|
| 41 |
+
return q_rotated, k_rotated
|
build/torch211-xpu20253-x86_64-linux/metadata.json
ADDED
|
@@ -0,0 +1,33 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"name": "rotary",
|
| 3 |
+
"id": "_rotary_xpu_fe2bb66",
|
| 4 |
+
"version": 2,
|
| 5 |
+
"kernels-minver": "0.14.0",
|
| 6 |
+
"license": "BSD-3-Clause",
|
| 7 |
+
"python-depends": [],
|
| 8 |
+
"kernel-depends": [],
|
| 9 |
+
"backend": {
|
| 10 |
+
"type": "xpu"
|
| 11 |
+
},
|
| 12 |
+
"digest": {
|
| 13 |
+
"algorithm": "sha256",
|
| 14 |
+
"files": {
|
| 15 |
+
"__init__.py": "qlvCb0Z6KMkcCxgjDRxjD1ofWaJ/Lqx0cTFlqrncWyE=",
|
| 16 |
+
"_ops.py": "Jeq0/zADY+Cq3MnRyzR/8jDpyYANlwKH71wgSME2/vA=",
|
| 17 |
+
"_rotary_xpu_fe2bb66.abi3.so": "iQJ8/324nX/VvYs/ipTJyXrq/Tq7hN9hRcYQumxMNi0=",
|
| 18 |
+
"layers.py": "c8ZzUlsVi1lOGhM67JSViZdKBSbIKItQxmWkXPiTEy4=",
|
| 19 |
+
"symbols.json": "PxgUNQB1dU+NEARgssX8a05dn1+R6dbDC79RXAlVxqw="
|
| 20 |
+
}
|
| 21 |
+
},
|
| 22 |
+
"provenance": {
|
| 23 |
+
"kernel-builder": {
|
| 24 |
+
"version": "0.18.0-dev0",
|
| 25 |
+
"commit": "d054906a13710b811b96697b4635f03020842733",
|
| 26 |
+
"dirty": false
|
| 27 |
+
},
|
| 28 |
+
"kernel": {
|
| 29 |
+
"commit": "fe2bb66fee6c2a77eccf08a0508dc57428d488ed",
|
| 30 |
+
"dirty": false
|
| 31 |
+
}
|
| 32 |
+
}
|
| 33 |
+
}
|
build/torch211-xpu20253-x86_64-linux/metadata.json.sigstore
ADDED
|
@@ -0,0 +1 @@
|
|
|
|
|
|
|
| 1 |
+
{"mediaType":"application/vnd.dev.sigstore.bundle.v0.3+json", "verificationMaterial":{"certificate":{"rawBytes":"MIIHLDCCBrKgAwIBAgIUaDJIxW5omMNK/vk/HSnbYb8s4sAwCgYIKoZIzj0EAwMwNzEVMBMGA1UEChMMc2lnc3RvcmUuZGV2MR4wHAYDVQQDExVzaWdzdG9yZS1pbnRlcm1lZGlhdGUwHhcNMjYxMDE5MTUwNDQ5WhcNMjYxMDE5MTUxNDQ5WjAAMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEvs16QJjX62LoAiVXxzssh0FtHLjsoTM5kfaZh2TvW9elkXMtLbHun6DbmXPi6YItVjpbbrdJXPQ79lF8uTDdXqOCBdEwggXNMA4GA1UdDwEB/wQEAwIHgDATBgNVHSUEDDAKBggrBgEFBQcDAzAfBgNVHSMEGDAWgBTf0+nPViQRlvmo2OkoVaLGLhhkPzBrBgNVHREBAf8EYTBfhl1odHRwczovL2dpdGh1Yi5jb20vaHVnZ2luZ2ZhY2Uva2VybmVscy1jb21tdW5pdHkvLmdpdGh1Yi93b3JrZmxvd3MvYnVpbGQueWFtbEByZWZzL2hlYWRzL21haW4wOQYKKwYBBAGDvzABAQQraHR0cHM6Ly90b2tlbi5hY3Rpb25zLmdpdGh1YnVzZXJjb250ZW50LmNvbTAfBgorBgEEAYO/MAECBBF3b3JrZmxvd19kaXNwYXRjaDA2BgorBgEEAYO/MAEDBChmZTJiYjY2ZmVlNmMyYTc3ZWNjZjA4YTA1MDhkYzU3NDI4ZDQ4OGVkMBMGCisGAQQBg78wAQQEBUJ1aWxkMCsGCisGAQQBg78wAQUEHWh1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5MB0GCisGAQQBg78wAQYED3JlZnMvaGVhZHMvbWFpbjA7BgorBgEEAYO/MAEIBC0MK2h0dHBzOi8vdG9rZW4uYWN0aW9ucy5naXRodWJ1c2VyY29udGVudC5jb20wbQYKKwYBBAGDvzABCQRfDF1odHRwczovL2dpdGh1Yi5jb20vaHVnZ2luZ2ZhY2Uva2VybmVscy1jb21tdW5pdHkvLmdpdGh1Yi93b3JrZmxvd3MvYnVpbGQueWFtbEByZWZzL2hlYWRzL21haW4wOAYKKwYBBAGDvzABCgQqDChmZTJiYjY2ZmVlNmMyYTc3ZWNjZjA4YTA1MDhkYzU3NDI4ZDQ4OGVkMBsGCisGAQQBg78wAQsEDQwLc2VsZi1ob3N0ZWQwQAYKKwYBBAGDvzABDAQyDDBodHRwczovL2dpdGh1Yi5jb20vaHVnZ2luZ2ZhY2Uva2VybmVscy1jb21tdW5pdHkwOAYKKwYBBAGDvzABDQQqDChmZTJiYjY2ZmVlNmMyYTc3ZWNjZjA4YTA1MDhkYzU3NDI4ZDQ4OGVkMB8GCisGAQQBg78wAQ4EEQwPcmVmcy9oZWFkcy9tYWluMBoGCisGAQQBg78wAQ8EDAwKMTA3MTQ3NTUyOTAuBgorBgEEAYO/MAEQBCAMHmh0dHBzOi8vZ2l0aHViLmNvbS9odWdnaW5nZmFjZTAYBgorBgEEAYO/MAERBAoMCDI1NzIwNzQzMG0GCisGAQQBg78wARIEXwxdaHR0cHM6Ly9naXRodWIuY29tL2h1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5Ly5naXRodWIvd29ya2Zsb3dzL2J1aWxkLnlhbWxAcmVmcy9oZWFkcy9tYWluMDgGCisGAQQBg78wARMEKgwoZmUyYmI2NmZlZTZjMmE3N2VjY2YwOGEwNTA4ZGM1NzQyOGQ0ODhlZDAhBgorBgEEAYO/MAEUBBMMEXdvcmtmbG93X2Rpc3BhdGNoMGQGCisGAQQBg78wARUEVgxUaHR0cHM6Ly9naXRodWIuY29tL2h1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5L2FjdGlvbnMvcnVucy8zOTIzOTY0ODU2MS9hdHRlbXB0cy8xMBYGCisGAQQBg78wARYECAwGcHVibGljMEYGCisGAQQBg78wARgEOAw2cmVwbzpodWdnaW5nZmFjZS9rZXJuZWxzLWNvbW11bml0eTpyZWY6cmVmcy9oZWFkcy9tYWluMIGKBgorBgEEAdZ5AgQCBHwEegB4AHYA3T0wasbHETJjGR4cmWc3AqJKXrjePK3/h4pygC8p7o4AAAGhVLGhgQAABAMARzBFAiEAjnXj+vsrhM/cM1HIBN/PFYqFMdoO4s3YWZPgB95xa9UCIFksxxpsL1jVLpj1rapvAylkI2op0QVfKHouTDu+WFAAMAoGCCqGSM49BAMDA2gAMGUCMQCXQ0DzV+r+F8GeSOwK4xQsdhmGzngexreYZ5JiTqNRfb6VeO4G/ISfH0M9/TbA/vYCMCvAdizvqF2FCKWBBlYSRcGicevb5V1tnStiMABnOtIEXPG3s3xgqSXnysRrfXCNQg=="}, "tlogEntries":[{"logIndex":"3322435418", "logId":{"keyId":"wNI9atQGlz+VWfO6LRygH4QUfY/8W4RFwiT5i5WRgB0="}, "kindVersion":{"kind":"hashedrekord", "version":"0.0.1"}, "integratedTime":"1792422291", "inclusionPromise":{"signedEntryTimestamp":"MEUCIQCKZ8ceegH8/5XyQDCS9tNSHCgodGYZk64epJF8p+yB2wIgE6t4Wy6v+FkRDoiBnCGXM5Di8QuLjnYcBwnt5oxnJoA="}, "inclusionProof":{"logIndex":"3200531156", "rootHash":"KcvjDtWckghWks4QWreSEtNHI3AdtAI9zfTq6tW0YUU=", "treeSize":"3200531319", "hashes":["di9zbm9wtX9M/lKelcKTsKNxNuVVRwYoRyTHLFep/ck=", "VVqxIut/2XwInp606xcOpSW53SD6r6onJF8jBEc7l+M=", "CdDlCHk3atoAKQBxw310ufG76qePd4oMpFWmfcXeHIQ=", "UUkpwUHgTbSodZ08IbZsglKWNgFnjpuoXrcE9v2eA7U=", "Eh+ySSjAq0G+YtGz3bcNf7b2Jpt6LL9MaA8VHAzwTRs=", "gJYt2ebtZDIG5npu4wBzpz+sc9huPjaGA1ARb5mfxnU=", "P/fna3P6XnGRSAtOxwhpihu8O2yrY74iX+MVo/Q/Lx0=", "G/lBe5tM1aQhGDsHn3k+Te0LYUSsKn40A+Fi6Vl79L4=", "w7V1nv5CpsqlTpMhnFJg1go3r+fndYag3XfwwIS2G3I=", "Z7xvCieT6TL4tA1Jg+blh73NGO+R8uZ5HLZHV7Sgotg=", "0I9MXfCM++a599ZUYW+rol2g09fmRNYS5rKmDNdZGqI=", "kPs/NJfJB3GOjEAa3rCM+19o4Lii1xBD4t4fO1Ccj5c=", "he9CYbukrPRH8TJtLX4O5uamOGODItWglfqW/ZFrOsg=", "+uGmdFlSXHU/F2/EH9t0YPf1KfLVa0s8IOgjHO79Z0Q=", "7WFpoaiQCzLwM3o2YI5Ngo8J7JD0OfyCCQtmXhWxVes=", "nyQV/+cWQUG5Hb2PKjQQNkQIJmz2qzAZKBQlkHGIknM=", "G+nk7mgE5h6dUmv2UY7NDJrY3WvrZY31raaO1AETt+o=", "qlTWNDzERnTBQVcHHXXVPjiUP0SsikGxfcxVlgqVFDo=", "gg9GNApNke3+zNhl4tsWtmIycCFrOMCB3lys6XuSQNQ=", "NlOclldmKPA1tMKIskqHAwuQDYHp31YwpK+OOMrMccc=", "qxzHanAzz57SDdmJe0B7bJK72NTIBbwEMGBBKvDOROw=", "xH/DCseLHr9eKoYT8qsORZK7zVdEGYWHuVtsVrD95wY="], "checkpoint":{"envelope":"rekor.sigstore.dev - 1193050959916656506\n3200531319\nKcvjDtWckghWks4QWreSEtNHI3AdtAI9zfTq6tW0YUU=\n\n— rekor.sigstore.dev wNI9ajBGAiEAxQOxyuEEBF83t/AFZAcShiKuYWk+ek3Lo16qQi8PBLUCIQCDds4oCuLZRLTMGTlmWtzihv97MVbIK+i80hNG3cIOrw==\n"}}, "canonicalizedBody":"eyJhcGlWZXJzaW9uIjoiMC4wLjEiLCJraW5kIjoiaGFzaGVkcmVrb3JkIiwic3BlYyI6eyJkYXRhIjp7Imhhc2giOnsiYWxnb3JpdGhtIjoic2hhMjU2IiwidmFsdWUiOiI0YTc5OWZlYjM5ODBjZjNlYWM2ZTc3Zjk0YjMxZmMxZjM5OThmZDg3MjI3NTAwMzJkZjc1NGJmMTY3YTRmYjQxIn19LCJzaWduYXR1cmUiOnsiY29udGVudCI6Ik1FVUNJUURPMVdsWlNCaHF3dUE5ekpKZkZBeUs0Qi9MMnZZMWlBMXhrQ3dITTkyNnFRSWdVMVMzcERYL2pOT2gyOGxlTXR4c05RSDJBUEVuRFRib1BRLyt2eUhMZW1BPSIsInB1YmxpY0tleSI6eyJjb250ZW50IjoiTFMwdExTMUNSVWRKVGlCRFJWSlVTVVpKUTBGVVJTMHRMUzB0Q2sxSlNVaE1SRU5EUW5KTFowRjNTVUpCWjBsVllVUktTWGhYTlc5dFRVNUxMM1pyTDBoVGJtSlpZamh6TkhOQmQwTm5XVWxMYjFwSmVtb3dSVUYzVFhjS1RucEZWazFDVFVkQk1WVkZRMmhOVFdNeWJHNWpNMUoyWTIxVmRWcEhWakpOVWpSM1NFRlpSRlpSVVVSRmVGWjZZVmRrZW1SSE9YbGFVekZ3WW01U2JBcGpiVEZzV2tkc2FHUkhWWGRJYUdOT1RXcFplRTFFUlRWTlZGVjNUa1JSTlZkb1kwNU5hbGw0VFVSRk5VMVVWWGhPUkZFMVYycEJRVTFHYTNkRmQxbElDa3R2V2tsNmFqQkRRVkZaU1V0dldrbDZhakJFUVZGalJGRm5RVVYyY3pFMlVVcHFXRFl5VEc5QmFWWlllSHB6YzJnd1JuUklUR3B6YjFSTk5XdG1ZVm9LYURKVWRsYzVaV3hyV0UxMFRHSklkVzQyUkdKdFdGQnBObGxKZEZacWNHSmljbVJLV0ZCUk56bHNSamgxVkVSa1dIRlBRMEprUlhkbloxaE9UVUUwUndwQk1WVmtSSGRGUWk5M1VVVkJkMGxJWjBSQlZFSm5UbFpJVTFWRlJFUkJTMEpuWjNKQ1owVkdRbEZqUkVGNlFXWkNaMDVXU0ZOTlJVZEVRVmRuUWxSbUNqQXJibEJXYVZGU2JIWnRiekpQYTI5V1lVeEhUR2hvYTFCNlFuSkNaMDVXU0ZKRlFrRm1PRVZaVkVKbWFHd3hiMlJJVW5kamVtOTJUREprY0dSSGFERUtXV2sxYW1JeU1IWmhTRlp1V2pKc2RWb3lXbWhaTWxWMllUSldlV0p0Vm5OamVURnFZakl4ZEdSWE5YQmtTR3QyVEcxa2NHUkhhREZaYVRrellqTktjZ3BhYlhoMlpETk5kbGx1Vm5CaVIxRjFaVmRHZEdKRlFubGFWMXA2VERKb2JGbFhVbnBNTWpGb1lWYzBkMDlSV1V0TGQxbENRa0ZIUkhaNlFVSkJVVkZ5Q21GSVVqQmpTRTAyVEhrNU1HSXlkR3hpYVRWb1dUTlNjR0l5TlhwTWJXUndaRWRvTVZsdVZucGFXRXBxWWpJMU1GcFhOVEJNYlU1MllsUkJaa0puYjNJS1FtZEZSVUZaVHk5TlFVVkRRa0pHTTJJelNuSmFiWGgyWkRFNWEyRllUbmRaV0ZKcVlVUkJNa0puYjNKQ1owVkZRVmxQTDAxQlJVUkNRMmh0V2xSS2FRcFphbGt5V20xV2JFNXRUWGxaVkdNeldsZE9hbHBxUVRSWlZFRXhUVVJvYTFsNlZUTk9SRWswV2tSUk5FOUhWbXROUWsxSFEybHpSMEZSVVVKbk56aDNDa0ZSVVVWQ1ZVb3hZVmQ0YTAxRGMwZERhWE5IUVZGUlFtYzNPSGRCVVZWRlNGZG9NVm95WkhCaWJXUnRXVmRPYkV3eWRHeGpiVFZzWWtoTmRGa3lPWFFLWWxoV2RXRllValZOUWpCSFEybHpSMEZSVVVKbk56aDNRVkZaUlVRelNteGFiazEyWVVkV2FGcElUWFppVjBad1ltcEJOMEpuYjNKQ1owVkZRVmxQTHdwTlFVVkpRa013VFVzeWFEQmtTRUo2VDJrNGRtUkhPWEphVnpSMVdWZE9NR0ZYT1hWamVUVnVZVmhTYjJSWFNqRmpNbFo1V1RJNWRXUkhWblZrUXpWcUNtSXlNSGRpVVZsTFMzZFpRa0pCUjBSMmVrRkNRMUZTWmtSR01XOWtTRkozWTNwdmRrd3laSEJrUjJneFdXazFhbUl5TUhaaFNGWnVXakpzZFZveVdtZ0tXVEpWZG1FeVZubGliVlp6WTNreGFtSXlNWFJrVnpWd1pFaHJka3h0WkhCa1IyZ3hXV2s1TTJJelNuSmFiWGgyWkROTmRsbHVWbkJpUjFGMVpWZEdkQXBpUlVKNVdsZGFla3d5YUd4WlYxSjZUREl4YUdGWE5IZFBRVmxMUzNkWlFrSkJSMFIyZWtGQ1EyZFJjVVJEYUcxYVZFcHBXV3BaTWxwdFZteE9iVTE1Q2xsVVl6TmFWMDVxV21wQk5GbFVRVEZOUkdocldYcFZNMDVFU1RSYVJGRTBUMGRXYTAxQ2MwZERhWE5IUVZGUlFtYzNPSGRCVVhORlJGRjNUR015Vm5NS1dta3hiMkl6VGpCYVYxRjNVVUZaUzB0M1dVSkNRVWRFZG5wQlFrUkJVWGxFUkVKdlpFaFNkMk42YjNaTU1tUndaRWRvTVZscE5XcGlNakIyWVVoV2JncGFNbXgxV2pKYWFGa3lWWFpoTWxaNVltMVdjMk41TVdwaU1qRjBaRmMxY0dSSWEzZFBRVmxMUzNkWlFrSkJSMFIyZWtGQ1JGRlJjVVJEYUcxYVZFcHBDbGxxV1RKYWJWWnNUbTFOZVZsVVl6TmFWMDVxV21wQk5GbFVRVEZOUkdocldYcFZNMDVFU1RSYVJGRTBUMGRXYTAxQ09FZERhWE5IUVZGUlFtYzNPSGNLUVZFMFJVVlJkMUJqYlZadFkzazViMXBYUm10amVUbDBXVmRzZFUxQ2IwZERhWE5IUVZGUlFtYzNPSGRCVVRoRlJFRjNTMDFVUVROTlZGRXpUbFJWZVFwUFZFRjFRbWR2Y2tKblJVVkJXVTh2VFVGRlVVSkRRVTFJYldnd1pFaENlazlwT0haYU1td3dZVWhXYVV4dFRuWmlVemx2WkZka2JtRlhOVzVhYlVacUNscFVRVmxDWjI5eVFtZEZSVUZaVHk5TlFVVlNRa0Z2VFVORVNURk9la2wzVG5wUmVrMUhNRWREYVhOSFFWRlJRbWMzT0hkQlVrbEZXSGQ0WkdGSVVqQUtZMGhOTmt4NU9XNWhXRkp2WkZkSmRWa3lPWFJNTW1neFdqSmtjR0p0WkcxWlYwNXNUREowYkdOdE5XeGlTRTEwV1RJNWRHSllWblZoV0ZJMVRIazFiZ3BoV0ZKdlpGZEpkbVF5T1hsaE1scHpZak5rZWt3eVNqRmhWM2hyVEc1c2FHSlhlRUZqYlZadFkzazViMXBYUm10amVUbDBXVmRzZFUxRVowZERhWE5IQ2tGUlVVSm5OemgzUVZKTlJVdG5kMjlhYlZWNVdXMUpNazV0V214YVZGcHFUVzFGTTA0eVZtcFpNbGwzVDBkRmQwNVVRVFJhUjAweFRucFJlVTlIVVRBS1QwUm9iRnBFUVdoQ1oyOXlRbWRGUlVGWlR5OU5RVVZWUWtKTlRVVllaSFpqYlhSdFlrYzVNMWd5VW5Cak0wSm9aRWRPYjAxSFVVZERhWE5IUVZGUlFncG5OemgzUVZKVlJWWm5lRlZoU0ZJd1kwaE5Oa3g1T1c1aFdGSnZaRmRKZFZreU9YUk1NbWd4V2pKa2NHSnRaRzFaVjA1c1RESjBiR050Tld4aVNFMTBDbGt5T1hSaVdGWjFZVmhTTlV3eVJtcGtSMngyWW01TmRtTnVWblZqZVRoNlQxUkplazlVV1RCUFJGVXlUVk01YUdSSVVteGlXRUl3WTNrNGVFMUNXVWNLUTJselIwRlJVVUpuTnpoM1FWSlpSVU5CZDBkalNGWnBZa2RzYWsxRldVZERhWE5IUVZGUlFtYzNPSGRCVW1kRlQwRjNNbU50Vm5kaWVuQnZaRmRrYmdwaFZ6VnVXbTFHYWxwVE9YSmFXRXAxV2xkNGVreFhUblppVnpFeFltMXNNR1ZVY0hsYVYxazJZMjFXYldONU9XOWFWMFpyWTNrNWRGbFhiSFZOU1VkTENrSm5iM0pDWjBWRlFXUmFOVUZuVVVOQ1NIZEZaV2RDTkVGSVdVRXpWREIzWVhOaVNFVlVTbXBIVWpSamJWZGpNMEZ4U2t0WWNtcGxVRXN6TDJnMGNIa0taME00Y0Rkdk5FRkJRVWRvVmt4SGFHZFJRVUZDUVUxQlVucENSa0ZwUlVGcWJsaHFLM1p6Y21oTkwyTk5NVWhKUWs0dlVFWlpjVVpOWkc5UE5ITXpXUXBYV2xCblFqazFlR0U1VlVOSlJtdHplSGh3YzB3eGFsWk1jR294Y21Gd2RrRjViR3RKTW05d01GRldaa3RJYjNWVVJIVXJWMFpCUVUxQmIwZERRM0ZIQ2xOTk5EbENRVTFFUVRKblFVMUhWVU5OVVVOWVVUQkVlbFlyY2l0R09FZGxVMDkzU3pSNFVYTmthRzFIZW01blpYaHlaVmxhTlVwcFZIRk9VbVppTmxZS1pVODBSeTlKVTJaSU1FMDVMMVJpUVM5MldVTk5RM1pCWkdsNmRuRkdNa1pEUzFkQ1FteFpVMUpqUjJsalpYWmlOVll4ZEc1VGRHbE5RVUp1VDNSSlJRcFlVRWN6Y3pONFozRlRXRzU1YzFKeVpsaERUbEZuUFQwS0xTMHRMUzFGVGtRZ1EwVlNWRWxHU1VOQlZFVXRMUzB0TFFvPSJ9fX19"}], "timestampVerificationData":{"rfc3161Timestamps":[{"signedTimestamp":"MIICyjADAgEAMIICwQYJKoZIhvcNAQcCoIICsjCCAq4CAQMxDTALBglghkgBZQMEAgEwgbgGCyqGSIb3DQEJEAEEoIGoBIGlMIGiAgEBBgkrBgEEAYO/MAIwMTANBglghkgBZQMEAgEFAAQgGAaI81bhVDwcxIL+7pRy5hyWummk8RAufZPwoXkV8v4CFQD8Xe2LBv5cmvIgOne/EgJpF+aWnBgPMjAyNjEwMTkxNTA0NDlaMAMCAQGgMqQwMC4xFTATBgNVBAoTDHNpZ3N0b3JlLmRldjEVMBMGA1UEAxMMc2lnc3RvcmUtdHNhoAAxggHbMIIB1wIBATBRMDkxFTATBgNVBAoTDHNpZ3N0b3JlLmRldjEgMB4GA1UEAxMXc2lnc3RvcmUtdHNhLXNlbGZzaWduZWQCFDoTVC8MkGHuvMFDL8uKjosqI4sMMAsGCWCGSAFlAwQCAaCB/DAaBgkqhkiG9w0BCQMxDQYLKoZIhvcNAQkQAQQwHAYJKoZIhvcNAQkFMQ8XDTI2MTAxOTE1MDQ0OVowLwYJKoZIhvcNAQkEMSIEIEuwLxxBmCvQcIyFO3T76QVQkv5NvUcJXrWfv/jqBXOeMIGOBgsqhkiG9w0BCRACLzF/MH0wezB5BCCF+Se8B6tiysO0Q1bBDvyBssaIP9p6uebYcNnROs0FtzBVMD2kOzA5MRUwEwYDVQQKEwxzaWdzdG9yZS5kZXYxIDAeBgNVBAMTF3NpZ3N0b3JlLXRzYS1zZWxmc2lnbmVkAhQ6E1QvDJBh7rzBQy/Lio6LKiOLDDAKBggqhkjOPQQDAgRnMGUCMQDVxRM1pD/aexkG83cVxm5EjC50/pW+3CeYB0IG8we1zP1BfRed/46NJwqrMP6LNhQCMG8WbMJZb5T1A6UGPy0xjoAP4/ZSrxhC+XdPxLTrBjN+mv7ecXy5UaZrklFmteRJCw=="}]}}, "messageSignature":{"messageDigest":{"algorithm":"SHA2_256", "digest":"Snmf6zmAzz6sbnf5SzH8HzmY/YcidQAy33VL8Wek+0E="}, "signature":"MEUCIQDO1WlZSBhqwuA9zJJfFAyK4B/L2vY1iA1xkCwHM926qQIgU1S3pDX/jNOh28leMtxsNQH2APEnDTboPQ/+vyHLemA="}}
|
build/torch211-xpu20253-x86_64-linux/symbols.json
ADDED
|
@@ -0,0 +1,103 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"schema_version": 1,
|
| 3 |
+
"module": "_rotary_xpu_fe2bb66",
|
| 4 |
+
"functions": [
|
| 5 |
+
{
|
| 6 |
+
"name": "apply_rotary",
|
| 7 |
+
"qualname": "apply_rotary",
|
| 8 |
+
"module": "_rotary_xpu_fe2bb66",
|
| 9 |
+
"kind": "function",
|
| 10 |
+
"doc": null,
|
| 11 |
+
"signature": {
|
| 12 |
+
"parameters": [
|
| 13 |
+
{
|
| 14 |
+
"name": "x1",
|
| 15 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 16 |
+
"default": null,
|
| 17 |
+
"annotation": "torch.Tensor"
|
| 18 |
+
},
|
| 19 |
+
{
|
| 20 |
+
"name": "x2",
|
| 21 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 22 |
+
"default": null,
|
| 23 |
+
"annotation": "torch.Tensor"
|
| 24 |
+
},
|
| 25 |
+
{
|
| 26 |
+
"name": "cos",
|
| 27 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 28 |
+
"default": null,
|
| 29 |
+
"annotation": "torch.Tensor"
|
| 30 |
+
},
|
| 31 |
+
{
|
| 32 |
+
"name": "sin",
|
| 33 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 34 |
+
"default": null,
|
| 35 |
+
"annotation": "torch.Tensor"
|
| 36 |
+
},
|
| 37 |
+
{
|
| 38 |
+
"name": "out1",
|
| 39 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 40 |
+
"default": null,
|
| 41 |
+
"annotation": "torch.Tensor"
|
| 42 |
+
},
|
| 43 |
+
{
|
| 44 |
+
"name": "out2",
|
| 45 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 46 |
+
"default": null,
|
| 47 |
+
"annotation": "torch.Tensor"
|
| 48 |
+
},
|
| 49 |
+
{
|
| 50 |
+
"name": "conj",
|
| 51 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 52 |
+
"default": null,
|
| 53 |
+
"annotation": "bool"
|
| 54 |
+
}
|
| 55 |
+
],
|
| 56 |
+
"return_annotation": "None"
|
| 57 |
+
}
|
| 58 |
+
},
|
| 59 |
+
{
|
| 60 |
+
"name": "apply_rotary_transformers",
|
| 61 |
+
"qualname": "apply_rotary_transformers",
|
| 62 |
+
"module": "_rotary_xpu_fe2bb66",
|
| 63 |
+
"kind": "function",
|
| 64 |
+
"doc": "Rotary kernel implementation wrapper\nAdapts rotary kernel implementation to match transformers apply_rotary_pos_emb signature",
|
| 65 |
+
"signature": {
|
| 66 |
+
"parameters": [
|
| 67 |
+
{
|
| 68 |
+
"name": "q",
|
| 69 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 70 |
+
"default": null,
|
| 71 |
+
"annotation": "torch.Tensor"
|
| 72 |
+
},
|
| 73 |
+
{
|
| 74 |
+
"name": "k",
|
| 75 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 76 |
+
"default": null,
|
| 77 |
+
"annotation": "torch.Tensor"
|
| 78 |
+
},
|
| 79 |
+
{
|
| 80 |
+
"name": "cos",
|
| 81 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 82 |
+
"default": null,
|
| 83 |
+
"annotation": "torch.Tensor"
|
| 84 |
+
},
|
| 85 |
+
{
|
| 86 |
+
"name": "sin",
|
| 87 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 88 |
+
"default": null,
|
| 89 |
+
"annotation": "torch.Tensor"
|
| 90 |
+
},
|
| 91 |
+
{
|
| 92 |
+
"name": "unsqueeze_dim",
|
| 93 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 94 |
+
"default": "1",
|
| 95 |
+
"annotation": "int"
|
| 96 |
+
}
|
| 97 |
+
],
|
| 98 |
+
"return_annotation": "tuple[torch.Tensor, torch.Tensor]"
|
| 99 |
+
}
|
| 100 |
+
}
|
| 101 |
+
],
|
| 102 |
+
"layers": []
|
| 103 |
+
}
|
build/torch212-xpu20253-x86_64-linux/__init__.py
ADDED
|
@@ -0,0 +1,57 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import torch
|
| 2 |
+
|
| 3 |
+
from . import layers
|
| 4 |
+
from ._ops import ops
|
| 5 |
+
|
| 6 |
+
|
| 7 |
+
def apply_rotary(
|
| 8 |
+
x1: torch.Tensor,
|
| 9 |
+
x2: torch.Tensor,
|
| 10 |
+
cos: torch.Tensor,
|
| 11 |
+
sin: torch.Tensor,
|
| 12 |
+
out1: torch.Tensor,
|
| 13 |
+
out2: torch.Tensor,
|
| 14 |
+
conj: bool,
|
| 15 |
+
) -> None:
|
| 16 |
+
ops.apply_rotary(x1, x2, cos, sin, out1, out2, conj)
|
| 17 |
+
|
| 18 |
+
|
| 19 |
+
def apply_rotary_transformers(
|
| 20 |
+
q: torch.Tensor,
|
| 21 |
+
k: torch.Tensor,
|
| 22 |
+
cos: torch.Tensor,
|
| 23 |
+
sin: torch.Tensor,
|
| 24 |
+
unsqueeze_dim: int = 1,
|
| 25 |
+
) -> tuple[torch.Tensor, torch.Tensor]:
|
| 26 |
+
"""
|
| 27 |
+
Rotary kernel implementation wrapper
|
| 28 |
+
Adapts rotary kernel implementation to match transformers apply_rotary_pos_emb signature
|
| 29 |
+
"""
|
| 30 |
+
cos = cos.unsqueeze(unsqueeze_dim)
|
| 31 |
+
sin = sin.unsqueeze(unsqueeze_dim)
|
| 32 |
+
|
| 33 |
+
q_rotated = q.clone()
|
| 34 |
+
k_rotated = k.clone()
|
| 35 |
+
|
| 36 |
+
# Get half dimension for rotation
|
| 37 |
+
half_dim = q.shape[-1] // 2
|
| 38 |
+
q1 = q_rotated[..., :half_dim]
|
| 39 |
+
q2 = q_rotated[..., half_dim:]
|
| 40 |
+
k1 = k_rotated[..., :half_dim]
|
| 41 |
+
k2 = k_rotated[..., half_dim:]
|
| 42 |
+
if cos.shape[-1] != half_dim:
|
| 43 |
+
# Trim cos/sin to match half_dim
|
| 44 |
+
cos = cos[..., :half_dim]
|
| 45 |
+
sin = sin[..., :half_dim]
|
| 46 |
+
|
| 47 |
+
apply_rotary(q1, q2, cos, sin, q1, q2, False)
|
| 48 |
+
apply_rotary(k1, k2, cos, sin, k1, k2, False)
|
| 49 |
+
return q_rotated, k_rotated
|
| 50 |
+
|
| 51 |
+
|
| 52 |
+
# Add torch compile support for functions
|
| 53 |
+
apply_rotary_transformers.can_torch_compile = True
|
| 54 |
+
|
| 55 |
+
|
| 56 |
+
# Keeping `apply_rotary` and `apply_rotary_transformers` for BC
|
| 57 |
+
__all__ = ["apply_rotary", "apply_rotary_transformers", "layers"]
|
build/torch212-xpu20253-x86_64-linux/_ops.py
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import torch
|
| 2 |
+
from . import _rotary_xpu_fe2bb66
|
| 3 |
+
ops = torch.ops._rotary_xpu_fe2bb66
|
| 4 |
+
|
| 5 |
+
def add_op_namespace_prefix(op_name: str):
|
| 6 |
+
"""
|
| 7 |
+
Prefix op by namespace.
|
| 8 |
+
"""
|
| 9 |
+
return f"_rotary_xpu_fe2bb66::{op_name}"
|
build/torch212-xpu20253-x86_64-linux/_rotary_xpu_fe2bb66.abi3.so
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:6360a05536cc020846583784052708933705d22ee95a113da9b31d3c11bb7977
|
| 3 |
+
size 464744
|
build/torch212-xpu20253-x86_64-linux/layers.py
ADDED
|
@@ -0,0 +1,41 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import torch
|
| 2 |
+
import torch.nn as nn
|
| 3 |
+
|
| 4 |
+
from ._ops import ops
|
| 5 |
+
|
| 6 |
+
|
| 7 |
+
class apply_rotary_transformers(nn.Module):
|
| 8 |
+
can_torch_compile = True
|
| 9 |
+
|
| 10 |
+
def forward(
|
| 11 |
+
self,
|
| 12 |
+
q: torch.Tensor,
|
| 13 |
+
k: torch.Tensor,
|
| 14 |
+
cos: torch.Tensor,
|
| 15 |
+
sin: torch.Tensor,
|
| 16 |
+
unsqueeze_dim: int = 1,
|
| 17 |
+
) -> tuple[torch.Tensor, torch.Tensor]:
|
| 18 |
+
"""
|
| 19 |
+
Rotary kernel implementation wrapper
|
| 20 |
+
Adapts rotary kernel implementation to match transformers apply_rotary_pos_emb signature
|
| 21 |
+
"""
|
| 22 |
+
cos = cos.unsqueeze(unsqueeze_dim)
|
| 23 |
+
sin = sin.unsqueeze(unsqueeze_dim)
|
| 24 |
+
|
| 25 |
+
q_rotated = q.clone()
|
| 26 |
+
k_rotated = k.clone()
|
| 27 |
+
|
| 28 |
+
# Get half dimension for rotation
|
| 29 |
+
half_dim = q.shape[-1] // 2
|
| 30 |
+
q1 = q_rotated[..., :half_dim]
|
| 31 |
+
q2 = q_rotated[..., half_dim:]
|
| 32 |
+
k1 = k_rotated[..., :half_dim]
|
| 33 |
+
k2 = k_rotated[..., half_dim:]
|
| 34 |
+
if cos.shape[-1] != half_dim:
|
| 35 |
+
# Trim cos/sin to match half_dim
|
| 36 |
+
cos = cos[..., :half_dim]
|
| 37 |
+
sin = sin[..., :half_dim]
|
| 38 |
+
|
| 39 |
+
ops.apply_rotary(q1, q2, cos, sin, q1, q2, False)
|
| 40 |
+
ops.apply_rotary(k1, k2, cos, sin, k1, k2, False)
|
| 41 |
+
return q_rotated, k_rotated
|
build/torch212-xpu20253-x86_64-linux/metadata.json
ADDED
|
@@ -0,0 +1,33 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"name": "rotary",
|
| 3 |
+
"id": "_rotary_xpu_fe2bb66",
|
| 4 |
+
"version": 2,
|
| 5 |
+
"kernels-minver": "0.14.0",
|
| 6 |
+
"license": "BSD-3-Clause",
|
| 7 |
+
"python-depends": [],
|
| 8 |
+
"kernel-depends": [],
|
| 9 |
+
"backend": {
|
| 10 |
+
"type": "xpu"
|
| 11 |
+
},
|
| 12 |
+
"digest": {
|
| 13 |
+
"algorithm": "sha256",
|
| 14 |
+
"files": {
|
| 15 |
+
"__init__.py": "qlvCb0Z6KMkcCxgjDRxjD1ofWaJ/Lqx0cTFlqrncWyE=",
|
| 16 |
+
"_ops.py": "Jeq0/zADY+Cq3MnRyzR/8jDpyYANlwKH71wgSME2/vA=",
|
| 17 |
+
"_rotary_xpu_fe2bb66.abi3.so": "Y2CgVTbMAghGWDeEBScIkzcF0i7pWhE9qbMdPBG7eXc=",
|
| 18 |
+
"layers.py": "c8ZzUlsVi1lOGhM67JSViZdKBSbIKItQxmWkXPiTEy4=",
|
| 19 |
+
"symbols.json": "PxgUNQB1dU+NEARgssX8a05dn1+R6dbDC79RXAlVxqw="
|
| 20 |
+
}
|
| 21 |
+
},
|
| 22 |
+
"provenance": {
|
| 23 |
+
"kernel-builder": {
|
| 24 |
+
"version": "0.18.0-dev0",
|
| 25 |
+
"commit": "d054906a13710b811b96697b4635f03020842733",
|
| 26 |
+
"dirty": false
|
| 27 |
+
},
|
| 28 |
+
"kernel": {
|
| 29 |
+
"commit": "fe2bb66fee6c2a77eccf08a0508dc57428d488ed",
|
| 30 |
+
"dirty": false
|
| 31 |
+
}
|
| 32 |
+
}
|
| 33 |
+
}
|
build/torch212-xpu20253-x86_64-linux/metadata.json.sigstore
ADDED
|
@@ -0,0 +1 @@
|
|
|
|
|
|
|
| 1 |
+
{"mediaType":"application/vnd.dev.sigstore.bundle.v0.3+json", "verificationMaterial":{"certificate":{"rawBytes":"MIIHKzCCBrKgAwIBAgIUfb4GV9pfIRJuR6jgNiUWfKD1MG8wCgYIKoZIzj0EAwMwNzEVMBMGA1UEChMMc2lnc3RvcmUuZGV2MR4wHAYDVQQDExVzaWdzdG9yZS1pbnRlcm1lZGlhdGUwHhcNMjYxMDE5MTUwNDUzWhcNMjYxMDE5MTUxNDUzWjAAMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEZiTqsggmdWlhlk8c0XqMIlSP1/khah4zAL2ejn2ay4L+C1Q/BteH8UUK+mXAR1OyX6MpMuJIYwPpTvR3sYwZyKOCBdEwggXNMA4GA1UdDwEB/wQEAwIHgDATBgNVHSUEDDAKBggrBgEFBQcDAzAfBgNVHSMEGDAWgBTf0+nPViQRlvmo2OkoVaLGLhhkPzBrBgNVHREBAf8EYTBfhl1odHRwczovL2dpdGh1Yi5jb20vaHVnZ2luZ2ZhY2Uva2VybmVscy1jb21tdW5pdHkvLmdpdGh1Yi93b3JrZmxvd3MvYnVpbGQueWFtbEByZWZzL2hlYWRzL21haW4wOQYKKwYBBAGDvzABAQQraHR0cHM6Ly90b2tlbi5hY3Rpb25zLmdpdGh1YnVzZXJjb250ZW50LmNvbTAfBgorBgEEAYO/MAECBBF3b3JrZmxvd19kaXNwYXRjaDA2BgorBgEEAYO/MAEDBChmZTJiYjY2ZmVlNmMyYTc3ZWNjZjA4YTA1MDhkYzU3NDI4ZDQ4OGVkMBMGCisGAQQBg78wAQQEBUJ1aWxkMCsGCisGAQQBg78wAQUEHWh1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5MB0GCisGAQQBg78wAQYED3JlZnMvaGVhZHMvbWFpbjA7BgorBgEEAYO/MAEIBC0MK2h0dHBzOi8vdG9rZW4uYWN0aW9ucy5naXRodWJ1c2VyY29udGVudC5jb20wbQYKKwYBBAGDvzABCQRfDF1odHRwczovL2dpdGh1Yi5jb20vaHVnZ2luZ2ZhY2Uva2VybmVscy1jb21tdW5pdHkvLmdpdGh1Yi93b3JrZmxvd3MvYnVpbGQueWFtbEByZWZzL2hlYWRzL21haW4wOAYKKwYBBAGDvzABCgQqDChmZTJiYjY2ZmVlNmMyYTc3ZWNjZjA4YTA1MDhkYzU3NDI4ZDQ4OGVkMBsGCisGAQQBg78wAQsEDQwLc2VsZi1ob3N0ZWQwQAYKKwYBBAGDvzABDAQyDDBodHRwczovL2dpdGh1Yi5jb20vaHVnZ2luZ2ZhY2Uva2VybmVscy1jb21tdW5pdHkwOAYKKwYBBAGDvzABDQQqDChmZTJiYjY2ZmVlNmMyYTc3ZWNjZjA4YTA1MDhkYzU3NDI4ZDQ4OGVkMB8GCisGAQQBg78wAQ4EEQwPcmVmcy9oZWFkcy9tYWluMBoGCisGAQQBg78wAQ8EDAwKMTA3MTQ3NTUyOTAuBgorBgEEAYO/MAEQBCAMHmh0dHBzOi8vZ2l0aHViLmNvbS9odWdnaW5nZmFjZTAYBgorBgEEAYO/MAERBAoMCDI1NzIwNzQzMG0GCisGAQQBg78wARIEXwxdaHR0cHM6Ly9naXRodWIuY29tL2h1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5Ly5naXRodWIvd29ya2Zsb3dzL2J1aWxkLnlhbWxAcmVmcy9oZWFkcy9tYWluMDgGCisGAQQBg78wARMEKgwoZmUyYmI2NmZlZTZjMmE3N2VjY2YwOGEwNTA4ZGM1NzQyOGQ0ODhlZDAhBgorBgEEAYO/MAEUBBMMEXdvcmtmbG93X2Rpc3BhdGNoMGQGCisGAQQBg78wARUEVgxUaHR0cHM6Ly9naXRodWIuY29tL2h1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5L2FjdGlvbnMvcnVucy8zOTIzOTY0ODU2MS9hdHRlbXB0cy8xMBYGCisGAQQBg78wARYECAwGcHVibGljMEYGCisGAQQBg78wARgEOAw2cmVwbzpodWdnaW5nZmFjZS9rZXJuZWxzLWNvbW11bml0eTpyZWY6cmVmcy9oZWFkcy9tYWluMIGKBgorBgEEAdZ5AgQCBHwEegB4AHYA3T0wasbHETJjGR4cmWc3AqJKXrjePK3/h4pygC8p7o4AAAGhVLGvLQAABAMARzBFAiEA6uYAHBLswcxoKeu143AL2MwBuRGiHK0kX8m8ANS5Y+cCIFBVlHU22mfjG2ZESCW8v3v0M/5DMoa8QrulXGTlqYGgMAoGCCqGSM49BAMDA2cAMGQCMF35Lwsfc3FpvWn/VIW0PQBme4mgRja5IT2WyceFEkQA7QW0rKuFC/znmrcbTkpTlgIwUrQz2anGTDF3Os7G/5SvoJ+V4l3c6r5rhtz/YZnoeYCdkvH0A5vYNLIxQCzjt01u"}, "tlogEntries":[{"logIndex":"3322435946", "logId":{"keyId":"wNI9atQGlz+VWfO6LRygH4QUfY/8W4RFwiT5i5WRgB0="}, "kindVersion":{"kind":"hashedrekord", "version":"0.0.1"}, "integratedTime":"1792422293", "inclusionPromise":{"signedEntryTimestamp":"MEUCIQC+v0QckhRBxHd84cyps7faQrZ/OOt9t2JsWe+iK7TDrgIgNdDzlEK/JBAmW1MRDyqr7Vs+KueSoREsXgQ+DR6Lyc4="}, "inclusionProof":{"logIndex":"3200531684", "rootHash":"lhodHrV+FGrJg+ETdnSRT8PwA4kcO+X/o4g+6vtjgRc=", "treeSize":"3200531703", "hashes":["RDzchjqerK33Cx8xxJKS/+1ZW/2+LHdxF08BevpHa4I=", "MhflSW41eiGkG44NR5cFwLgfiLuK/ypE3qAPXPeV63g=", "uHFsnAhPTTG6eZamyahzZwjxIAYUKwPzYlpsufj9Je4=", "ni67G8jFQ5HgtU+CyWjn5EuqOgc0oy0WkA5ZScG2rwU=", "hbakdw6svpljuDYDBAkVpLPq7lOqNThF1fZv/ql2vIA=", "5CMVF4rAfYiwh0IVzt1Z98eGUPpT575sKi2v+igALGI=", "edmNV2+L+Ys6ROLLqSfJCo41PenlEgsI6csroMhNYlI=", "yqzPjB5Fxc/2POIHKEJF0c0jd0iN3OdouGOuJUznlSU=", "Y42fOGMCvK2rnd7jwXTjPD7ptYZOdR3UtrVzGVp0efM=", "0I9MXfCM++a599ZUYW+rol2g09fmRNYS5rKmDNdZGqI=", "kPs/NJfJB3GOjEAa3rCM+19o4Lii1xBD4t4fO1Ccj5c=", "he9CYbukrPRH8TJtLX4O5uamOGODItWglfqW/ZFrOsg=", "+uGmdFlSXHU/F2/EH9t0YPf1KfLVa0s8IOgjHO79Z0Q=", "7WFpoaiQCzLwM3o2YI5Ngo8J7JD0OfyCCQtmXhWxVes=", "nyQV/+cWQUG5Hb2PKjQQNkQIJmz2qzAZKBQlkHGIknM=", "G+nk7mgE5h6dUmv2UY7NDJrY3WvrZY31raaO1AETt+o=", "qlTWNDzERnTBQVcHHXXVPjiUP0SsikGxfcxVlgqVFDo=", "gg9GNApNke3+zNhl4tsWtmIycCFrOMCB3lys6XuSQNQ=", "NlOclldmKPA1tMKIskqHAwuQDYHp31YwpK+OOMrMccc=", "qxzHanAzz57SDdmJe0B7bJK72NTIBbwEMGBBKvDOROw=", "xH/DCseLHr9eKoYT8qsORZK7zVdEGYWHuVtsVrD95wY="], "checkpoint":{"envelope":"rekor.sigstore.dev - 1193050959916656506\n3200531703\nlhodHrV+FGrJg+ETdnSRT8PwA4kcO+X/o4g+6vtjgRc=\n\n— rekor.sigstore.dev wNI9ajBEAiAWzYD08wTKJTKSArDFjMbka4/QMJDpCh+GXtsBSykZ/wIgMRyDHNsCbaw+1TYI5fqHMqR+EJWMQU4K5Xe+9zkXVlc=\n"}}, "canonicalizedBody":"eyJhcGlWZXJzaW9uIjoiMC4wLjEiLCJraW5kIjoiaGFzaGVkcmVrb3JkIiwic3BlYyI6eyJkYXRhIjp7Imhhc2giOnsiYWxnb3JpdGhtIjoic2hhMjU2IiwidmFsdWUiOiI2ZjM5YTE2NWQzNTFiNjM1N2MwNjBhODcyODBiYTNiNDNmZWFjMTZlMzRiNjNlODAzMmJmMmYwZjE3MWE1Mjk0In19LCJzaWduYXR1cmUiOnsiY29udGVudCI6Ik1FWUNJUUR2Wlp2NjViR0lCWGNjNFdqTmpCMFdBZkdEM1BYMXJBT3M4bUQ2ZkxtL09BSWhBSWRpOVBGWEVOZXlmSjZMeGxJQnVsLzE0bHhGc3RvNW0yNEd2MXIxbzRULyIsInB1YmxpY0tleSI6eyJjb250ZW50IjoiTFMwdExTMUNSVWRKVGlCRFJWSlVTVVpKUTBGVVJTMHRMUzB0Q2sxSlNVaExla05EUW5KTFowRjNTVUpCWjBsVlptSTBSMVk1Y0daSlVrcDFValpxWjA1cFZWZG1TMFF4VFVjNGQwTm5XVWxMYjFwSmVtb3dSVUYzVFhjS1RucEZWazFDVFVkQk1WVkZRMmhOVFdNeWJHNWpNMUoyWTIxVmRWcEhWakpOVWpSM1NFRlpSRlpSVVVSRmVGWjZZVmRrZW1SSE9YbGFVekZ3WW01U2JBcGpiVEZzV2tkc2FHUkhWWGRJYUdOT1RXcFplRTFFUlRWTlZGVjNUa1JWZWxkb1kwNU5hbGw0VFVSRk5VMVVWWGhPUkZWNlYycEJRVTFHYTNkRmQxbElDa3R2V2tsNmFqQkRRVkZaU1V0dldrbDZhakJFUVZGalJGRm5RVVZhYVZSeGMyZG5iV1JYYkdoc2F6aGpNRmh4VFVsc1UxQXhMMnRvWVdnMGVrRk1NbVVLYW00eVlYazBUQ3RETVZFdlFuUmxTRGhWVlVzcmJWaEJVakZQZVZnMlRYQk5kVXBKV1hkUWNGUjJVak56V1hkYWVVdFBRMEprUlhkbloxaE9UVUUwUndwQk1WVmtSSGRGUWk5M1VVVkJkMGxJWjBSQlZFSm5UbFpJVTFWRlJFUkJTMEpuWjNKQ1owVkdRbEZqUkVGNlFXWkNaMDVXU0ZOTlJVZEVRVmRuUWxSbUNqQXJibEJXYVZGU2JIWnRiekpQYTI5V1lVeEhUR2hvYTFCNlFuSkNaMDVXU0ZKRlFrRm1PRVZaVkVKbWFHd3hiMlJJVW5kamVtOTJUREprY0dSSGFERUtXV2sxYW1JeU1IWmhTRlp1V2pKc2RWb3lXbWhaTWxWMllUSldlV0p0Vm5OamVURnFZakl4ZEdSWE5YQmtTR3QyVEcxa2NHUkhhREZaYVRrellqTktjZ3BhYlhoMlpETk5kbGx1Vm5CaVIxRjFaVmRHZEdKRlFubGFWMXA2VERKb2JGbFhVbnBNTWpGb1lWYzBkMDlSV1V0TGQxbENRa0ZIUkhaNlFVSkJVVkZ5Q21GSVVqQmpTRTAyVEhrNU1HSXlkR3hpYVRWb1dUTlNjR0l5TlhwTWJXUndaRWRvTVZsdVZucGFXRXBxWWpJMU1GcFhOVEJNYlU1MllsUkJaa0puYjNJS1FtZEZSVUZaVHk5TlFVVkRRa0pHTTJJelNuSmFiWGgyWkRFNWEyRllUbmRaV0ZKcVlVUkJNa0puYjNKQ1owVkZRVmxQTDAxQlJVUkNRMmh0V2xSS2FRcFphbGt5V20xV2JFNXRUWGxaVkdNeldsZE9hbHBxUVRSWlZFRXhUVVJvYTFsNlZUTk9SRWswV2tSUk5FOUhWbXROUWsxSFEybHpSMEZSVVVKbk56aDNDa0ZSVVVWQ1ZVb3hZVmQ0YTAxRGMwZERhWE5IUVZGUlFtYzNPSGRCVVZWRlNGZG9NVm95WkhCaWJXUnRXVmRPYkV3eWRHeGpiVFZzWWtoTmRGa3lPWFFLWWxoV2RXRllValZOUWpCSFEybHpSMEZSVVVKbk56aDNRVkZaUlVRelNteGFiazEyWVVkV2FGcElUWFppVjBad1ltcEJOMEpuYjNKQ1owVkZRVmxQTHdwTlFVVkpRa013VFVzeWFEQmtTRUo2VDJrNGRtUkhPWEphVnpSMVdWZE9NR0ZYT1hWamVUVnVZVmhTYjJSWFNqRmpNbFo1V1RJNWRXUkhWblZrUXpWcUNtSXlNSGRpVVZsTFMzZFpRa0pCUjBSMmVrRkNRMUZTWmtSR01XOWtTRkozWTNwdmRrd3laSEJrUjJneFdXazFhbUl5TUhaaFNGWnVXakpzZFZveVdtZ0tXVEpWZG1FeVZubGliVlp6WTNreGFtSXlNWFJrVnpWd1pFaHJka3h0WkhCa1IyZ3hXV2s1TTJJelNuSmFiWGgyWkROTmRsbHVWbkJpUjFGMVpWZEdkQXBpUlVKNVdsZGFla3d5YUd4WlYxSjZUREl4YUdGWE5IZFBRVmxMUzNkWlFrSkJSMFIyZWtGQ1EyZFJjVVJEYUcxYVZFcHBXV3BaTWxwdFZteE9iVTE1Q2xsVVl6TmFWMDVxV21wQk5GbFVRVEZOUkdocldYcFZNMDVFU1RSYVJGRTBUMGRXYTAxQ2MwZERhWE5IUVZGUlFtYzNPSGRCVVhORlJGRjNUR015Vm5NS1dta3hiMkl6VGpCYVYxRjNVVUZaUzB0M1dVSkNRVWRFZG5wQlFrUkJVWGxFUkVKdlpFaFNkMk42YjNaTU1tUndaRWRvTVZscE5XcGlNakIyWVVoV2JncGFNbXgxV2pKYWFGa3lWWFpoTWxaNVltMVdjMk41TVdwaU1qRjBaRmMxY0dSSWEzZFBRVmxMUzNkWlFrSkJSMFIyZWtGQ1JGRlJjVVJEYUcxYVZFcHBDbGxxV1RKYWJWWnNUbTFOZVZsVVl6TmFWMDVxV21wQk5GbFVRVEZOUkdocldYcFZNMDVFU1RSYVJGRTBUMGRXYTAxQ09FZERhWE5IUVZGUlFtYzNPSGNLUVZFMFJVVlJkMUJqYlZadFkzazViMXBYUm10amVUbDBXVmRzZFUxQ2IwZERhWE5IUVZGUlFtYzNPSGRCVVRoRlJFRjNTMDFVUVROTlZGRXpUbFJWZVFwUFZFRjFRbWR2Y2tKblJVVkJXVTh2VFVGRlVVSkRRVTFJYldnd1pFaENlazlwT0haYU1td3dZVWhXYVV4dFRuWmlVemx2WkZka2JtRlhOVzVhYlVacUNscFVRVmxDWjI5eVFtZEZSVUZaVHk5TlFVVlNRa0Z2VFVORVNURk9la2wzVG5wUmVrMUhNRWREYVhOSFFWRlJRbWMzT0hkQlVrbEZXSGQ0WkdGSVVqQUtZMGhOTmt4NU9XNWhXRkp2WkZkSmRWa3lPWFJNTW1neFdqSmtjR0p0WkcxWlYwNXNUREowYkdOdE5XeGlTRTEwV1RJNWRHSllWblZoV0ZJMVRIazFiZ3BoV0ZKdlpGZEpkbVF5T1hsaE1scHpZak5rZWt3eVNqRmhWM2hyVEc1c2FHSlhlRUZqYlZadFkzazViMXBYUm10amVUbDBXVmRzZFUxRVowZERhWE5IQ2tGUlVVSm5OemgzUVZKTlJVdG5kMjlhYlZWNVdXMUpNazV0V214YVZGcHFUVzFGTTA0eVZtcFpNbGwzVDBkRmQwNVVRVFJhUjAweFRucFJlVTlIVVRBS1QwUm9iRnBFUVdoQ1oyOXlRbWRGUlVGWlR5OU5RVVZWUWtKTlRVVllaSFpqYlhSdFlrYzVNMWd5VW5Cak0wSm9aRWRPYjAxSFVVZERhWE5IUVZGUlFncG5OemgzUVZKVlJWWm5lRlZoU0ZJd1kwaE5Oa3g1T1c1aFdGSnZaRmRKZFZreU9YUk1NbWd4V2pKa2NHSnRaRzFaVjA1c1RESjBiR050Tld4aVNFMTBDbGt5T1hSaVdGWjFZVmhTTlV3eVJtcGtSMngyWW01TmRtTnVWblZqZVRoNlQxUkplazlVV1RCUFJGVXlUVk01YUdSSVVteGlXRUl3WTNrNGVFMUNXVWNLUTJselIwRlJVVUpuTnpoM1FWSlpSVU5CZDBkalNGWnBZa2RzYWsxRldVZERhWE5IUVZGUlFtYzNPSGRCVW1kRlQwRjNNbU50Vm5kaWVuQnZaRmRrYmdwaFZ6VnVXbTFHYWxwVE9YSmFXRXAxV2xkNGVreFhUblppVnpFeFltMXNNR1ZVY0hsYVYxazJZMjFXYldONU9XOWFWMFpyWTNrNWRGbFhiSFZOU1VkTENrSm5iM0pDWjBWRlFXUmFOVUZuVVVOQ1NIZEZaV2RDTkVGSVdVRXpWREIzWVhOaVNFVlVTbXBIVWpSamJWZGpNMEZ4U2t0WWNtcGxVRXN6TDJnMGNIa0taME00Y0Rkdk5FRkJRVWRvVmt4SGRreFJRVUZDUVUxQlVucENSa0ZwUlVFMmRWbEJTRUpNYzNkamVHOUxaWFV4TkROQlRESk5kMEoxVWtkcFNFc3dhd3BZT0cwNFFVNVROVmtyWTBOSlJrSldiRWhWTWpKdFptcEhNbHBGVTBOWE9IWXpkakJOTHpWRVRXOWhPRkZ5ZFd4WVIxUnNjVmxIWjAxQmIwZERRM0ZIQ2xOTk5EbENRVTFFUVRKalFVMUhVVU5OUmpNMVRIZHpabU16Um5CMlYyNHZWa2xYTUZCUlFtMWxORzFuVW1waE5VbFVNbGQ1WTJWR1JXdFJRVGRSVnpBS2NrdDFSa012ZW01dGNtTmlWR3R3Vkd4blNYZFZjbEY2TW1GdVIxUkVSak5QY3pkSEx6VlRkbTlLSzFZMGJETmpObkkxY21oMGVpOVpXbTV2WlZsRFpBcHJka2d3UVRWMldVNU1TWGhSUTNwcWREQXhkUW90TFMwdExVVk9SQ0JEUlZKVVNVWkpRMEZVUlMwdExTMHRDZz09In19fX0="}], "timestampVerificationData":{"rfc3161Timestamps":[{"signedTimestamp":"MIICyzADAgEAMIICwgYJKoZIhvcNAQcCoIICszCCAq8CAQMxDTALBglghkgBZQMEAgEwgbgGCyqGSIb3DQEJEAEEoIGoBIGlMIGiAgEBBgkrBgEEAYO/MAIwMTANBglghkgBZQMEAgEFAAQg+UK+y7zffUyBD6ZX+kmy3QH+FvpZT41Xbe19tsIXVXwCFQDGw4ne+a7V/3ZNIsP3cG88Q1wvTxgPMjAyNjEwMTkxNTA0NTNaMAMCAQGgMqQwMC4xFTATBgNVBAoTDHNpZ3N0b3JlLmRldjEVMBMGA1UEAxMMc2lnc3RvcmUtdHNhoAAxggHcMIIB2AIBATBRMDkxFTATBgNVBAoTDHNpZ3N0b3JlLmRldjEgMB4GA1UEAxMXc2lnc3RvcmUtdHNhLXNlbGZzaWduZWQCFDoTVC8MkGHuvMFDL8uKjosqI4sMMAsGCWCGSAFlAwQCAaCB/DAaBgkqhkiG9w0BCQMxDQYLKoZIhvcNAQkQAQQwHAYJKoZIhvcNAQkFMQ8XDTI2MTAxOTE1MDQ1M1owLwYJKoZIhvcNAQkEMSIEIO5Dyrzc1mweoCf4HWfNFU95VFFIJVuirXccmYVLgMu3MIGOBgsqhkiG9w0BCRACLzF/MH0wezB5BCCF+Se8B6tiysO0Q1bBDvyBssaIP9p6uebYcNnROs0FtzBVMD2kOzA5MRUwEwYDVQQKEwxzaWdzdG9yZS5kZXYxIDAeBgNVBAMTF3NpZ3N0b3JlLXRzYS1zZWxmc2lnbmVkAhQ6E1QvDJBh7rzBQy/Lio6LKiOLDDAKBggqhkjOPQQDAgRoMGYCMQCYjH6Y2MFF5M5PPHPHnZuQM67RVGroryZtp2BfMR4B3zyxcUSamXkbKMnCohx1o20CMQD0BU6Q+fscfeSTErqTFLV34dduJGiQf2NYgBw7lzPO/UML2XdAmfJ22J+xvKjNRfE="}]}}, "messageSignature":{"messageDigest":{"algorithm":"SHA2_256", "digest":"bzmhZdNRtjV8BgqHKAujtD/qwW40tj6AMr8vDxcaUpQ="}, "signature":"MEYCIQDvZZv65bGIBXcc4WjNjB0WAfGD3PX1rAOs8mD6fLm/OAIhAIdi9PFXENeyfJ6LxlIBul/14lxFsto5m24Gv1r1o4T/"}}
|
build/torch212-xpu20253-x86_64-linux/symbols.json
ADDED
|
@@ -0,0 +1,103 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"schema_version": 1,
|
| 3 |
+
"module": "_rotary_xpu_fe2bb66",
|
| 4 |
+
"functions": [
|
| 5 |
+
{
|
| 6 |
+
"name": "apply_rotary",
|
| 7 |
+
"qualname": "apply_rotary",
|
| 8 |
+
"module": "_rotary_xpu_fe2bb66",
|
| 9 |
+
"kind": "function",
|
| 10 |
+
"doc": null,
|
| 11 |
+
"signature": {
|
| 12 |
+
"parameters": [
|
| 13 |
+
{
|
| 14 |
+
"name": "x1",
|
| 15 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 16 |
+
"default": null,
|
| 17 |
+
"annotation": "torch.Tensor"
|
| 18 |
+
},
|
| 19 |
+
{
|
| 20 |
+
"name": "x2",
|
| 21 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 22 |
+
"default": null,
|
| 23 |
+
"annotation": "torch.Tensor"
|
| 24 |
+
},
|
| 25 |
+
{
|
| 26 |
+
"name": "cos",
|
| 27 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 28 |
+
"default": null,
|
| 29 |
+
"annotation": "torch.Tensor"
|
| 30 |
+
},
|
| 31 |
+
{
|
| 32 |
+
"name": "sin",
|
| 33 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 34 |
+
"default": null,
|
| 35 |
+
"annotation": "torch.Tensor"
|
| 36 |
+
},
|
| 37 |
+
{
|
| 38 |
+
"name": "out1",
|
| 39 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 40 |
+
"default": null,
|
| 41 |
+
"annotation": "torch.Tensor"
|
| 42 |
+
},
|
| 43 |
+
{
|
| 44 |
+
"name": "out2",
|
| 45 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 46 |
+
"default": null,
|
| 47 |
+
"annotation": "torch.Tensor"
|
| 48 |
+
},
|
| 49 |
+
{
|
| 50 |
+
"name": "conj",
|
| 51 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 52 |
+
"default": null,
|
| 53 |
+
"annotation": "bool"
|
| 54 |
+
}
|
| 55 |
+
],
|
| 56 |
+
"return_annotation": "None"
|
| 57 |
+
}
|
| 58 |
+
},
|
| 59 |
+
{
|
| 60 |
+
"name": "apply_rotary_transformers",
|
| 61 |
+
"qualname": "apply_rotary_transformers",
|
| 62 |
+
"module": "_rotary_xpu_fe2bb66",
|
| 63 |
+
"kind": "function",
|
| 64 |
+
"doc": "Rotary kernel implementation wrapper\nAdapts rotary kernel implementation to match transformers apply_rotary_pos_emb signature",
|
| 65 |
+
"signature": {
|
| 66 |
+
"parameters": [
|
| 67 |
+
{
|
| 68 |
+
"name": "q",
|
| 69 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 70 |
+
"default": null,
|
| 71 |
+
"annotation": "torch.Tensor"
|
| 72 |
+
},
|
| 73 |
+
{
|
| 74 |
+
"name": "k",
|
| 75 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 76 |
+
"default": null,
|
| 77 |
+
"annotation": "torch.Tensor"
|
| 78 |
+
},
|
| 79 |
+
{
|
| 80 |
+
"name": "cos",
|
| 81 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 82 |
+
"default": null,
|
| 83 |
+
"annotation": "torch.Tensor"
|
| 84 |
+
},
|
| 85 |
+
{
|
| 86 |
+
"name": "sin",
|
| 87 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 88 |
+
"default": null,
|
| 89 |
+
"annotation": "torch.Tensor"
|
| 90 |
+
},
|
| 91 |
+
{
|
| 92 |
+
"name": "unsqueeze_dim",
|
| 93 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 94 |
+
"default": "1",
|
| 95 |
+
"annotation": "int"
|
| 96 |
+
}
|
| 97 |
+
],
|
| 98 |
+
"return_annotation": "tuple[torch.Tensor, torch.Tensor]"
|
| 99 |
+
}
|
| 100 |
+
}
|
| 101 |
+
],
|
| 102 |
+
"layers": []
|
| 103 |
+
}
|
build/torch213-xpu20260-x86_64-linux/__init__.py
ADDED
|
@@ -0,0 +1,57 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import torch
|
| 2 |
+
|
| 3 |
+
from . import layers
|
| 4 |
+
from ._ops import ops
|
| 5 |
+
|
| 6 |
+
|
| 7 |
+
def apply_rotary(
|
| 8 |
+
x1: torch.Tensor,
|
| 9 |
+
x2: torch.Tensor,
|
| 10 |
+
cos: torch.Tensor,
|
| 11 |
+
sin: torch.Tensor,
|
| 12 |
+
out1: torch.Tensor,
|
| 13 |
+
out2: torch.Tensor,
|
| 14 |
+
conj: bool,
|
| 15 |
+
) -> None:
|
| 16 |
+
ops.apply_rotary(x1, x2, cos, sin, out1, out2, conj)
|
| 17 |
+
|
| 18 |
+
|
| 19 |
+
def apply_rotary_transformers(
|
| 20 |
+
q: torch.Tensor,
|
| 21 |
+
k: torch.Tensor,
|
| 22 |
+
cos: torch.Tensor,
|
| 23 |
+
sin: torch.Tensor,
|
| 24 |
+
unsqueeze_dim: int = 1,
|
| 25 |
+
) -> tuple[torch.Tensor, torch.Tensor]:
|
| 26 |
+
"""
|
| 27 |
+
Rotary kernel implementation wrapper
|
| 28 |
+
Adapts rotary kernel implementation to match transformers apply_rotary_pos_emb signature
|
| 29 |
+
"""
|
| 30 |
+
cos = cos.unsqueeze(unsqueeze_dim)
|
| 31 |
+
sin = sin.unsqueeze(unsqueeze_dim)
|
| 32 |
+
|
| 33 |
+
q_rotated = q.clone()
|
| 34 |
+
k_rotated = k.clone()
|
| 35 |
+
|
| 36 |
+
# Get half dimension for rotation
|
| 37 |
+
half_dim = q.shape[-1] // 2
|
| 38 |
+
q1 = q_rotated[..., :half_dim]
|
| 39 |
+
q2 = q_rotated[..., half_dim:]
|
| 40 |
+
k1 = k_rotated[..., :half_dim]
|
| 41 |
+
k2 = k_rotated[..., half_dim:]
|
| 42 |
+
if cos.shape[-1] != half_dim:
|
| 43 |
+
# Trim cos/sin to match half_dim
|
| 44 |
+
cos = cos[..., :half_dim]
|
| 45 |
+
sin = sin[..., :half_dim]
|
| 46 |
+
|
| 47 |
+
apply_rotary(q1, q2, cos, sin, q1, q2, False)
|
| 48 |
+
apply_rotary(k1, k2, cos, sin, k1, k2, False)
|
| 49 |
+
return q_rotated, k_rotated
|
| 50 |
+
|
| 51 |
+
|
| 52 |
+
# Add torch compile support for functions
|
| 53 |
+
apply_rotary_transformers.can_torch_compile = True
|
| 54 |
+
|
| 55 |
+
|
| 56 |
+
# Keeping `apply_rotary` and `apply_rotary_transformers` for BC
|
| 57 |
+
__all__ = ["apply_rotary", "apply_rotary_transformers", "layers"]
|
build/torch213-xpu20260-x86_64-linux/_ops.py
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import torch
|
| 2 |
+
from . import _rotary_xpu_fe2bb66
|
| 3 |
+
ops = torch.ops._rotary_xpu_fe2bb66
|
| 4 |
+
|
| 5 |
+
def add_op_namespace_prefix(op_name: str):
|
| 6 |
+
"""
|
| 7 |
+
Prefix op by namespace.
|
| 8 |
+
"""
|
| 9 |
+
return f"_rotary_xpu_fe2bb66::{op_name}"
|
build/torch213-xpu20260-x86_64-linux/_rotary_xpu_fe2bb66.abi3.so
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:43ea5990a0610abd90cbf844b3518baf84aff965f267dca4951edca5c93c0f8b
|
| 3 |
+
size 399736
|
build/torch213-xpu20260-x86_64-linux/layers.py
ADDED
|
@@ -0,0 +1,41 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import torch
|
| 2 |
+
import torch.nn as nn
|
| 3 |
+
|
| 4 |
+
from ._ops import ops
|
| 5 |
+
|
| 6 |
+
|
| 7 |
+
class apply_rotary_transformers(nn.Module):
|
| 8 |
+
can_torch_compile = True
|
| 9 |
+
|
| 10 |
+
def forward(
|
| 11 |
+
self,
|
| 12 |
+
q: torch.Tensor,
|
| 13 |
+
k: torch.Tensor,
|
| 14 |
+
cos: torch.Tensor,
|
| 15 |
+
sin: torch.Tensor,
|
| 16 |
+
unsqueeze_dim: int = 1,
|
| 17 |
+
) -> tuple[torch.Tensor, torch.Tensor]:
|
| 18 |
+
"""
|
| 19 |
+
Rotary kernel implementation wrapper
|
| 20 |
+
Adapts rotary kernel implementation to match transformers apply_rotary_pos_emb signature
|
| 21 |
+
"""
|
| 22 |
+
cos = cos.unsqueeze(unsqueeze_dim)
|
| 23 |
+
sin = sin.unsqueeze(unsqueeze_dim)
|
| 24 |
+
|
| 25 |
+
q_rotated = q.clone()
|
| 26 |
+
k_rotated = k.clone()
|
| 27 |
+
|
| 28 |
+
# Get half dimension for rotation
|
| 29 |
+
half_dim = q.shape[-1] // 2
|
| 30 |
+
q1 = q_rotated[..., :half_dim]
|
| 31 |
+
q2 = q_rotated[..., half_dim:]
|
| 32 |
+
k1 = k_rotated[..., :half_dim]
|
| 33 |
+
k2 = k_rotated[..., half_dim:]
|
| 34 |
+
if cos.shape[-1] != half_dim:
|
| 35 |
+
# Trim cos/sin to match half_dim
|
| 36 |
+
cos = cos[..., :half_dim]
|
| 37 |
+
sin = sin[..., :half_dim]
|
| 38 |
+
|
| 39 |
+
ops.apply_rotary(q1, q2, cos, sin, q1, q2, False)
|
| 40 |
+
ops.apply_rotary(k1, k2, cos, sin, k1, k2, False)
|
| 41 |
+
return q_rotated, k_rotated
|
build/torch213-xpu20260-x86_64-linux/metadata.json
ADDED
|
@@ -0,0 +1,33 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"name": "rotary",
|
| 3 |
+
"id": "_rotary_xpu_fe2bb66",
|
| 4 |
+
"version": 2,
|
| 5 |
+
"kernels-minver": "0.14.0",
|
| 6 |
+
"license": "BSD-3-Clause",
|
| 7 |
+
"python-depends": [],
|
| 8 |
+
"kernel-depends": [],
|
| 9 |
+
"backend": {
|
| 10 |
+
"type": "xpu"
|
| 11 |
+
},
|
| 12 |
+
"digest": {
|
| 13 |
+
"algorithm": "sha256",
|
| 14 |
+
"files": {
|
| 15 |
+
"__init__.py": "qlvCb0Z6KMkcCxgjDRxjD1ofWaJ/Lqx0cTFlqrncWyE=",
|
| 16 |
+
"_ops.py": "Jeq0/zADY+Cq3MnRyzR/8jDpyYANlwKH71wgSME2/vA=",
|
| 17 |
+
"_rotary_xpu_fe2bb66.abi3.so": "Q+pZkKBhCr2Qy/hEs1GLr4Sv+WXyZ9yklR7cpck8D4s=",
|
| 18 |
+
"layers.py": "c8ZzUlsVi1lOGhM67JSViZdKBSbIKItQxmWkXPiTEy4=",
|
| 19 |
+
"symbols.json": "PxgUNQB1dU+NEARgssX8a05dn1+R6dbDC79RXAlVxqw="
|
| 20 |
+
}
|
| 21 |
+
},
|
| 22 |
+
"provenance": {
|
| 23 |
+
"kernel-builder": {
|
| 24 |
+
"version": "0.18.0-dev0",
|
| 25 |
+
"commit": "d054906a13710b811b96697b4635f03020842733",
|
| 26 |
+
"dirty": false
|
| 27 |
+
},
|
| 28 |
+
"kernel": {
|
| 29 |
+
"commit": "fe2bb66fee6c2a77eccf08a0508dc57428d488ed",
|
| 30 |
+
"dirty": false
|
| 31 |
+
}
|
| 32 |
+
}
|
| 33 |
+
}
|
build/torch213-xpu20260-x86_64-linux/metadata.json.sigstore
ADDED
|
@@ -0,0 +1 @@
|
|
|
|
|
|
|
| 1 |
+
{"mediaType":"application/vnd.dev.sigstore.bundle.v0.3+json", "verificationMaterial":{"certificate":{"rawBytes":"MIIHKjCCBrGgAwIBAgIUOZ6V+9M7oTrKIxauRhAr8QPBggQwCgYIKoZIzj0EAwMwNzEVMBMGA1UEChMMc2lnc3RvcmUuZGV2MR4wHAYDVQQDExVzaWdzdG9yZS1pbnRlcm1lZGlhdGUwHhcNMjYxMDE5MTUwNDU3WhcNMjYxMDE5MTUxNDU3WjAAMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEm2u4RuKDvaCVYvqORJ0DBFfYLwXDn8oXrOUrDU9kwXTqgiAze55N2gLGmfu+3cOWL5AOcsez+lxvw7bUUvDlMqOCBdAwggXMMA4GA1UdDwEB/wQEAwIHgDATBgNVHSUEDDAKBggrBgEFBQcDAzAfBgNVHSMEGDAWgBTf0+nPViQRlvmo2OkoVaLGLhhkPzBrBgNVHREBAf8EYTBfhl1odHRwczovL2dpdGh1Yi5jb20vaHVnZ2luZ2ZhY2Uva2VybmVscy1jb21tdW5pdHkvLmdpdGh1Yi93b3JrZmxvd3MvYnVpbGQueWFtbEByZWZzL2hlYWRzL21haW4wOQYKKwYBBAGDvzABAQQraHR0cHM6Ly90b2tlbi5hY3Rpb25zLmdpdGh1YnVzZXJjb250ZW50LmNvbTAfBgorBgEEAYO/MAECBBF3b3JrZmxvd19kaXNwYXRjaDA2BgorBgEEAYO/MAEDBChmZTJiYjY2ZmVlNmMyYTc3ZWNjZjA4YTA1MDhkYzU3NDI4ZDQ4OGVkMBMGCisGAQQBg78wAQQEBUJ1aWxkMCsGCisGAQQBg78wAQUEHWh1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5MB0GCisGAQQBg78wAQYED3JlZnMvaGVhZHMvbWFpbjA7BgorBgEEAYO/MAEIBC0MK2h0dHBzOi8vdG9rZW4uYWN0aW9ucy5naXRodWJ1c2VyY29udGVudC5jb20wbQYKKwYBBAGDvzABCQRfDF1odHRwczovL2dpdGh1Yi5jb20vaHVnZ2luZ2ZhY2Uva2VybmVscy1jb21tdW5pdHkvLmdpdGh1Yi93b3JrZmxvd3MvYnVpbGQueWFtbEByZWZzL2hlYWRzL21haW4wOAYKKwYBBAGDvzABCgQqDChmZTJiYjY2ZmVlNmMyYTc3ZWNjZjA4YTA1MDhkYzU3NDI4ZDQ4OGVkMBsGCisGAQQBg78wAQsEDQwLc2VsZi1ob3N0ZWQwQAYKKwYBBAGDvzABDAQyDDBodHRwczovL2dpdGh1Yi5jb20vaHVnZ2luZ2ZhY2Uva2VybmVscy1jb21tdW5pdHkwOAYKKwYBBAGDvzABDQQqDChmZTJiYjY2ZmVlNmMyYTc3ZWNjZjA4YTA1MDhkYzU3NDI4ZDQ4OGVkMB8GCisGAQQBg78wAQ4EEQwPcmVmcy9oZWFkcy9tYWluMBoGCisGAQQBg78wAQ8EDAwKMTA3MTQ3NTUyOTAuBgorBgEEAYO/MAEQBCAMHmh0dHBzOi8vZ2l0aHViLmNvbS9odWdnaW5nZmFjZTAYBgorBgEEAYO/MAERBAoMCDI1NzIwNzQzMG0GCisGAQQBg78wARIEXwxdaHR0cHM6Ly9naXRodWIuY29tL2h1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5Ly5naXRodWIvd29ya2Zsb3dzL2J1aWxkLnlhbWxAcmVmcy9oZWFkcy9tYWluMDgGCisGAQQBg78wARMEKgwoZmUyYmI2NmZlZTZjMmE3N2VjY2YwOGEwNTA4ZGM1NzQyOGQ0ODhlZDAhBgorBgEEAYO/MAEUBBMMEXdvcmtmbG93X2Rpc3BhdGNoMGQGCisGAQQBg78wARUEVgxUaHR0cHM6Ly9naXRodWIuY29tL2h1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5L2FjdGlvbnMvcnVucy8zOTIzOTY0ODU2MS9hdHRlbXB0cy8xMBYGCisGAQQBg78wARYECAwGcHVibGljMEYGCisGAQQBg78wARgEOAw2cmVwbzpodWdnaW5nZmFjZS9rZXJuZWxzLWNvbW11bml0eTpyZWY6cmVmcy9oZWFkcy9tYWluMIGJBgorBgEEAdZ5AgQCBHsEeQB3AHUA3T0wasbHETJjGR4cmWc3AqJKXrjePK3/h4pygC8p7o4AAAGhVLHBWAAABAMARjBEAiB8g6k20eyJbEZDOxc94dgITmaLFJe+G/ScUIiEXBxmaAIgQWLO/kIJOpwO4a+4RWXjI+Uz0Rx45tqOTrK8Pn0qt1owCgYIKoZIzj0EAwMDZwAwZAIwFvDKmveV7fRc0kDZemTNeE/RXEa7On5XcjUyIjdGeLT/K1X4Q6uYcQylVV5DKtK9AjAnUyv+F/4zb5vhyzBrYvrC97SNFvT8bwki9LdDRN5T3ynWLUfgq2WirNjSFZ4yjXE="}, "tlogEntries":[{"logIndex":"3322436770", "logId":{"keyId":"wNI9atQGlz+VWfO6LRygH4QUfY/8W4RFwiT5i5WRgB0="}, "kindVersion":{"kind":"hashedrekord", "version":"0.0.1"}, "integratedTime":"1792422298", "inclusionPromise":{"signedEntryTimestamp":"MEQCIFnwyI6z6WLEBJ3DbeVYel2UM2SMFdxsPhIpdVxvpWQ4AiB/MhYLhQbEE+n9zPkpRi9gjBG6Nq6Ko/YOyyk5tHxhhg=="}, "inclusionProof":{"logIndex":"3200532508", "rootHash":"Q1TvmpRrduMXX3+yOMoqFY6LvfXtQaxPdgMzmf0k9c4=", "treeSize":"3200532755", "hashes":["XJsj0DdIuce7tIYvTCGynJMMOez4MwrrgasiNhL+F/g=", "NajruQlEzVLL9ekPjHyDTZ18G3WEFiCOCaGTqQFZqSQ=", "EqIjLmEqmdlNQg48xmekhbujNmK1LG5jCWL0d2EoUKw=", "x5wXCJGrvrN9cZOhmcmqIs9uHfPfNCq1eOE8btC6DHw=", "Cte0zb1bo/DGeS7BI6kbuJv2UaH8TDoeRqFm+x/bTh8=", "W6jcAPeH/UXo9dF+27q8OWJufMSHkHEoEqFb6CZnX9A=", "+XIkV7ss+5iV6tO2OU33Mro2QAgZY4edx3Q+5VMALuA=", "tFJgv7xUtfiREPjOGrns3ITzhbFtslS2/UVfF2iRVm4=", "URZ5qxBb13E2eAZCxSGhEGfX2+vAnwoe1gfMnoe+n/s=", "LARyKX6B/3uPp0D3YKuXCbUI7EN2SaNn/N2qktNFNsA=", "+uGmdFlSXHU/F2/EH9t0YPf1KfLVa0s8IOgjHO79Z0Q=", "7WFpoaiQCzLwM3o2YI5Ngo8J7JD0OfyCCQtmXhWxVes=", "nyQV/+cWQUG5Hb2PKjQQNkQIJmz2qzAZKBQlkHGIknM=", "G+nk7mgE5h6dUmv2UY7NDJrY3WvrZY31raaO1AETt+o=", "qlTWNDzERnTBQVcHHXXVPjiUP0SsikGxfcxVlgqVFDo=", "gg9GNApNke3+zNhl4tsWtmIycCFrOMCB3lys6XuSQNQ=", "NlOclldmKPA1tMKIskqHAwuQDYHp31YwpK+OOMrMccc=", "qxzHanAzz57SDdmJe0B7bJK72NTIBbwEMGBBKvDOROw=", "xH/DCseLHr9eKoYT8qsORZK7zVdEGYWHuVtsVrD95wY="], "checkpoint":{"envelope":"rekor.sigstore.dev - 1193050959916656506\n3200532755\nQ1TvmpRrduMXX3+yOMoqFY6LvfXtQaxPdgMzmf0k9c4=\n\n— rekor.sigstore.dev wNI9ajBFAiEApXgckYZygWGjHpB3MtJV2p6z+05YsxNNPpLrhhE2lakCIBlvEwgKhhC+Z9B7veRmGeA/nA3GL/IfLwvQUeu/SCbt\n"}}, "canonicalizedBody":"eyJhcGlWZXJzaW9uIjoiMC4wLjEiLCJraW5kIjoiaGFzaGVkcmVrb3JkIiwic3BlYyI6eyJkYXRhIjp7Imhhc2giOnsiYWxnb3JpdGhtIjoic2hhMjU2IiwidmFsdWUiOiJjNmVjYmYxNzk2NTNiM2U1YTg5ZTFiNDBkMTU2ZDJlMTRkMDBiMjNmYjZjMjJlYzBiOTMwMGRhMmE3YWEyOTVkIn19LCJzaWduYXR1cmUiOnsiY29udGVudCI6Ik1FVUNJQTRsME43Zkx3UUtyTjRXVFpXNjhQVXhXT3hwSnJyV0habEZEQlRoWVNNMUFpRUE0Z3ZyMWJZMVdNY0hDZG5TeHBjVGVEZTFrb0V2azY2d29NU3F6ZFhyemgwPSIsInB1YmxpY0tleSI6eyJjb250ZW50IjoiTFMwdExTMUNSVWRKVGlCRFJWSlVTVVpKUTBGVVJTMHRMUzB0Q2sxSlNVaExha05EUW5KSFowRjNTVUpCWjBsVlQxbzJWaXM1VFRkdlZISkxTWGhoZFZKb1FYSTRVVkJDWjJkUmQwTm5XVWxMYjFwSmVtb3dSVUYzVFhjS1RucEZWazFDVFVkQk1WVkZRMmhOVFdNeWJHNWpNMUoyWTIxVmRWcEhWakpOVWpSM1NFRlpSRlpSVVVSRmVGWjZZVmRrZW1SSE9YbGFVekZ3WW01U2JBcGpiVEZzV2tkc2FHUkhWWGRJYUdOT1RXcFplRTFFUlRWTlZGVjNUa1JWTTFkb1kwNU5hbGw0VFVSRk5VMVVWWGhPUkZVelYycEJRVTFHYTNkRmQxbElDa3R2V2tsNmFqQkRRVkZaU1V0dldrbDZhakJFUVZGalJGRm5RVVZ0TW5VMFVuVkxSSFpoUTFaWmRuRlBVa293UkVKR1psbE1kMWhFYmpodldISlBWWElLUkZVNWEzZFlWSEZuYVVGNlpUVTFUakpuVEVkdFpuVXJNMk5QVjB3MVFVOWpjMlY2SzJ4NGRuYzNZbFZWZGtSc1RYRlBRMEprUVhkbloxaE5UVUUwUndwQk1WVmtSSGRGUWk5M1VVVkJkMGxJWjBSQlZFSm5UbFpJVTFWRlJFUkJTMEpuWjNKQ1owVkdRbEZqUkVGNlFXWkNaMDVXU0ZOTlJVZEVRVmRuUWxSbUNqQXJibEJXYVZGU2JIWnRiekpQYTI5V1lVeEhUR2hvYTFCNlFuSkNaMDVXU0ZKRlFrRm1PRVZaVkVKbWFHd3hiMlJJVW5kamVtOTJUREprY0dSSGFERUtXV2sxYW1JeU1IWmhTRlp1V2pKc2RWb3lXbWhaTWxWMllUSldlV0p0Vm5OamVURnFZakl4ZEdSWE5YQmtTR3QyVEcxa2NHUkhhREZaYVRrellqTktjZ3BhYlhoMlpETk5kbGx1Vm5CaVIxRjFaVmRHZEdKRlFubGFWMXA2VERKb2JGbFhVbnBNTWpGb1lWYzBkMDlSV1V0TGQxbENRa0ZIUkhaNlFVSkJVVkZ5Q21GSVVqQmpTRTAyVEhrNU1HSXlkR3hpYVRWb1dUTlNjR0l5TlhwTWJXUndaRWRvTVZsdVZucGFXRXBxWWpJMU1GcFhOVEJNYlU1MllsUkJaa0puYjNJS1FtZEZSVUZaVHk5TlFVVkRRa0pHTTJJelNuSmFiWGgyWkRFNWEyRllUbmRaV0ZKcVlVUkJNa0puYjNKQ1owVkZRVmxQTDAxQlJVUkNRMmh0V2xSS2FRcFphbGt5V20xV2JFNXRUWGxaVkdNeldsZE9hbHBxUVRSWlZFRXhUVVJvYTFsNlZUTk9SRWswV2tSUk5FOUhWbXROUWsxSFEybHpSMEZSVVVKbk56aDNDa0ZSVVVWQ1ZVb3hZVmQ0YTAxRGMwZERhWE5IUVZGUlFtYzNPSGRCVVZWRlNGZG9NVm95WkhCaWJXUnRXVmRPYkV3eWRHeGpiVFZzWWtoTmRGa3lPWFFLWWxoV2RXRllValZOUWpCSFEybHpSMEZSVVVKbk56aDNRVkZaUlVRelNteGFiazEyWVVkV2FGcElUWFppVjBad1ltcEJOMEpuYjNKQ1owVkZRVmxQTHdwTlFVVkpRa013VFVzeWFEQmtTRUo2VDJrNGRtUkhPWEphVnpSMVdWZE9NR0ZYT1hWamVUVnVZVmhTYjJSWFNqRmpNbFo1V1RJNWRXUkhWblZrUXpWcUNtSXlNSGRpVVZsTFMzZFpRa0pCUjBSMmVrRkNRMUZTWmtSR01XOWtTRkozWTNwdmRrd3laSEJrUjJneFdXazFhbUl5TUhaaFNGWnVXakpzZFZveVdtZ0tXVEpWZG1FeVZubGliVlp6WTNreGFtSXlNWFJrVnpWd1pFaHJka3h0WkhCa1IyZ3hXV2s1TTJJelNuSmFiWGgyWkROTmRsbHVWbkJpUjFGMVpWZEdkQXBpUlVKNVdsZGFla3d5YUd4WlYxSjZUREl4YUdGWE5IZFBRVmxMUzNkWlFrSkJSMFIyZWtGQ1EyZFJjVVJEYUcxYVZFcHBXV3BaTWxwdFZteE9iVTE1Q2xsVVl6TmFWMDVxV21wQk5GbFVRVEZOUkdocldYcFZNMDVFU1RSYVJGRTBUMGRXYTAxQ2MwZERhWE5IUVZGUlFtYzNPSGRCVVhORlJGRjNUR015Vm5NS1dta3hiMkl6VGpCYVYxRjNVVUZaUzB0M1dVSkNRVWRFZG5wQlFrUkJVWGxFUkVKdlpFaFNkMk42YjNaTU1tUndaRWRvTVZscE5XcGlNakIyWVVoV2JncGFNbXgxV2pKYWFGa3lWWFpoTWxaNVltMVdjMk41TVdwaU1qRjBaRmMxY0dSSWEzZFBRVmxMUzNkWlFrSkJSMFIyZWtGQ1JGRlJjVVJEYUcxYVZFcHBDbGxxV1RKYWJWWnNUbTFOZVZsVVl6TmFWMDVxV21wQk5GbFVRVEZOUkdocldYcFZNMDVFU1RSYVJGRTBUMGRXYTAxQ09FZERhWE5IUVZGUlFtYzNPSGNLUVZFMFJVVlJkMUJqYlZadFkzazViMXBYUm10amVUbDBXVmRzZFUxQ2IwZERhWE5IUVZGUlFtYzNPSGRCVVRoRlJFRjNTMDFVUVROTlZGRXpUbFJWZVFwUFZFRjFRbWR2Y2tKblJVVkJXVTh2VFVGRlVVSkRRVTFJYldnd1pFaENlazlwT0haYU1td3dZVWhXYVV4dFRuWmlVemx2WkZka2JtRlhOVzVhYlVacUNscFVRVmxDWjI5eVFtZEZSVUZaVHk5TlFVVlNRa0Z2VFVORVNURk9la2wzVG5wUmVrMUhNRWREYVhOSFFWRlJRbWMzT0hkQlVrbEZXSGQ0WkdGSVVqQUtZMGhOTmt4NU9XNWhXRkp2WkZkSmRWa3lPWFJNTW1neFdqSmtjR0p0WkcxWlYwNXNUREowYkdOdE5XeGlTRTEwV1RJNWRHSllWblZoV0ZJMVRIazFiZ3BoV0ZKdlpGZEpkbVF5T1hsaE1scHpZak5rZWt3eVNqRmhWM2hyVEc1c2FHSlhlRUZqYlZadFkzazViMXBYUm10amVUbDBXVmRzZFUxRVowZERhWE5IQ2tGUlVVSm5OemgzUVZKTlJVdG5kMjlhYlZWNVdXMUpNazV0V214YVZGcHFUVzFGTTA0eVZtcFpNbGwzVDBkRmQwNVVRVFJhUjAweFRucFJlVTlIVVRBS1QwUm9iRnBFUVdoQ1oyOXlRbWRGUlVGWlR5OU5RVVZWUWtKTlRVVllaSFpqYlhSdFlrYzVNMWd5VW5Cak0wSm9aRWRPYjAxSFVVZERhWE5IUVZGUlFncG5OemgzUVZKVlJWWm5lRlZoU0ZJd1kwaE5Oa3g1T1c1aFdGSnZaRmRKZFZreU9YUk1NbWd4V2pKa2NHSnRaRzFaVjA1c1RESjBiR050Tld4aVNFMTBDbGt5T1hSaVdGWjFZVmhTTlV3eVJtcGtSMngyWW01TmRtTnVWblZqZVRoNlQxUkplazlVV1RCUFJGVXlUVk01YUdSSVVteGlXRUl3WTNrNGVFMUNXVWNLUTJselIwRlJVVUpuTnpoM1FWSlpSVU5CZDBkalNGWnBZa2RzYWsxRldVZERhWE5IUVZGUlFtYzNPSGRCVW1kRlQwRjNNbU50Vm5kaWVuQnZaRmRrYmdwaFZ6VnVXbTFHYWxwVE9YSmFXRXAxV2xkNGVreFhUblppVnpFeFltMXNNR1ZVY0hsYVYxazJZMjFXYldONU9XOWFWMFpyWTNrNWRGbFhiSFZOU1VkS0NrSm5iM0pDWjBWRlFXUmFOVUZuVVVOQ1NITkZaVkZDTTBGSVZVRXpWREIzWVhOaVNFVlVTbXBIVWpSamJWZGpNMEZ4U2t0WWNtcGxVRXN6TDJnMGNIa0taME00Y0Rkdk5FRkJRVWRvVmt4SVFsZEJRVUZDUVUxQlVtcENSVUZwUWpobk5tc3lNR1Y1U21KRldrUlBlR001TkdSblNWUnRZVXhHU21VclJ5OVRZd3BWU1dsRldFSjRiV0ZCU1dkUlYweFBMMnRKU2s5d2QwODBZU3MwVWxkWWFra3JWWG93VW5nME5YUnhUMVJ5U3poUWJqQnhkREZ2ZDBObldVbExiMXBKQ25wcU1FVkJkMDFFV25kQmQxcEJTWGRHZGtSTGJYWmxWamRtVW1Nd2EwUmFaVzFVVG1WRkwxSllSV0UzVDI0MVdHTnFWWGxKYW1SSFpVeFVMMHN4V0RRS1VUWjFXV05SZVd4V1ZqVkVTM1JMT1VGcVFXNVZlWFlyUmk4MGVtSTFkbWg1ZWtKeVdYWnlRemszVTA1R2RsUTRZbmRyYVRsTVpFUlNUalZVTTNsdVZ3cE1WV1puY1RKWGFYSk9hbE5HV2pSNWFsaEZQUW90TFMwdExVVk9SQ0JEUlZKVVNVWkpRMEZVUlMwdExTMHRDZz09In19fX0="}], "timestampVerificationData":{"rfc3161Timestamps":[{"signedTimestamp":"MIICyjADAgEAMIICwQYJKoZIhvcNAQcCoIICsjCCAq4CAQMxDTALBglghkgBZQMEAgEwgbcGCyqGSIb3DQEJEAEEoIGnBIGkMIGhAgEBBgkrBgEEAYO/MAIwMTANBglghkgBZQMEAgEFAAQgZ/BJ/UElhxSLmmxYnt2Q/QkpVJbXHA75SL0FmpSom8kCFCrBDlGoIdv9tTezei0Yw6WV6jp/GA8yMDI2MTAxOTE1MDQ1OFowAwIBAaAypDAwLjEVMBMGA1UEChMMc2lnc3RvcmUuZGV2MRUwEwYDVQQDEwxzaWdzdG9yZS10c2GgADGCAdwwggHYAgEBMFEwOTEVMBMGA1UEChMMc2lnc3RvcmUuZGV2MSAwHgYDVQQDExdzaWdzdG9yZS10c2Etc2VsZnNpZ25lZAIUOhNULwyQYe68wUMvy4qOiyojiwwwCwYJYIZIAWUDBAIBoIH8MBoGCSqGSIb3DQEJAzENBgsqhkiG9w0BCRABBDAcBgkqhkiG9w0BCQUxDxcNMjYxMDE5MTUwNDU4WjAvBgkqhkiG9w0BCQQxIgQgs32LlzJAuiIpSInSaOogTZh34x23MCJuF1TZy9TEoYMwgY4GCyqGSIb3DQEJEAIvMX8wfTB7MHkEIIX5J7wHq2LKw7RDVsEO/IGyxog/2nq55thw2dE6zQW3MFUwPaQ7MDkxFTATBgNVBAoTDHNpZ3N0b3JlLmRldjEgMB4GA1UEAxMXc2lnc3RvcmUtdHNhLXNlbGZzaWduZWQCFDoTVC8MkGHuvMFDL8uKjosqI4sMMAoGCCqGSM49BAMCBGgwZgIxAOyDJIe8bjIl9JncHSeqyKJU8sEArYXfl4IFz0Lisp3I//r4yrnxCkkFQ8UzX20G9wIxANp1sW6gVIeYAJU+6vFkvWykfkYZ6IlKb3Ri8L6CuUaP4nRI5qAL0xD8Gf6uJAf9/Q=="}]}}, "messageSignature":{"messageDigest":{"algorithm":"SHA2_256", "digest":"xuy/F5ZTs+WonhtA0VbS4U0Asj+2wi7AuTANoqeqKV0="}, "signature":"MEUCIA4l0N7fLwQKrN4WTZW68PUxWOxpJrrWHZlFDBThYSM1AiEA4gvr1bY1WMcHCdnSxpcTeDe1koEvk66woMSqzdXrzh0="}}
|
build/torch213-xpu20260-x86_64-linux/symbols.json
ADDED
|
@@ -0,0 +1,103 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"schema_version": 1,
|
| 3 |
+
"module": "_rotary_xpu_fe2bb66",
|
| 4 |
+
"functions": [
|
| 5 |
+
{
|
| 6 |
+
"name": "apply_rotary",
|
| 7 |
+
"qualname": "apply_rotary",
|
| 8 |
+
"module": "_rotary_xpu_fe2bb66",
|
| 9 |
+
"kind": "function",
|
| 10 |
+
"doc": null,
|
| 11 |
+
"signature": {
|
| 12 |
+
"parameters": [
|
| 13 |
+
{
|
| 14 |
+
"name": "x1",
|
| 15 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 16 |
+
"default": null,
|
| 17 |
+
"annotation": "torch.Tensor"
|
| 18 |
+
},
|
| 19 |
+
{
|
| 20 |
+
"name": "x2",
|
| 21 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 22 |
+
"default": null,
|
| 23 |
+
"annotation": "torch.Tensor"
|
| 24 |
+
},
|
| 25 |
+
{
|
| 26 |
+
"name": "cos",
|
| 27 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 28 |
+
"default": null,
|
| 29 |
+
"annotation": "torch.Tensor"
|
| 30 |
+
},
|
| 31 |
+
{
|
| 32 |
+
"name": "sin",
|
| 33 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 34 |
+
"default": null,
|
| 35 |
+
"annotation": "torch.Tensor"
|
| 36 |
+
},
|
| 37 |
+
{
|
| 38 |
+
"name": "out1",
|
| 39 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 40 |
+
"default": null,
|
| 41 |
+
"annotation": "torch.Tensor"
|
| 42 |
+
},
|
| 43 |
+
{
|
| 44 |
+
"name": "out2",
|
| 45 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 46 |
+
"default": null,
|
| 47 |
+
"annotation": "torch.Tensor"
|
| 48 |
+
},
|
| 49 |
+
{
|
| 50 |
+
"name": "conj",
|
| 51 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 52 |
+
"default": null,
|
| 53 |
+
"annotation": "bool"
|
| 54 |
+
}
|
| 55 |
+
],
|
| 56 |
+
"return_annotation": "None"
|
| 57 |
+
}
|
| 58 |
+
},
|
| 59 |
+
{
|
| 60 |
+
"name": "apply_rotary_transformers",
|
| 61 |
+
"qualname": "apply_rotary_transformers",
|
| 62 |
+
"module": "_rotary_xpu_fe2bb66",
|
| 63 |
+
"kind": "function",
|
| 64 |
+
"doc": "Rotary kernel implementation wrapper\nAdapts rotary kernel implementation to match transformers apply_rotary_pos_emb signature",
|
| 65 |
+
"signature": {
|
| 66 |
+
"parameters": [
|
| 67 |
+
{
|
| 68 |
+
"name": "q",
|
| 69 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 70 |
+
"default": null,
|
| 71 |
+
"annotation": "torch.Tensor"
|
| 72 |
+
},
|
| 73 |
+
{
|
| 74 |
+
"name": "k",
|
| 75 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 76 |
+
"default": null,
|
| 77 |
+
"annotation": "torch.Tensor"
|
| 78 |
+
},
|
| 79 |
+
{
|
| 80 |
+
"name": "cos",
|
| 81 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 82 |
+
"default": null,
|
| 83 |
+
"annotation": "torch.Tensor"
|
| 84 |
+
},
|
| 85 |
+
{
|
| 86 |
+
"name": "sin",
|
| 87 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 88 |
+
"default": null,
|
| 89 |
+
"annotation": "torch.Tensor"
|
| 90 |
+
},
|
| 91 |
+
{
|
| 92 |
+
"name": "unsqueeze_dim",
|
| 93 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 94 |
+
"default": "1",
|
| 95 |
+
"annotation": "int"
|
| 96 |
+
}
|
| 97 |
+
],
|
| 98 |
+
"return_annotation": "tuple[torch.Tensor, torch.Tensor]"
|
| 99 |
+
}
|
| 100 |
+
}
|
| 101 |
+
],
|
| 102 |
+
"layers": []
|
| 103 |
+
}
|
build/torch214-xpu20261-x86_64-linux/__init__.py
ADDED
|
@@ -0,0 +1,57 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import torch
|
| 2 |
+
|
| 3 |
+
from . import layers
|
| 4 |
+
from ._ops import ops
|
| 5 |
+
|
| 6 |
+
|
| 7 |
+
def apply_rotary(
|
| 8 |
+
x1: torch.Tensor,
|
| 9 |
+
x2: torch.Tensor,
|
| 10 |
+
cos: torch.Tensor,
|
| 11 |
+
sin: torch.Tensor,
|
| 12 |
+
out1: torch.Tensor,
|
| 13 |
+
out2: torch.Tensor,
|
| 14 |
+
conj: bool,
|
| 15 |
+
) -> None:
|
| 16 |
+
ops.apply_rotary(x1, x2, cos, sin, out1, out2, conj)
|
| 17 |
+
|
| 18 |
+
|
| 19 |
+
def apply_rotary_transformers(
|
| 20 |
+
q: torch.Tensor,
|
| 21 |
+
k: torch.Tensor,
|
| 22 |
+
cos: torch.Tensor,
|
| 23 |
+
sin: torch.Tensor,
|
| 24 |
+
unsqueeze_dim: int = 1,
|
| 25 |
+
) -> tuple[torch.Tensor, torch.Tensor]:
|
| 26 |
+
"""
|
| 27 |
+
Rotary kernel implementation wrapper
|
| 28 |
+
Adapts rotary kernel implementation to match transformers apply_rotary_pos_emb signature
|
| 29 |
+
"""
|
| 30 |
+
cos = cos.unsqueeze(unsqueeze_dim)
|
| 31 |
+
sin = sin.unsqueeze(unsqueeze_dim)
|
| 32 |
+
|
| 33 |
+
q_rotated = q.clone()
|
| 34 |
+
k_rotated = k.clone()
|
| 35 |
+
|
| 36 |
+
# Get half dimension for rotation
|
| 37 |
+
half_dim = q.shape[-1] // 2
|
| 38 |
+
q1 = q_rotated[..., :half_dim]
|
| 39 |
+
q2 = q_rotated[..., half_dim:]
|
| 40 |
+
k1 = k_rotated[..., :half_dim]
|
| 41 |
+
k2 = k_rotated[..., half_dim:]
|
| 42 |
+
if cos.shape[-1] != half_dim:
|
| 43 |
+
# Trim cos/sin to match half_dim
|
| 44 |
+
cos = cos[..., :half_dim]
|
| 45 |
+
sin = sin[..., :half_dim]
|
| 46 |
+
|
| 47 |
+
apply_rotary(q1, q2, cos, sin, q1, q2, False)
|
| 48 |
+
apply_rotary(k1, k2, cos, sin, k1, k2, False)
|
| 49 |
+
return q_rotated, k_rotated
|
| 50 |
+
|
| 51 |
+
|
| 52 |
+
# Add torch compile support for functions
|
| 53 |
+
apply_rotary_transformers.can_torch_compile = True
|
| 54 |
+
|
| 55 |
+
|
| 56 |
+
# Keeping `apply_rotary` and `apply_rotary_transformers` for BC
|
| 57 |
+
__all__ = ["apply_rotary", "apply_rotary_transformers", "layers"]
|
build/torch214-xpu20261-x86_64-linux/_ops.py
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import torch
|
| 2 |
+
from . import _rotary_xpu_fe2bb66
|
| 3 |
+
ops = torch.ops._rotary_xpu_fe2bb66
|
| 4 |
+
|
| 5 |
+
def add_op_namespace_prefix(op_name: str):
|
| 6 |
+
"""
|
| 7 |
+
Prefix op by namespace.
|
| 8 |
+
"""
|
| 9 |
+
return f"_rotary_xpu_fe2bb66::{op_name}"
|
build/torch214-xpu20261-x86_64-linux/_rotary_xpu_fe2bb66.abi3.so
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:a16e04413a720342f34283c8851abe878b537d188789d7dd44c2e99e7beda72d
|
| 3 |
+
size 403832
|
build/torch214-xpu20261-x86_64-linux/layers.py
ADDED
|
@@ -0,0 +1,41 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import torch
|
| 2 |
+
import torch.nn as nn
|
| 3 |
+
|
| 4 |
+
from ._ops import ops
|
| 5 |
+
|
| 6 |
+
|
| 7 |
+
class apply_rotary_transformers(nn.Module):
|
| 8 |
+
can_torch_compile = True
|
| 9 |
+
|
| 10 |
+
def forward(
|
| 11 |
+
self,
|
| 12 |
+
q: torch.Tensor,
|
| 13 |
+
k: torch.Tensor,
|
| 14 |
+
cos: torch.Tensor,
|
| 15 |
+
sin: torch.Tensor,
|
| 16 |
+
unsqueeze_dim: int = 1,
|
| 17 |
+
) -> tuple[torch.Tensor, torch.Tensor]:
|
| 18 |
+
"""
|
| 19 |
+
Rotary kernel implementation wrapper
|
| 20 |
+
Adapts rotary kernel implementation to match transformers apply_rotary_pos_emb signature
|
| 21 |
+
"""
|
| 22 |
+
cos = cos.unsqueeze(unsqueeze_dim)
|
| 23 |
+
sin = sin.unsqueeze(unsqueeze_dim)
|
| 24 |
+
|
| 25 |
+
q_rotated = q.clone()
|
| 26 |
+
k_rotated = k.clone()
|
| 27 |
+
|
| 28 |
+
# Get half dimension for rotation
|
| 29 |
+
half_dim = q.shape[-1] // 2
|
| 30 |
+
q1 = q_rotated[..., :half_dim]
|
| 31 |
+
q2 = q_rotated[..., half_dim:]
|
| 32 |
+
k1 = k_rotated[..., :half_dim]
|
| 33 |
+
k2 = k_rotated[..., half_dim:]
|
| 34 |
+
if cos.shape[-1] != half_dim:
|
| 35 |
+
# Trim cos/sin to match half_dim
|
| 36 |
+
cos = cos[..., :half_dim]
|
| 37 |
+
sin = sin[..., :half_dim]
|
| 38 |
+
|
| 39 |
+
ops.apply_rotary(q1, q2, cos, sin, q1, q2, False)
|
| 40 |
+
ops.apply_rotary(k1, k2, cos, sin, k1, k2, False)
|
| 41 |
+
return q_rotated, k_rotated
|
build/torch214-xpu20261-x86_64-linux/metadata.json
ADDED
|
@@ -0,0 +1,33 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"name": "rotary",
|
| 3 |
+
"id": "_rotary_xpu_fe2bb66",
|
| 4 |
+
"version": 2,
|
| 5 |
+
"kernels-minver": "0.14.0",
|
| 6 |
+
"license": "BSD-3-Clause",
|
| 7 |
+
"python-depends": [],
|
| 8 |
+
"kernel-depends": [],
|
| 9 |
+
"backend": {
|
| 10 |
+
"type": "xpu"
|
| 11 |
+
},
|
| 12 |
+
"digest": {
|
| 13 |
+
"algorithm": "sha256",
|
| 14 |
+
"files": {
|
| 15 |
+
"__init__.py": "qlvCb0Z6KMkcCxgjDRxjD1ofWaJ/Lqx0cTFlqrncWyE=",
|
| 16 |
+
"_ops.py": "Jeq0/zADY+Cq3MnRyzR/8jDpyYANlwKH71wgSME2/vA=",
|
| 17 |
+
"_rotary_xpu_fe2bb66.abi3.so": "oW4EQTpyA0LzQoPIhRq+h4tTfRiHidfdRMLpnnvtpy0=",
|
| 18 |
+
"layers.py": "c8ZzUlsVi1lOGhM67JSViZdKBSbIKItQxmWkXPiTEy4=",
|
| 19 |
+
"symbols.json": "PxgUNQB1dU+NEARgssX8a05dn1+R6dbDC79RXAlVxqw="
|
| 20 |
+
}
|
| 21 |
+
},
|
| 22 |
+
"provenance": {
|
| 23 |
+
"kernel-builder": {
|
| 24 |
+
"version": "0.18.0-dev0",
|
| 25 |
+
"commit": "d054906a13710b811b96697b4635f03020842733",
|
| 26 |
+
"dirty": false
|
| 27 |
+
},
|
| 28 |
+
"kernel": {
|
| 29 |
+
"commit": "fe2bb66fee6c2a77eccf08a0508dc57428d488ed",
|
| 30 |
+
"dirty": false
|
| 31 |
+
}
|
| 32 |
+
}
|
| 33 |
+
}
|
build/torch214-xpu20261-x86_64-linux/metadata.json.sigstore
ADDED
|
@@ -0,0 +1 @@
|
|
|
|
|
|
|
| 1 |
+
{"mediaType":"application/vnd.dev.sigstore.bundle.v0.3+json", "verificationMaterial":{"certificate":{"rawBytes":"MIIHLDCCBrKgAwIBAgIUI+IhPF98TTAdjNdqqW5WVtmABOwwCgYIKoZIzj0EAwMwNzEVMBMGA1UEChMMc2lnc3RvcmUuZGV2MR4wHAYDVQQDExVzaWdzdG9yZS1pbnRlcm1lZGlhdGUwHhcNMjYxMDE5MTUwNDU5WhcNMjYxMDE5MTUxNDU5WjAAMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEvN+mhv6Ku4XY4FLciBYuXioyzCyUb2aTZKlmoHAkZUilX7Y8sGwkRSpf716KW6/ceX1qWJ76ylGVxUxOsZ8h1qOCBdEwggXNMA4GA1UdDwEB/wQEAwIHgDATBgNVHSUEDDAKBggrBgEFBQcDAzAfBgNVHSMEGDAWgBTf0+nPViQRlvmo2OkoVaLGLhhkPzBrBgNVHREBAf8EYTBfhl1odHRwczovL2dpdGh1Yi5jb20vaHVnZ2luZ2ZhY2Uva2VybmVscy1jb21tdW5pdHkvLmdpdGh1Yi93b3JrZmxvd3MvYnVpbGQueWFtbEByZWZzL2hlYWRzL21haW4wOQYKKwYBBAGDvzABAQQraHR0cHM6Ly90b2tlbi5hY3Rpb25zLmdpdGh1YnVzZXJjb250ZW50LmNvbTAfBgorBgEEAYO/MAECBBF3b3JrZmxvd19kaXNwYXRjaDA2BgorBgEEAYO/MAEDBChmZTJiYjY2ZmVlNmMyYTc3ZWNjZjA4YTA1MDhkYzU3NDI4ZDQ4OGVkMBMGCisGAQQBg78wAQQEBUJ1aWxkMCsGCisGAQQBg78wAQUEHWh1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5MB0GCisGAQQBg78wAQYED3JlZnMvaGVhZHMvbWFpbjA7BgorBgEEAYO/MAEIBC0MK2h0dHBzOi8vdG9rZW4uYWN0aW9ucy5naXRodWJ1c2VyY29udGVudC5jb20wbQYKKwYBBAGDvzABCQRfDF1odHRwczovL2dpdGh1Yi5jb20vaHVnZ2luZ2ZhY2Uva2VybmVscy1jb21tdW5pdHkvLmdpdGh1Yi93b3JrZmxvd3MvYnVpbGQueWFtbEByZWZzL2hlYWRzL21haW4wOAYKKwYBBAGDvzABCgQqDChmZTJiYjY2ZmVlNmMyYTc3ZWNjZjA4YTA1MDhkYzU3NDI4ZDQ4OGVkMBsGCisGAQQBg78wAQsEDQwLc2VsZi1ob3N0ZWQwQAYKKwYBBAGDvzABDAQyDDBodHRwczovL2dpdGh1Yi5jb20vaHVnZ2luZ2ZhY2Uva2VybmVscy1jb21tdW5pdHkwOAYKKwYBBAGDvzABDQQqDChmZTJiYjY2ZmVlNmMyYTc3ZWNjZjA4YTA1MDhkYzU3NDI4ZDQ4OGVkMB8GCisGAQQBg78wAQ4EEQwPcmVmcy9oZWFkcy9tYWluMBoGCisGAQQBg78wAQ8EDAwKMTA3MTQ3NTUyOTAuBgorBgEEAYO/MAEQBCAMHmh0dHBzOi8vZ2l0aHViLmNvbS9odWdnaW5nZmFjZTAYBgorBgEEAYO/MAERBAoMCDI1NzIwNzQzMG0GCisGAQQBg78wARIEXwxdaHR0cHM6Ly9naXRodWIuY29tL2h1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5Ly5naXRodWIvd29ya2Zsb3dzL2J1aWxkLnlhbWxAcmVmcy9oZWFkcy9tYWluMDgGCisGAQQBg78wARMEKgwoZmUyYmI2NmZlZTZjMmE3N2VjY2YwOGEwNTA4ZGM1NzQyOGQ0ODhlZDAhBgorBgEEAYO/MAEUBBMMEXdvcmtmbG93X2Rpc3BhdGNoMGQGCisGAQQBg78wARUEVgxUaHR0cHM6Ly9naXRodWIuY29tL2h1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5L2FjdGlvbnMvcnVucy8zOTIzOTY0ODU2MS9hdHRlbXB0cy8xMBYGCisGAQQBg78wARYECAwGcHVibGljMEYGCisGAQQBg78wARgEOAw2cmVwbzpodWdnaW5nZmFjZS9rZXJuZWxzLWNvbW11bml0eTpyZWY6cmVmcy9oZWFkcy9tYWluMIGKBgorBgEEAdZ5AgQCBHwEegB4AHYA3T0wasbHETJjGR4cmWc3AqJKXrjePK3/h4pygC8p7o4AAAGhVLHJXgAABAMARzBFAiEAphQ9mbPRAmiD1ZHLP7irE4+tnGb11VxGtIGNhhduWa4CIGexThvt1whv91z8pW4PldoFNo1iyMsvdKb6okP7phfUMAoGCCqGSM49BAMDA2gAMGUCMAwJljCbSS18dmvjE5VieOQtoLB4STcCKiTpNAgTo4u/vBeeGmr3bObMziZoufdyYwIxAI/AVl1uj67YGkrnEHyTZ47+z1PAnGSALmcmHDp5NQyMRWkIswM9JxTzHe3iDYGjwQ=="}, "tlogEntries":[{"logIndex":"3322437217", "logId":{"keyId":"wNI9atQGlz+VWfO6LRygH4QUfY/8W4RFwiT5i5WRgB0="}, "kindVersion":{"kind":"hashedrekord", "version":"0.0.1"}, "integratedTime":"1792422300", "inclusionPromise":{"signedEntryTimestamp":"MEYCIQCw5I3QH+dyO2iVSXYrb0/aZ1YVNtmWAcoa4L70R6oiDAIhAP1OtUXiaiV1dI6Id5cPmnKqQRNXFTG3DDeKH/stAeRf"}, "inclusionProof":{"logIndex":"3200532955", "rootHash":"h8kEHKN0aBMv4qoR0aKM8Uci9nclPuA+JHrFA52mEOs=", "treeSize":"3200533374", "hashes":["udswSUq81qGa5r+iDdlSBf+oP+mbioka5El1ssFiz/U=", "lhjlGjmTcH85bm0SyTeGHnMguL2yl+j+3B8EngSowFY=", "2CxAyH2JCDzaKySCdJ8iE8T40DGFOjp6aJIRkWI8LI0=", "6Kqnbq2XI9Eo8JLAszzcN2cCMAHCRue31/JNiTmlZT0=", "4yNCjKWH+8vjRReQZMEnmFZ+ybql+YFAqGAgNoML2nw=", "cOieTonUqt0LCiljwd3YkK0fsjQcHvzwR1ImxBbczB4=", "3sMC+krO+pqor8ED0wQoAjg3h0Rn8cfl6kBbuw4bs28=", "5ctips/em69q9Efbg8GKuTp0ObERgMbhseMIj2cTEnw=", "hoslrBfzK7mWWeR/VwOe7GrA1jJwzNyjWzkYP0wJBJM=", "qLdS7QRk3h+ByuZRtF5shQmcEl/xPZIPAh2mblEB0Bk=", "LARyKX6B/3uPp0D3YKuXCbUI7EN2SaNn/N2qktNFNsA=", "+uGmdFlSXHU/F2/EH9t0YPf1KfLVa0s8IOgjHO79Z0Q=", "7WFpoaiQCzLwM3o2YI5Ngo8J7JD0OfyCCQtmXhWxVes=", "nyQV/+cWQUG5Hb2PKjQQNkQIJmz2qzAZKBQlkHGIknM=", "G+nk7mgE5h6dUmv2UY7NDJrY3WvrZY31raaO1AETt+o=", "qlTWNDzERnTBQVcHHXXVPjiUP0SsikGxfcxVlgqVFDo=", "gg9GNApNke3+zNhl4tsWtmIycCFrOMCB3lys6XuSQNQ=", "NlOclldmKPA1tMKIskqHAwuQDYHp31YwpK+OOMrMccc=", "qxzHanAzz57SDdmJe0B7bJK72NTIBbwEMGBBKvDOROw=", "xH/DCseLHr9eKoYT8qsORZK7zVdEGYWHuVtsVrD95wY="], "checkpoint":{"envelope":"rekor.sigstore.dev - 1193050959916656506\n3200533374\nh8kEHKN0aBMv4qoR0aKM8Uci9nclPuA+JHrFA52mEOs=\n\n— rekor.sigstore.dev wNI9ajBEAiATxQwS6YAGbh5yrs1iZ5yxiP1KRemYnt3c7iHjb/e2CAIgFwbAFwwSSGOv5irbW0Q0o7qBiPSudvqaohUWxZKCWEk=\n"}}, "canonicalizedBody":"eyJhcGlWZXJzaW9uIjoiMC4wLjEiLCJraW5kIjoiaGFzaGVkcmVrb3JkIiwic3BlYyI6eyJkYXRhIjp7Imhhc2giOnsiYWxnb3JpdGhtIjoic2hhMjU2IiwidmFsdWUiOiJlOGNhZDhkZDc5OTJhYjVkZWY1OTNjNzBjY2E3YmU3MDkwMDIyNWIwOWZlYThhZDlkYTk5M2VhOTk2MmNjNjlkIn19LCJzaWduYXR1cmUiOnsiY29udGVudCI6Ik1FUUNJR01Zallqb0UraFV6ZldTeExhQXd6NTVsdWhaU2tBVUl1bWVTVHRTWVlHRkFpQUE2SkJ5WFQzcFRlRVdxUmxWUEFkaVJUeUlKYytGc1ZZaWZVWnFTV043NkE9PSIsInB1YmxpY0tleSI6eyJjb250ZW50IjoiTFMwdExTMUNSVWRKVGlCRFJWSlVTVVpKUTBGVVJTMHRMUzB0Q2sxSlNVaE1SRU5EUW5KTFowRjNTVUpCWjBsVlNTdEphRkJHT1RoVVZFRmthazVrY1hGWE5WZFdkRzFCUWs5M2QwTm5XVWxMYjFwSmVtb3dSVUYzVFhjS1RucEZWazFDVFVkQk1WVkZRMmhOVFdNeWJHNWpNMUoyWTIxVmRWcEhWakpOVWpSM1NFRlpSRlpSVVVSRmVGWjZZVmRrZW1SSE9YbGFVekZ3WW01U2JBcGpiVEZzV2tkc2FHUkhWWGRJYUdOT1RXcFplRTFFUlRWTlZGVjNUa1JWTlZkb1kwNU5hbGw0VFVSRk5VMVVWWGhPUkZVMVYycEJRVTFHYTNkRmQxbElDa3R2V2tsNmFqQkRRVkZaU1V0dldrbDZhakJFUVZGalJGRm5RVVYyVGl0dGFIWTJTM1UwV0ZrMFJreGphVUpaZFZocGIzbDZRM2xWWWpKaFZGcExiRzBLYjBoQmExcFZhV3hZTjFrNGMwZDNhMUpUY0dZM01UWkxWell2WTJWWU1YRlhTamMyZVd4SFZuaFZlRTl6V2pob01YRlBRMEprUlhkbloxaE9UVUUwUndwQk1WVmtSSGRGUWk5M1VVVkJkMGxJWjBSQlZFSm5UbFpJVTFWRlJFUkJTMEpuWjNKQ1owVkdRbEZqUkVGNlFXWkNaMDVXU0ZOTlJVZEVRVmRuUWxSbUNqQXJibEJXYVZGU2JIWnRiekpQYTI5V1lVeEhUR2hvYTFCNlFuSkNaMDVXU0ZKRlFrRm1PRVZaVkVKbWFHd3hiMlJJVW5kamVtOTJUREprY0dSSGFERUtXV2sxYW1JeU1IWmhTRlp1V2pKc2RWb3lXbWhaTWxWMllUSldlV0p0Vm5OamVURnFZakl4ZEdSWE5YQmtTR3QyVEcxa2NHUkhhREZaYVRrellqTktjZ3BhYlhoMlpETk5kbGx1Vm5CaVIxRjFaVmRHZEdKRlFubGFWMXA2VERKb2JGbFhVbnBNTWpGb1lWYzBkMDlSV1V0TGQxbENRa0ZIUkhaNlFVSkJVVkZ5Q21GSVVqQmpTRTAyVEhrNU1HSXlkR3hpYVRWb1dUTlNjR0l5TlhwTWJXUndaRWRvTVZsdVZucGFXRXBxWWpJMU1GcFhOVEJNYlU1MllsUkJaa0puYjNJS1FtZEZSVUZaVHk5TlFVVkRRa0pHTTJJelNuSmFiWGgyWkRFNWEyRllUbmRaV0ZKcVlVUkJNa0puYjNKQ1owVkZRVmxQTDAxQlJVUkNRMmh0V2xSS2FRcFphbGt5V20xV2JFNXRUWGxaVkdNeldsZE9hbHBxUVRSWlZFRXhUVVJvYTFsNlZUTk9SRWswV2tSUk5FOUhWbXROUWsxSFEybHpSMEZSVVVKbk56aDNDa0ZSVVVWQ1ZVb3hZVmQ0YTAxRGMwZERhWE5IUVZGUlFtYzNPSGRCVVZWRlNGZG9NVm95WkhCaWJXUnRXVmRPYkV3eWRHeGpiVFZzWWtoTmRGa3lPWFFLWWxoV2RXRllValZOUWpCSFEybHpSMEZSVVVKbk56aDNRVkZaUlVRelNteGFiazEyWVVkV2FGcElUWFppVjBad1ltcEJOMEpuYjNKQ1owVkZRVmxQTHdwTlFVVkpRa013VFVzeWFEQmtTRUo2VDJrNGRtUkhPWEphVnpSMVdWZE9NR0ZYT1hWamVUVnVZVmhTYjJSWFNqRmpNbFo1V1RJNWRXUkhWblZrUXpWcUNtSXlNSGRpVVZsTFMzZFpRa0pCUjBSMmVrRkNRMUZTWmtSR01XOWtTRkozWTNwdmRrd3laSEJrUjJneFdXazFhbUl5TUhaaFNGWnVXakpzZFZveVdtZ0tXVEpWZG1FeVZubGliVlp6WTNreGFtSXlNWFJrVnpWd1pFaHJka3h0WkhCa1IyZ3hXV2s1TTJJelNuSmFiWGgyWkROTmRsbHVWbkJpUjFGMVpWZEdkQXBpUlVKNVdsZGFla3d5YUd4WlYxSjZUREl4YUdGWE5IZFBRVmxMUzNkWlFrSkJSMFIyZWtGQ1EyZFJjVVJEYUcxYVZFcHBXV3BaTWxwdFZteE9iVTE1Q2xsVVl6TmFWMDVxV21wQk5GbFVRVEZOUkdocldYcFZNMDVFU1RSYVJGRTBUMGRXYTAxQ2MwZERhWE5IUVZGUlFtYzNPSGRCVVhORlJGRjNUR015Vm5NS1dta3hiMkl6VGpCYVYxRjNVVUZaUzB0M1dVSkNRVWRFZG5wQlFrUkJVWGxFUkVKdlpFaFNkMk42YjNaTU1tUndaRWRvTVZscE5XcGlNakIyWVVoV2JncGFNbXgxV2pKYWFGa3lWWFpoTWxaNVltMVdjMk41TVdwaU1qRjBaRmMxY0dSSWEzZFBRVmxMUzNkWlFrSkJSMFIyZWtGQ1JGRlJjVVJEYUcxYVZFcHBDbGxxV1RKYWJWWnNUbTFOZVZsVVl6TmFWMDVxV21wQk5GbFVRVEZOUkdocldYcFZNMDVFU1RSYVJGRTBUMGRXYTAxQ09FZERhWE5IUVZGUlFtYzNPSGNLUVZFMFJVVlJkMUJqYlZadFkzazViMXBYUm10amVUbDBXVmRzZFUxQ2IwZERhWE5IUVZGUlFtYzNPSGRCVVRoRlJFRjNTMDFVUVROTlZGRXpUbFJWZVFwUFZFRjFRbWR2Y2tKblJVVkJXVTh2VFVGRlVVSkRRVTFJYldnd1pFaENlazlwT0haYU1td3dZVWhXYVV4dFRuWmlVemx2WkZka2JtRlhOVzVhYlVacUNscFVRVmxDWjI5eVFtZEZSVUZaVHk5TlFVVlNRa0Z2VFVORVNURk9la2wzVG5wUmVrMUhNRWREYVhOSFFWRlJRbWMzT0hkQlVrbEZXSGQ0WkdGSVVqQUtZMGhOTmt4NU9XNWhXRkp2WkZkSmRWa3lPWFJNTW1neFdqSmtjR0p0WkcxWlYwNXNUREowYkdOdE5XeGlTRTEwV1RJNWRHSllWblZoV0ZJMVRIazFiZ3BoV0ZKdlpGZEpkbVF5T1hsaE1scHpZak5rZWt3eVNqRmhWM2hyVEc1c2FHSlhlRUZqYlZadFkzazViMXBYUm10amVUbDBXVmRzZFUxRVowZERhWE5IQ2tGUlVVSm5OemgzUVZKTlJVdG5kMjlhYlZWNVdXMUpNazV0V214YVZGcHFUVzFGTTA0eVZtcFpNbGwzVDBkRmQwNVVRVFJhUjAweFRucFJlVTlIVVRBS1QwUm9iRnBFUVdoQ1oyOXlRbWRGUlVGWlR5OU5RVVZWUWtKTlRVVllaSFpqYlhSdFlrYzVNMWd5VW5Cak0wSm9aRWRPYjAxSFVVZERhWE5IUVZGUlFncG5OemgzUVZKVlJWWm5lRlZoU0ZJd1kwaE5Oa3g1T1c1aFdGSnZaRmRKZFZreU9YUk1NbWd4V2pKa2NHSnRaRzFaVjA1c1RESjBiR050Tld4aVNFMTBDbGt5T1hSaVdGWjFZVmhTTlV3eVJtcGtSMngyWW01TmRtTnVWblZqZVRoNlQxUkplazlVV1RCUFJGVXlUVk01YUdSSVVteGlXRUl3WTNrNGVFMUNXVWNLUTJselIwRlJVVUpuTnpoM1FWSlpSVU5CZDBkalNGWnBZa2RzYWsxRldVZERhWE5IUVZGUlFtYzNPSGRCVW1kRlQwRjNNbU50Vm5kaWVuQnZaRmRrYmdwaFZ6VnVXbTFHYWxwVE9YSmFXRXAxV2xkNGVreFhUblppVnpFeFltMXNNR1ZVY0hsYVYxazJZMjFXYldONU9XOWFWMFpyWTNrNWRGbFhiSFZOU1VkTENrSm5iM0pDWjBWRlFXUmFOVUZuVVVOQ1NIZEZaV2RDTkVGSVdVRXpWREIzWVhOaVNFVlVTbXBIVWpSamJWZGpNMEZ4U2t0WWNtcGxVRXN6TDJnMGNIa0taME00Y0Rkdk5FRkJRVWRvVmt4SVNsaG5RVUZDUVUxQlVucENSa0ZwUlVGd2FGRTViV0pRVWtGdGFVUXhXa2hNVURkcGNrVTBLM1J1UjJJeE1WWjRSd3AwU1VkT2FHaGtkVmRoTkVOSlIyVjRWR2gyZERGM2FIWTVNWG80Y0ZjMFVHeGtiMFpPYnpGcGVVMXpkbVJMWWpadmExQTNjR2htVlUxQmIwZERRM0ZIQ2xOTk5EbENRVTFFUVRKblFVMUhWVU5OUVhkS2JHcERZbE5UTVRoa2JYWnFSVFZXYVdWUFVYUnZURUkwVTFSalEwdHBWSEJPUVdkVWJ6UjFMM1pDWldVS1IyMXlNMkpQWWsxNmFWcHZkV1prZVZsM1NYaEJTUzlCVm13eGRXbzJOMWxIYTNKdVJVaDVWRm8wTnl0Nk1WQkJia2RUUVV4dFkyMUlSSEExVGxGNVRRcFNWMnRKYzNkTk9VcDRWSHBJWlROcFJGbEhhbmRSUFQwS0xTMHRMUzFGVGtRZ1EwVlNWRWxHU1VOQlZFVXRMUzB0TFFvPSJ9fX19"}], "timestampVerificationData":{"rfc3161Timestamps":[{"signedTimestamp":"MIICyjADAgEAMIICwQYJKoZIhvcNAQcCoIICsjCCAq4CAQMxDTALBglghkgBZQMEAgEwgbgGCyqGSIb3DQEJEAEEoIGoBIGlMIGiAgEBBgkrBgEEAYO/MAIwMTANBglghkgBZQMEAgEFAAQgku8PbVRrxN/keUX3VqhZ0uQuvkuruQf0cKMiR85+Ae0CFQDAPZHcbQdxUEmZsK8k1EBflbAXKBgPMjAyNjEwMTkxNTA1MDBaMAMCAQGgMqQwMC4xFTATBgNVBAoTDHNpZ3N0b3JlLmRldjEVMBMGA1UEAxMMc2lnc3RvcmUtdHNhoAAxggHbMIIB1wIBATBRMDkxFTATBgNVBAoTDHNpZ3N0b3JlLmRldjEgMB4GA1UEAxMXc2lnc3RvcmUtdHNhLXNlbGZzaWduZWQCFDoTVC8MkGHuvMFDL8uKjosqI4sMMAsGCWCGSAFlAwQCAaCB/DAaBgkqhkiG9w0BCQMxDQYLKoZIhvcNAQkQAQQwHAYJKoZIhvcNAQkFMQ8XDTI2MTAxOTE1MDUwMFowLwYJKoZIhvcNAQkEMSIEIK/wIBWf8I4Gwpc8921m848wOMk9yxrQ65Eg0GXGg06CMIGOBgsqhkiG9w0BCRACLzF/MH0wezB5BCCF+Se8B6tiysO0Q1bBDvyBssaIP9p6uebYcNnROs0FtzBVMD2kOzA5MRUwEwYDVQQKEwxzaWdzdG9yZS5kZXYxIDAeBgNVBAMTF3NpZ3N0b3JlLXRzYS1zZWxmc2lnbmVkAhQ6E1QvDJBh7rzBQy/Lio6LKiOLDDAKBggqhkjOPQQDAgRnMGUCMQDStOXaMcZVvlSGt8tHdWkpuozope7/zRQxTbEbiyk1yv5BH/aDObYsLqR4Ga2bmXUCMH3uqNCKprcx12NE7SYt9JLUD2uHUZD0hW3ghVwdyqvN1EhGdXZmY9mfBCFG2cz2CA=="}]}}, "messageSignature":{"messageDigest":{"algorithm":"SHA2_256", "digest":"6MrY3XmSq13vWTxwzKe+cJACJbCf6orZ2pk+qZYsxp0="}, "signature":"MEQCIGMYjYjoE+hUzfWSxLaAwz55luhZSkAUIumeSTtSYYGFAiAA6JByXT3pTeEWqRlVPAdiRTyIJc+FsVYifUZqSWN76A=="}}
|
build/torch214-xpu20261-x86_64-linux/symbols.json
ADDED
|
@@ -0,0 +1,103 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"schema_version": 1,
|
| 3 |
+
"module": "_rotary_xpu_fe2bb66",
|
| 4 |
+
"functions": [
|
| 5 |
+
{
|
| 6 |
+
"name": "apply_rotary",
|
| 7 |
+
"qualname": "apply_rotary",
|
| 8 |
+
"module": "_rotary_xpu_fe2bb66",
|
| 9 |
+
"kind": "function",
|
| 10 |
+
"doc": null,
|
| 11 |
+
"signature": {
|
| 12 |
+
"parameters": [
|
| 13 |
+
{
|
| 14 |
+
"name": "x1",
|
| 15 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 16 |
+
"default": null,
|
| 17 |
+
"annotation": "torch.Tensor"
|
| 18 |
+
},
|
| 19 |
+
{
|
| 20 |
+
"name": "x2",
|
| 21 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 22 |
+
"default": null,
|
| 23 |
+
"annotation": "torch.Tensor"
|
| 24 |
+
},
|
| 25 |
+
{
|
| 26 |
+
"name": "cos",
|
| 27 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 28 |
+
"default": null,
|
| 29 |
+
"annotation": "torch.Tensor"
|
| 30 |
+
},
|
| 31 |
+
{
|
| 32 |
+
"name": "sin",
|
| 33 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 34 |
+
"default": null,
|
| 35 |
+
"annotation": "torch.Tensor"
|
| 36 |
+
},
|
| 37 |
+
{
|
| 38 |
+
"name": "out1",
|
| 39 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 40 |
+
"default": null,
|
| 41 |
+
"annotation": "torch.Tensor"
|
| 42 |
+
},
|
| 43 |
+
{
|
| 44 |
+
"name": "out2",
|
| 45 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 46 |
+
"default": null,
|
| 47 |
+
"annotation": "torch.Tensor"
|
| 48 |
+
},
|
| 49 |
+
{
|
| 50 |
+
"name": "conj",
|
| 51 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 52 |
+
"default": null,
|
| 53 |
+
"annotation": "bool"
|
| 54 |
+
}
|
| 55 |
+
],
|
| 56 |
+
"return_annotation": "None"
|
| 57 |
+
}
|
| 58 |
+
},
|
| 59 |
+
{
|
| 60 |
+
"name": "apply_rotary_transformers",
|
| 61 |
+
"qualname": "apply_rotary_transformers",
|
| 62 |
+
"module": "_rotary_xpu_fe2bb66",
|
| 63 |
+
"kind": "function",
|
| 64 |
+
"doc": "Rotary kernel implementation wrapper\nAdapts rotary kernel implementation to match transformers apply_rotary_pos_emb signature",
|
| 65 |
+
"signature": {
|
| 66 |
+
"parameters": [
|
| 67 |
+
{
|
| 68 |
+
"name": "q",
|
| 69 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 70 |
+
"default": null,
|
| 71 |
+
"annotation": "torch.Tensor"
|
| 72 |
+
},
|
| 73 |
+
{
|
| 74 |
+
"name": "k",
|
| 75 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 76 |
+
"default": null,
|
| 77 |
+
"annotation": "torch.Tensor"
|
| 78 |
+
},
|
| 79 |
+
{
|
| 80 |
+
"name": "cos",
|
| 81 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 82 |
+
"default": null,
|
| 83 |
+
"annotation": "torch.Tensor"
|
| 84 |
+
},
|
| 85 |
+
{
|
| 86 |
+
"name": "sin",
|
| 87 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 88 |
+
"default": null,
|
| 89 |
+
"annotation": "torch.Tensor"
|
| 90 |
+
},
|
| 91 |
+
{
|
| 92 |
+
"name": "unsqueeze_dim",
|
| 93 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 94 |
+
"default": "1",
|
| 95 |
+
"annotation": "int"
|
| 96 |
+
}
|
| 97 |
+
],
|
| 98 |
+
"return_annotation": "tuple[torch.Tensor, torch.Tensor]"
|
| 99 |
+
}
|
| 100 |
+
}
|
| 101 |
+
],
|
| 102 |
+
"layers": []
|
| 103 |
+
}
|
build/torch215-xpu20261-x86_64-linux/__init__.py
ADDED
|
@@ -0,0 +1,57 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import torch
|
| 2 |
+
|
| 3 |
+
from . import layers
|
| 4 |
+
from ._ops import ops
|
| 5 |
+
|
| 6 |
+
|
| 7 |
+
def apply_rotary(
|
| 8 |
+
x1: torch.Tensor,
|
| 9 |
+
x2: torch.Tensor,
|
| 10 |
+
cos: torch.Tensor,
|
| 11 |
+
sin: torch.Tensor,
|
| 12 |
+
out1: torch.Tensor,
|
| 13 |
+
out2: torch.Tensor,
|
| 14 |
+
conj: bool,
|
| 15 |
+
) -> None:
|
| 16 |
+
ops.apply_rotary(x1, x2, cos, sin, out1, out2, conj)
|
| 17 |
+
|
| 18 |
+
|
| 19 |
+
def apply_rotary_transformers(
|
| 20 |
+
q: torch.Tensor,
|
| 21 |
+
k: torch.Tensor,
|
| 22 |
+
cos: torch.Tensor,
|
| 23 |
+
sin: torch.Tensor,
|
| 24 |
+
unsqueeze_dim: int = 1,
|
| 25 |
+
) -> tuple[torch.Tensor, torch.Tensor]:
|
| 26 |
+
"""
|
| 27 |
+
Rotary kernel implementation wrapper
|
| 28 |
+
Adapts rotary kernel implementation to match transformers apply_rotary_pos_emb signature
|
| 29 |
+
"""
|
| 30 |
+
cos = cos.unsqueeze(unsqueeze_dim)
|
| 31 |
+
sin = sin.unsqueeze(unsqueeze_dim)
|
| 32 |
+
|
| 33 |
+
q_rotated = q.clone()
|
| 34 |
+
k_rotated = k.clone()
|
| 35 |
+
|
| 36 |
+
# Get half dimension for rotation
|
| 37 |
+
half_dim = q.shape[-1] // 2
|
| 38 |
+
q1 = q_rotated[..., :half_dim]
|
| 39 |
+
q2 = q_rotated[..., half_dim:]
|
| 40 |
+
k1 = k_rotated[..., :half_dim]
|
| 41 |
+
k2 = k_rotated[..., half_dim:]
|
| 42 |
+
if cos.shape[-1] != half_dim:
|
| 43 |
+
# Trim cos/sin to match half_dim
|
| 44 |
+
cos = cos[..., :half_dim]
|
| 45 |
+
sin = sin[..., :half_dim]
|
| 46 |
+
|
| 47 |
+
apply_rotary(q1, q2, cos, sin, q1, q2, False)
|
| 48 |
+
apply_rotary(k1, k2, cos, sin, k1, k2, False)
|
| 49 |
+
return q_rotated, k_rotated
|
| 50 |
+
|
| 51 |
+
|
| 52 |
+
# Add torch compile support for functions
|
| 53 |
+
apply_rotary_transformers.can_torch_compile = True
|
| 54 |
+
|
| 55 |
+
|
| 56 |
+
# Keeping `apply_rotary` and `apply_rotary_transformers` for BC
|
| 57 |
+
__all__ = ["apply_rotary", "apply_rotary_transformers", "layers"]
|
build/torch215-xpu20261-x86_64-linux/_ops.py
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import torch
|
| 2 |
+
from . import _rotary_xpu_fe2bb66
|
| 3 |
+
ops = torch.ops._rotary_xpu_fe2bb66
|
| 4 |
+
|
| 5 |
+
def add_op_namespace_prefix(op_name: str):
|
| 6 |
+
"""
|
| 7 |
+
Prefix op by namespace.
|
| 8 |
+
"""
|
| 9 |
+
return f"_rotary_xpu_fe2bb66::{op_name}"
|
build/torch215-xpu20261-x86_64-linux/_rotary_xpu_fe2bb66.abi3.so
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:6d99f245f290b0f6f0b6925dda5460f4778a2cb2766a2a3aeca9e83c709b8193
|
| 3 |
+
size 403832
|
build/torch215-xpu20261-x86_64-linux/layers.py
ADDED
|
@@ -0,0 +1,41 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import torch
|
| 2 |
+
import torch.nn as nn
|
| 3 |
+
|
| 4 |
+
from ._ops import ops
|
| 5 |
+
|
| 6 |
+
|
| 7 |
+
class apply_rotary_transformers(nn.Module):
|
| 8 |
+
can_torch_compile = True
|
| 9 |
+
|
| 10 |
+
def forward(
|
| 11 |
+
self,
|
| 12 |
+
q: torch.Tensor,
|
| 13 |
+
k: torch.Tensor,
|
| 14 |
+
cos: torch.Tensor,
|
| 15 |
+
sin: torch.Tensor,
|
| 16 |
+
unsqueeze_dim: int = 1,
|
| 17 |
+
) -> tuple[torch.Tensor, torch.Tensor]:
|
| 18 |
+
"""
|
| 19 |
+
Rotary kernel implementation wrapper
|
| 20 |
+
Adapts rotary kernel implementation to match transformers apply_rotary_pos_emb signature
|
| 21 |
+
"""
|
| 22 |
+
cos = cos.unsqueeze(unsqueeze_dim)
|
| 23 |
+
sin = sin.unsqueeze(unsqueeze_dim)
|
| 24 |
+
|
| 25 |
+
q_rotated = q.clone()
|
| 26 |
+
k_rotated = k.clone()
|
| 27 |
+
|
| 28 |
+
# Get half dimension for rotation
|
| 29 |
+
half_dim = q.shape[-1] // 2
|
| 30 |
+
q1 = q_rotated[..., :half_dim]
|
| 31 |
+
q2 = q_rotated[..., half_dim:]
|
| 32 |
+
k1 = k_rotated[..., :half_dim]
|
| 33 |
+
k2 = k_rotated[..., half_dim:]
|
| 34 |
+
if cos.shape[-1] != half_dim:
|
| 35 |
+
# Trim cos/sin to match half_dim
|
| 36 |
+
cos = cos[..., :half_dim]
|
| 37 |
+
sin = sin[..., :half_dim]
|
| 38 |
+
|
| 39 |
+
ops.apply_rotary(q1, q2, cos, sin, q1, q2, False)
|
| 40 |
+
ops.apply_rotary(k1, k2, cos, sin, k1, k2, False)
|
| 41 |
+
return q_rotated, k_rotated
|
build/torch215-xpu20261-x86_64-linux/metadata.json
ADDED
|
@@ -0,0 +1,33 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"name": "rotary",
|
| 3 |
+
"id": "_rotary_xpu_fe2bb66",
|
| 4 |
+
"version": 2,
|
| 5 |
+
"kernels-minver": "0.14.0",
|
| 6 |
+
"license": "BSD-3-Clause",
|
| 7 |
+
"python-depends": [],
|
| 8 |
+
"kernel-depends": [],
|
| 9 |
+
"backend": {
|
| 10 |
+
"type": "xpu"
|
| 11 |
+
},
|
| 12 |
+
"digest": {
|
| 13 |
+
"algorithm": "sha256",
|
| 14 |
+
"files": {
|
| 15 |
+
"__init__.py": "qlvCb0Z6KMkcCxgjDRxjD1ofWaJ/Lqx0cTFlqrncWyE=",
|
| 16 |
+
"_ops.py": "Jeq0/zADY+Cq3MnRyzR/8jDpyYANlwKH71wgSME2/vA=",
|
| 17 |
+
"_rotary_xpu_fe2bb66.abi3.so": "bZnyRfKQsPbwtpJd2lRg9HeKLLJ2aio67KnoPHCbgZM=",
|
| 18 |
+
"layers.py": "c8ZzUlsVi1lOGhM67JSViZdKBSbIKItQxmWkXPiTEy4=",
|
| 19 |
+
"symbols.json": "PxgUNQB1dU+NEARgssX8a05dn1+R6dbDC79RXAlVxqw="
|
| 20 |
+
}
|
| 21 |
+
},
|
| 22 |
+
"provenance": {
|
| 23 |
+
"kernel-builder": {
|
| 24 |
+
"version": "0.18.0-dev0",
|
| 25 |
+
"commit": "d054906a13710b811b96697b4635f03020842733",
|
| 26 |
+
"dirty": false
|
| 27 |
+
},
|
| 28 |
+
"kernel": {
|
| 29 |
+
"commit": "fe2bb66fee6c2a77eccf08a0508dc57428d488ed",
|
| 30 |
+
"dirty": false
|
| 31 |
+
}
|
| 32 |
+
}
|
| 33 |
+
}
|
build/torch215-xpu20261-x86_64-linux/metadata.json.sigstore
ADDED
|
@@ -0,0 +1 @@
|
|
|
|
|
|
|
| 1 |
+
{"mediaType":"application/vnd.dev.sigstore.bundle.v0.3+json", "verificationMaterial":{"certificate":{"rawBytes":"MIIHKzCCBrGgAwIBAgIUGTxr8CjJXw2D0BKZbsc4vBkEHycwCgYIKoZIzj0EAwMwNzEVMBMGA1UEChMMc2lnc3RvcmUuZGV2MR4wHAYDVQQDExVzaWdzdG9yZS1pbnRlcm1lZGlhdGUwHhcNMjYxMDE5MTUwNTAzWhcNMjYxMDE5MTUxNTAzWjAAMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAECe/c5w2+6Th2YNLdAaaBP7ieyAb14NKzZW48z4l/bHfisXx9iT01mzVD0SApWG6GwN/4H+WyfmIObacdgWz6GKOCBdAwggXMMA4GA1UdDwEB/wQEAwIHgDATBgNVHSUEDDAKBggrBgEFBQcDAzAfBgNVHSMEGDAWgBTf0+nPViQRlvmo2OkoVaLGLhhkPzBrBgNVHREBAf8EYTBfhl1odHRwczovL2dpdGh1Yi5jb20vaHVnZ2luZ2ZhY2Uva2VybmVscy1jb21tdW5pdHkvLmdpdGh1Yi93b3JrZmxvd3MvYnVpbGQueWFtbEByZWZzL2hlYWRzL21haW4wOQYKKwYBBAGDvzABAQQraHR0cHM6Ly90b2tlbi5hY3Rpb25zLmdpdGh1YnVzZXJjb250ZW50LmNvbTAfBgorBgEEAYO/MAECBBF3b3JrZmxvd19kaXNwYXRjaDA2BgorBgEEAYO/MAEDBChmZTJiYjY2ZmVlNmMyYTc3ZWNjZjA4YTA1MDhkYzU3NDI4ZDQ4OGVkMBMGCisGAQQBg78wAQQEBUJ1aWxkMCsGCisGAQQBg78wAQUEHWh1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5MB0GCisGAQQBg78wAQYED3JlZnMvaGVhZHMvbWFpbjA7BgorBgEEAYO/MAEIBC0MK2h0dHBzOi8vdG9rZW4uYWN0aW9ucy5naXRodWJ1c2VyY29udGVudC5jb20wbQYKKwYBBAGDvzABCQRfDF1odHRwczovL2dpdGh1Yi5jb20vaHVnZ2luZ2ZhY2Uva2VybmVscy1jb21tdW5pdHkvLmdpdGh1Yi93b3JrZmxvd3MvYnVpbGQueWFtbEByZWZzL2hlYWRzL21haW4wOAYKKwYBBAGDvzABCgQqDChmZTJiYjY2ZmVlNmMyYTc3ZWNjZjA4YTA1MDhkYzU3NDI4ZDQ4OGVkMBsGCisGAQQBg78wAQsEDQwLc2VsZi1ob3N0ZWQwQAYKKwYBBAGDvzABDAQyDDBodHRwczovL2dpdGh1Yi5jb20vaHVnZ2luZ2ZhY2Uva2VybmVscy1jb21tdW5pdHkwOAYKKwYBBAGDvzABDQQqDChmZTJiYjY2ZmVlNmMyYTc3ZWNjZjA4YTA1MDhkYzU3NDI4ZDQ4OGVkMB8GCisGAQQBg78wAQ4EEQwPcmVmcy9oZWFkcy9tYWluMBoGCisGAQQBg78wAQ8EDAwKMTA3MTQ3NTUyOTAuBgorBgEEAYO/MAEQBCAMHmh0dHBzOi8vZ2l0aHViLmNvbS9odWdnaW5nZmFjZTAYBgorBgEEAYO/MAERBAoMCDI1NzIwNzQzMG0GCisGAQQBg78wARIEXwxdaHR0cHM6Ly9naXRodWIuY29tL2h1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5Ly5naXRodWIvd29ya2Zsb3dzL2J1aWxkLnlhbWxAcmVmcy9oZWFkcy9tYWluMDgGCisGAQQBg78wARMEKgwoZmUyYmI2NmZlZTZjMmE3N2VjY2YwOGEwNTA4ZGM1NzQyOGQ0ODhlZDAhBgorBgEEAYO/MAEUBBMMEXdvcmtmbG93X2Rpc3BhdGNoMGQGCisGAQQBg78wARUEVgxUaHR0cHM6Ly9naXRodWIuY29tL2h1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5L2FjdGlvbnMvcnVucy8zOTIzOTY0ODU2MS9hdHRlbXB0cy8xMBYGCisGAQQBg78wARYECAwGcHVibGljMEYGCisGAQQBg78wARgEOAw2cmVwbzpodWdnaW5nZmFjZS9rZXJuZWxzLWNvbW11bml0eTpyZWY6cmVmcy9oZWFkcy9tYWluMIGJBgorBgEEAdZ5AgQCBHsEeQB3AHUA3T0wasbHETJjGR4cmWc3AqJKXrjePK3/h4pygC8p7o4AAAGhVLHXKAAABAMARjBEAiB9qI14xKHVQpCrrC2Fg38csfo2aaPTchAVhJemCWBtgAIgVSxsxpR34g1B8pCILNBXz4T+WsneUCe+acQOp+DhCk0wCgYIKoZIzj0EAwMDaAAwZQIwXMX5UQz3WvcX618hy3E8bL7ud5/v/4QKNB3RHQn3DcWo0WsB2XFBkuyn6VQnWRX9AjEApvGD1h1mFz+v71+34CMq01aPVY0MJnYdKdcKcX69tBQZrNPbiCHyWYEjmgNDlkpV"}, "tlogEntries":[{"logIndex":"3322437949", "logId":{"keyId":"wNI9atQGlz+VWfO6LRygH4QUfY/8W4RFwiT5i5WRgB0="}, "kindVersion":{"kind":"hashedrekord", "version":"0.0.1"}, "integratedTime":"1792422303", "inclusionPromise":{"signedEntryTimestamp":"MEUCIEEcwr0ul/Nr1UXhNi112Xu4LMzDrCWJLKCzyc8DW/IcAiEAx3eX8oOdmaPPIoeOeODEWj6QxzmubqiLNm3wzrwdJNo="}, "inclusionProof":{"logIndex":"3200533687", "rootHash":"TOc5tmpihU3b+UWPXz9Awq6JJxTilBERThareb4vMVY=", "treeSize":"3200533691", "hashes":["iyKpPo+rVNkErnvJrsO35UvZjBHY3pbAoYg//iTgaD4=", "NYdb25sUPy0I4ca7VSqS0k+DyReFZvONww9BL9akhdE=", "JK+myHOADT0QbrkAsL7vV5PAueBbTWdDnjbfXl/xGoU=", "qqVnApUfIVPpncQRS15zpjWKLGW39MJcwo88ECA98lM=", "FkrQ6dtUthb9kcCms0Gf/BxnhqVm3GZ39iJI/u83hj8=", "ufScHir9BUey3BGLhL7+bLm3N5bX6Ia+EURiAGGIybI=", "3vMhk2fAD8w7ClLKnQ6BhAhaqiKl2TXg8PU4AO7Imsg=", "Gr/2xHVD/XILNTiHOwe8KSVBbUUb6Ggyi8OrwbFYuuE=", "LARyKX6B/3uPp0D3YKuXCbUI7EN2SaNn/N2qktNFNsA=", "+uGmdFlSXHU/F2/EH9t0YPf1KfLVa0s8IOgjHO79Z0Q=", "7WFpoaiQCzLwM3o2YI5Ngo8J7JD0OfyCCQtmXhWxVes=", "nyQV/+cWQUG5Hb2PKjQQNkQIJmz2qzAZKBQlkHGIknM=", "G+nk7mgE5h6dUmv2UY7NDJrY3WvrZY31raaO1AETt+o=", "qlTWNDzERnTBQVcHHXXVPjiUP0SsikGxfcxVlgqVFDo=", "gg9GNApNke3+zNhl4tsWtmIycCFrOMCB3lys6XuSQNQ=", "NlOclldmKPA1tMKIskqHAwuQDYHp31YwpK+OOMrMccc=", "qxzHanAzz57SDdmJe0B7bJK72NTIBbwEMGBBKvDOROw=", "xH/DCseLHr9eKoYT8qsORZK7zVdEGYWHuVtsVrD95wY="], "checkpoint":{"envelope":"rekor.sigstore.dev - 1193050959916656506\n3200533691\nTOc5tmpihU3b+UWPXz9Awq6JJxTilBERThareb4vMVY=\n\n— rekor.sigstore.dev wNI9ajBEAiA5/OgX0C+CT9PlMbPG84k/6uEVDNl7tHMA+N7F57k2NAIgcnEJNoghDkJ5Ih3Xf29gioERUcnuSdH4UUIA3nHdd2U=\n"}}, "canonicalizedBody":"eyJhcGlWZXJzaW9uIjoiMC4wLjEiLCJraW5kIjoiaGFzaGVkcmVrb3JkIiwic3BlYyI6eyJkYXRhIjp7Imhhc2giOnsiYWxnb3JpdGhtIjoic2hhMjU2IiwidmFsdWUiOiJiN2RjNDYyMmQxZjM4NjM4MjFiNTY3MWI5OWQyYjNiNzVmMjEwNjY3MWU0YmI4MzZiMmRkYzBiODQzM2M3NTFmIn19LCJzaWduYXR1cmUiOnsiY29udGVudCI6Ik1FUUNJREsxaVhLUFovYUR6em5DMnpCVlZnWmZlYXNOT3BMWlJiYjlQQ3Y4L2xTYUFpQTdMQW4xcmtLN3kzY2crbTNXM2JWa2M5OU9pT3JmcG1lWjVQbzRyUm5iRlE9PSIsInB1YmxpY0tleSI6eyJjb250ZW50IjoiTFMwdExTMUNSVWRKVGlCRFJWSlVTVVpKUTBGVVJTMHRMUzB0Q2sxSlNVaExla05EUW5KSFowRjNTVUpCWjBsVlIxUjRjamhEYWtwWWR6SkVNRUpMV21Kell6UjJRbXRGU0hsamQwTm5XVWxMYjFwSmVtb3dSVUYzVFhjS1RucEZWazFDVFVkQk1WVkZRMmhOVFdNeWJHNWpNMUoyWTIxVmRWcEhWakpOVWpSM1NFRlpSRlpSVVVSRmVGWjZZVmRrZW1SSE9YbGFVekZ3WW01U2JBcGpiVEZzV2tkc2FHUkhWWGRJYUdOT1RXcFplRTFFUlRWTlZGVjNUbFJCZWxkb1kwNU5hbGw0VFVSRk5VMVVWWGhPVkVGNlYycEJRVTFHYTNkRmQxbElDa3R2V2tsNmFqQkRRVkZaU1V0dldrbDZhakJFUVZGalJGRm5RVVZEWlM5ak5YY3lLelpVYURKWlRreGtRV0ZoUWxBM2FXVjVRV0l4TkU1TGVscFhORGdLZWpSc0wySklabWx6V0hnNWFWUXdNVzE2VmtRd1UwRndWMGMyUjNkT0x6UklLMWQ1Wm0xSlQySmhZMlJuVjNvMlIwdFBRMEprUVhkbloxaE5UVUUwUndwQk1WVmtSSGRGUWk5M1VVVkJkMGxJWjBSQlZFSm5UbFpJVTFWRlJFUkJTMEpuWjNKQ1owVkdRbEZqUkVGNlFXWkNaMDVXU0ZOTlJVZEVRVmRuUWxSbUNqQXJibEJXYVZGU2JIWnRiekpQYTI5V1lVeEhUR2hvYTFCNlFuSkNaMDVXU0ZKRlFrRm1PRVZaVkVKbWFHd3hiMlJJVW5kamVtOTJUREprY0dSSGFERUtXV2sxYW1JeU1IWmhTRlp1V2pKc2RWb3lXbWhaTWxWMllUSldlV0p0Vm5OamVURnFZakl4ZEdSWE5YQmtTR3QyVEcxa2NHUkhhREZaYVRrellqTktjZ3BhYlhoMlpETk5kbGx1Vm5CaVIxRjFaVmRHZEdKRlFubGFWMXA2VERKb2JGbFhVbnBNTWpGb1lWYzBkMDlSV1V0TGQxbENRa0ZIUkhaNlFVSkJVVkZ5Q21GSVVqQmpTRTAyVEhrNU1HSXlkR3hpYVRWb1dUTlNjR0l5TlhwTWJXUndaRWRvTVZsdVZucGFXRXBxWWpJMU1GcFhOVEJNYlU1MllsUkJaa0puYjNJS1FtZEZSVUZaVHk5TlFVVkRRa0pHTTJJelNuSmFiWGgyWkRFNWEyRllUbmRaV0ZKcVlVUkJNa0puYjNKQ1owVkZRVmxQTDAxQlJVUkNRMmh0V2xSS2FRcFphbGt5V20xV2JFNXRUWGxaVkdNeldsZE9hbHBxUVRSWlZFRXhUVVJvYTFsNlZUTk9SRWswV2tSUk5FOUhWbXROUWsxSFEybHpSMEZSVVVKbk56aDNDa0ZSVVVWQ1ZVb3hZVmQ0YTAxRGMwZERhWE5IUVZGUlFtYzNPSGRCVVZWRlNGZG9NVm95WkhCaWJXUnRXVmRPYkV3eWRHeGpiVFZzWWtoTmRGa3lPWFFLWWxoV2RXRllValZOUWpCSFEybHpSMEZSVVVKbk56aDNRVkZaUlVRelNteGFiazEyWVVkV2FGcElUWFppVjBad1ltcEJOMEpuYjNKQ1owVkZRVmxQTHdwTlFVVkpRa013VFVzeWFEQmtTRUo2VDJrNGRtUkhPWEphVnpSMVdWZE9NR0ZYT1hWamVUVnVZVmhTYjJSWFNqRmpNbFo1V1RJNWRXUkhWblZrUXpWcUNtSXlNSGRpVVZsTFMzZFpRa0pCUjBSMmVrRkNRMUZTWmtSR01XOWtTRkozWTNwdmRrd3laSEJrUjJneFdXazFhbUl5TUhaaFNGWnVXakpzZFZveVdtZ0tXVEpWZG1FeVZubGliVlp6WTNreGFtSXlNWFJrVnpWd1pFaHJka3h0WkhCa1IyZ3hXV2s1TTJJelNuSmFiWGgyWkROTmRsbHVWbkJpUjFGMVpWZEdkQXBpUlVKNVdsZGFla3d5YUd4WlYxSjZUREl4YUdGWE5IZFBRVmxMUzNkWlFrSkJSMFIyZWtGQ1EyZFJjVVJEYUcxYVZFcHBXV3BaTWxwdFZteE9iVTE1Q2xsVVl6TmFWMDVxV21wQk5GbFVRVEZOUkdocldYcFZNMDVFU1RSYVJGRTBUMGRXYTAxQ2MwZERhWE5IUVZGUlFtYzNPSGRCVVhORlJGRjNUR015Vm5NS1dta3hiMkl6VGpCYVYxRjNVVUZaUzB0M1dVSkNRVWRFZG5wQlFrUkJVWGxFUkVKdlpFaFNkMk42YjNaTU1tUndaRWRvTVZscE5XcGlNakIyWVVoV2JncGFNbXgxV2pKYWFGa3lWWFpoTWxaNVltMVdjMk41TVdwaU1qRjBaRmMxY0dSSWEzZFBRVmxMUzNkWlFrSkJSMFIyZWtGQ1JGRlJjVVJEYUcxYVZFcHBDbGxxV1RKYWJWWnNUbTFOZVZsVVl6TmFWMDVxV21wQk5GbFVRVEZOUkdocldYcFZNMDVFU1RSYVJGRTBUMGRXYTAxQ09FZERhWE5IUVZGUlFtYzNPSGNLUVZFMFJVVlJkMUJqYlZadFkzazViMXBYUm10amVUbDBXVmRzZFUxQ2IwZERhWE5IUVZGUlFtYzNPSGRCVVRoRlJFRjNTMDFVUVROTlZGRXpUbFJWZVFwUFZFRjFRbWR2Y2tKblJVVkJXVTh2VFVGRlVVSkRRVTFJYldnd1pFaENlazlwT0haYU1td3dZVWhXYVV4dFRuWmlVemx2WkZka2JtRlhOVzVhYlVacUNscFVRVmxDWjI5eVFtZEZSVUZaVHk5TlFVVlNRa0Z2VFVORVNURk9la2wzVG5wUmVrMUhNRWREYVhOSFFWRlJRbWMzT0hkQlVrbEZXSGQ0WkdGSVVqQUtZMGhOTmt4NU9XNWhXRkp2WkZkSmRWa3lPWFJNTW1neFdqSmtjR0p0WkcxWlYwNXNUREowYkdOdE5XeGlTRTEwV1RJNWRHSllWblZoV0ZJMVRIazFiZ3BoV0ZKdlpGZEpkbVF5T1hsaE1scHpZak5rZWt3eVNqRmhWM2hyVEc1c2FHSlhlRUZqYlZadFkzazViMXBYUm10amVUbDBXVmRzZFUxRVowZERhWE5IQ2tGUlVVSm5OemgzUVZKTlJVdG5kMjlhYlZWNVdXMUpNazV0V214YVZGcHFUVzFGTTA0eVZtcFpNbGwzVDBkRmQwNVVRVFJhUjAweFRucFJlVTlIVVRBS1QwUm9iRnBFUVdoQ1oyOXlRbWRGUlVGWlR5OU5RVVZWUWtKTlRVVllaSFpqYlhSdFlrYzVNMWd5VW5Cak0wSm9aRWRPYjAxSFVVZERhWE5IUVZGUlFncG5OemgzUVZKVlJWWm5lRlZoU0ZJd1kwaE5Oa3g1T1c1aFdGSnZaRmRKZFZreU9YUk1NbWd4V2pKa2NHSnRaRzFaVjA1c1RESjBiR050Tld4aVNFMTBDbGt5T1hSaVdGWjFZVmhTTlV3eVJtcGtSMngyWW01TmRtTnVWblZqZVRoNlQxUkplazlVV1RCUFJGVXlUVk01YUdSSVVteGlXRUl3WTNrNGVFMUNXVWNLUTJselIwRlJVVUpuTnpoM1FWSlpSVU5CZDBkalNGWnBZa2RzYWsxRldVZERhWE5IUVZGUlFtYzNPSGRCVW1kRlQwRjNNbU50Vm5kaWVuQnZaRmRrYmdwaFZ6VnVXbTFHYWxwVE9YSmFXRXAxV2xkNGVreFhUblppVnpFeFltMXNNR1ZVY0hsYVYxazJZMjFXYldONU9XOWFWMFpyWTNrNWRGbFhiSFZOU1VkS0NrSm5iM0pDWjBWRlFXUmFOVUZuVVVOQ1NITkZaVkZDTTBGSVZVRXpWREIzWVhOaVNFVlVTbXBIVWpSamJWZGpNMEZ4U2t0WWNtcGxVRXN6TDJnMGNIa0taME00Y0Rkdk5FRkJRVWRvVmt4SVdFdEJRVUZDUVUxQlVtcENSVUZwUWpseFNURTBlRXRJVmxGd1EzSnlRekpHWnpNNFkzTm1iekpoWVZCVVkyaEJWZ3BvU21WdFExZENkR2RCU1dkV1UzaHplSEJTTXpSbk1VSTRjRU5KVEU1Q1dIbzBWQ3RYYzI1bFZVTmxLMkZqVVU5d0swUm9RMnN3ZDBObldVbExiMXBKQ25wcU1FVkJkMDFFWVVGQmQxcFJTWGRZVFZnMVZWRjZNMWQyWTFnMk1UaG9lVE5GT0dKTU4zVmtOUzkyTHpSUlMwNUNNMUpJVVc0elJHTlhiekJYYzBJS01saEdRbXQxZVc0MlZsRnVWMUpZT1VGcVJVRndka2RFTVdneGJVWjZLM1kzTVNzek5FTk5jVEF4WVZCV1dUQk5TbTVaWkV0a1kwdGpXRFk1ZEVKUldncHlUbEJpYVVOSWVWZFpSV3B0WjA1RWJHdHdWZ290TFMwdExVVk9SQ0JEUlZKVVNVWkpRMEZVUlMwdExTMHRDZz09In19fX0="}], "timestampVerificationData":{"rfc3161Timestamps":[{"signedTimestamp":"MIICyjADAgEAMIICwQYJKoZIhvcNAQcCoIICsjCCAq4CAQMxDTALBglghkgBZQMEAgEwgbgGCyqGSIb3DQEJEAEEoIGoBIGlMIGiAgEBBgkrBgEEAYO/MAIwMTANBglghkgBZQMEAgEFAAQgWOBBFnJ+UHkju6yC4IOe864mlM4u+UZVEg5G8turV5MCFQCmqDg5YxQj2l10eYpZJlv/ksOzJhgPMjAyNjEwMTkxNTA1MDNaMAMCAQGgMqQwMC4xFTATBgNVBAoTDHNpZ3N0b3JlLmRldjEVMBMGA1UEAxMMc2lnc3RvcmUtdHNhoAAxggHbMIIB1wIBATBRMDkxFTATBgNVBAoTDHNpZ3N0b3JlLmRldjEgMB4GA1UEAxMXc2lnc3RvcmUtdHNhLXNlbGZzaWduZWQCFDoTVC8MkGHuvMFDL8uKjosqI4sMMAsGCWCGSAFlAwQCAaCB/DAaBgkqhkiG9w0BCQMxDQYLKoZIhvcNAQkQAQQwHAYJKoZIhvcNAQkFMQ8XDTI2MTAxOTE1MDUwM1owLwYJKoZIhvcNAQkEMSIEIHL/d+Gdsk5FhvhItw3Oli8pXP+Ar2mCYUKdvHb1aKDeMIGOBgsqhkiG9w0BCRACLzF/MH0wezB5BCCF+Se8B6tiysO0Q1bBDvyBssaIP9p6uebYcNnROs0FtzBVMD2kOzA5MRUwEwYDVQQKEwxzaWdzdG9yZS5kZXYxIDAeBgNVBAMTF3NpZ3N0b3JlLXRzYS1zZWxmc2lnbmVkAhQ6E1QvDJBh7rzBQy/Lio6LKiOLDDAKBggqhkjOPQQDAgRnMGUCMQDNnauydJ8PLmUFGI3F0iOoseL7NK51WYsxbyIaHU88pQaz+JIAE3aq/wnZPgqULB8CMFL2x61zq6rKh375kE6WACCrGWf1WBGjO1ECkQ21QLpugJAy8edZBzPeQ/NA9xq2kA=="}]}}, "messageSignature":{"messageDigest":{"algorithm":"SHA2_256", "digest":"t9xGItHzhjghtWcbmdKzt18hBmceS7g2st3AuEM8dR8="}, "signature":"MEQCIDK1iXKPZ/aDzznC2zBVVgZfeasNOpLZRbb9PCv8/lSaAiA7LAn1rkK7y3cg+m3W3bVkc99OiOrfpmeZ5Po4rRnbFQ=="}}
|
build/torch215-xpu20261-x86_64-linux/symbols.json
ADDED
|
@@ -0,0 +1,103 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"schema_version": 1,
|
| 3 |
+
"module": "_rotary_xpu_fe2bb66",
|
| 4 |
+
"functions": [
|
| 5 |
+
{
|
| 6 |
+
"name": "apply_rotary",
|
| 7 |
+
"qualname": "apply_rotary",
|
| 8 |
+
"module": "_rotary_xpu_fe2bb66",
|
| 9 |
+
"kind": "function",
|
| 10 |
+
"doc": null,
|
| 11 |
+
"signature": {
|
| 12 |
+
"parameters": [
|
| 13 |
+
{
|
| 14 |
+
"name": "x1",
|
| 15 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 16 |
+
"default": null,
|
| 17 |
+
"annotation": "torch.Tensor"
|
| 18 |
+
},
|
| 19 |
+
{
|
| 20 |
+
"name": "x2",
|
| 21 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 22 |
+
"default": null,
|
| 23 |
+
"annotation": "torch.Tensor"
|
| 24 |
+
},
|
| 25 |
+
{
|
| 26 |
+
"name": "cos",
|
| 27 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 28 |
+
"default": null,
|
| 29 |
+
"annotation": "torch.Tensor"
|
| 30 |
+
},
|
| 31 |
+
{
|
| 32 |
+
"name": "sin",
|
| 33 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 34 |
+
"default": null,
|
| 35 |
+
"annotation": "torch.Tensor"
|
| 36 |
+
},
|
| 37 |
+
{
|
| 38 |
+
"name": "out1",
|
| 39 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 40 |
+
"default": null,
|
| 41 |
+
"annotation": "torch.Tensor"
|
| 42 |
+
},
|
| 43 |
+
{
|
| 44 |
+
"name": "out2",
|
| 45 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 46 |
+
"default": null,
|
| 47 |
+
"annotation": "torch.Tensor"
|
| 48 |
+
},
|
| 49 |
+
{
|
| 50 |
+
"name": "conj",
|
| 51 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 52 |
+
"default": null,
|
| 53 |
+
"annotation": "bool"
|
| 54 |
+
}
|
| 55 |
+
],
|
| 56 |
+
"return_annotation": "None"
|
| 57 |
+
}
|
| 58 |
+
},
|
| 59 |
+
{
|
| 60 |
+
"name": "apply_rotary_transformers",
|
| 61 |
+
"qualname": "apply_rotary_transformers",
|
| 62 |
+
"module": "_rotary_xpu_fe2bb66",
|
| 63 |
+
"kind": "function",
|
| 64 |
+
"doc": "Rotary kernel implementation wrapper\nAdapts rotary kernel implementation to match transformers apply_rotary_pos_emb signature",
|
| 65 |
+
"signature": {
|
| 66 |
+
"parameters": [
|
| 67 |
+
{
|
| 68 |
+
"name": "q",
|
| 69 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 70 |
+
"default": null,
|
| 71 |
+
"annotation": "torch.Tensor"
|
| 72 |
+
},
|
| 73 |
+
{
|
| 74 |
+
"name": "k",
|
| 75 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 76 |
+
"default": null,
|
| 77 |
+
"annotation": "torch.Tensor"
|
| 78 |
+
},
|
| 79 |
+
{
|
| 80 |
+
"name": "cos",
|
| 81 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 82 |
+
"default": null,
|
| 83 |
+
"annotation": "torch.Tensor"
|
| 84 |
+
},
|
| 85 |
+
{
|
| 86 |
+
"name": "sin",
|
| 87 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 88 |
+
"default": null,
|
| 89 |
+
"annotation": "torch.Tensor"
|
| 90 |
+
},
|
| 91 |
+
{
|
| 92 |
+
"name": "unsqueeze_dim",
|
| 93 |
+
"kind": "POSITIONAL_OR_KEYWORD",
|
| 94 |
+
"default": "1",
|
| 95 |
+
"annotation": "int"
|
| 96 |
+
}
|
| 97 |
+
],
|
| 98 |
+
"return_annotation": "tuple[torch.Tensor, torch.Tensor]"
|
| 99 |
+
}
|
| 100 |
+
}
|
| 101 |
+
],
|
| 102 |
+
"layers": []
|
| 103 |
+
}
|