ai-edge-torch-nightly 0.2.0.dev20240805__py3-none-any.whl → 0.2.0.dev20240807__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of ai-edge-torch-nightly might be problematic. Click here for more details.
- ai_edge_torch/__init__.py +5 -5
- ai_edge_torch/{convert → _convert}/conversion.py +40 -50
- ai_edge_torch/_convert/conversion_utils.py +64 -0
- ai_edge_torch/{convert → _convert}/converter.py +83 -43
- ai_edge_torch/{convert → _convert}/fx_passes/__init__.py +9 -9
- ai_edge_torch/{convert → _convert}/fx_passes/build_aten_composite_pass.py +51 -26
- ai_edge_torch/{convert → _convert}/fx_passes/build_interpolate_composite_pass.py +11 -8
- ai_edge_torch/{convert → _convert}/fx_passes/canonicalize_pass.py +3 -4
- ai_edge_torch/{convert → _convert}/fx_passes/inject_mlir_debuginfo_pass.py +2 -2
- ai_edge_torch/_convert/fx_passes/optimize_layout_transposes_pass/__init__.py +16 -0
- ai_edge_torch/{convert → _convert}/fx_passes/optimize_layout_transposes_pass/layout_check.py +7 -5
- ai_edge_torch/{convert → _convert}/fx_passes/optimize_layout_transposes_pass/layout_mark.py +2 -0
- ai_edge_torch/{convert → _convert}/fx_passes/optimize_layout_transposes_pass/layout_partitioners/__init__.py +1 -0
- ai_edge_torch/{convert → _convert}/fx_passes/optimize_layout_transposes_pass/layout_partitioners/greedy.py +14 -6
- ai_edge_torch/{convert → _convert}/fx_passes/optimize_layout_transposes_pass/layout_partitioners/min_cut.py +5 -6
- ai_edge_torch/{convert → _convert}/fx_passes/optimize_layout_transposes_pass/layout_rewrite.py +17 -14
- ai_edge_torch/{convert → _convert}/fx_passes/optimize_layout_transposes_pass/op_func_registry.py +3 -2
- ai_edge_torch/{convert → _convert}/fx_passes/optimize_layout_transposes_pass/pass_body.py +15 -17
- ai_edge_torch/{convert → _convert}/fx_passes/optimize_layout_transposes_pass/utils.py +2 -0
- ai_edge_torch/_convert/signature.py +100 -0
- ai_edge_torch/{convert → _convert}/test/test_convert.py +50 -52
- ai_edge_torch/{convert → _convert}/test/test_convert_composites.py +16 -12
- ai_edge_torch/{convert → _convert}/test/test_convert_multisig.py +6 -4
- ai_edge_torch/{convert → _convert}/test/test_to_channel_last_io.py +5 -4
- ai_edge_torch/{convert → _convert}/to_channel_last_io.py +4 -1
- ai_edge_torch/config.py +24 -0
- ai_edge_torch/conftest.py +20 -0
- ai_edge_torch/debug/culprit.py +22 -22
- ai_edge_torch/debug/test/test_culprit.py +4 -3
- ai_edge_torch/debug/test/test_search_model.py +5 -5
- ai_edge_torch/debug/utils.py +11 -2
- ai_edge_torch/generative/examples/experimental/gemma/convert_to_tflite.py +3 -3
- ai_edge_torch/generative/examples/experimental/gemma/gemma.py +4 -1
- ai_edge_torch/generative/examples/experimental/phi/convert_to_tflite.py +5 -5
- ai_edge_torch/generative/examples/experimental/phi/phi2.py +4 -1
- ai_edge_torch/generative/examples/experimental/tiny_llama/convert_to_tflite.py +4 -5
- ai_edge_torch/generative/examples/experimental/tiny_llama/tiny_llama.py +4 -1
- ai_edge_torch/generative/examples/gemma/convert_to_tflite.py +5 -5
- ai_edge_torch/generative/examples/gemma/gemma.py +4 -1
- ai_edge_torch/generative/examples/phi2/convert_to_tflite.py +5 -5
- ai_edge_torch/generative/examples/phi2/phi2.py +4 -1
- ai_edge_torch/generative/examples/stable_diffusion/clip.py +2 -0
- ai_edge_torch/generative/examples/stable_diffusion/decoder.py +3 -2
- ai_edge_torch/generative/examples/stable_diffusion/diffusion.py +57 -20
- ai_edge_torch/generative/examples/stable_diffusion/pipeline.py +20 -9
- ai_edge_torch/generative/examples/stable_diffusion/samplers/sampler.py +1 -0
- ai_edge_torch/generative/examples/t5/t5.py +2 -2
- ai_edge_torch/generative/examples/t5/t5_attention.py +15 -13
- ai_edge_torch/generative/examples/test_models/toy_model.py +4 -1
- ai_edge_torch/generative/examples/test_models/toy_model_with_external_kv_cache.py +6 -5
- ai_edge_torch/generative/examples/test_models/toy_model_with_kv_cache.py +7 -7
- ai_edge_torch/generative/examples/tiny_llama/__init__.py +14 -0
- ai_edge_torch/generative/examples/tiny_llama/convert_to_tflite.py +5 -5
- ai_edge_torch/generative/examples/tiny_llama/tiny_llama.py +4 -1
- ai_edge_torch/generative/fx_passes/__init__.py +2 -2
- ai_edge_torch/generative/fx_passes/remove_sdpa_zero_mask_pass.py +4 -3
- ai_edge_torch/generative/layers/attention.py +35 -26
- ai_edge_torch/generative/layers/attention_utils.py +23 -12
- ai_edge_torch/generative/layers/builder.py +0 -1
- ai_edge_torch/generative/layers/feed_forward.py +6 -10
- ai_edge_torch/generative/layers/kv_cache.py +0 -1
- ai_edge_torch/generative/layers/model_config.py +2 -5
- ai_edge_torch/generative/layers/normalization.py +5 -7
- ai_edge_torch/generative/layers/rotary_position_embedding.py +3 -3
- ai_edge_torch/generative/layers/unet/blocks_2d.py +33 -26
- ai_edge_torch/generative/layers/unet/model_config.py +14 -15
- ai_edge_torch/generative/quantize/ai_edge_quantizer_glue/__init__.py +14 -0
- ai_edge_torch/generative/quantize/ai_edge_quantizer_glue/translate_recipe.py +0 -2
- ai_edge_torch/generative/quantize/quant_recipe.py +8 -6
- ai_edge_torch/generative/quantize/quant_recipe_utils.py +2 -1
- ai_edge_torch/generative/test/test_experimental_ekv.py +6 -7
- ai_edge_torch/generative/test/{loader_test.py → test_loader.py} +4 -3
- ai_edge_torch/generative/test/test_model_conversion.py +24 -25
- ai_edge_torch/generative/test/test_quantize.py +10 -5
- ai_edge_torch/generative/utilities/loader.py +12 -12
- ai_edge_torch/generative/utilities/stable_diffusion_loader.py +69 -24
- ai_edge_torch/generative/utilities/t5_loader.py +12 -13
- ai_edge_torch/hlfb/__init__.py +1 -1
- ai_edge_torch/hlfb/mark_pattern/__init__.py +9 -6
- ai_edge_torch/hlfb/mark_pattern/passes.py +23 -3
- ai_edge_torch/hlfb/mark_pattern/pattern.py +23 -23
- ai_edge_torch/hlfb/test/test_mark_pattern.py +13 -12
- ai_edge_torch/hlfb/test/test_stablehlo_composite_builder.py +8 -6
- ai_edge_torch/{convert/fx_passes/optimize_layout_transposes_pass → lowertools}/__init__.py +1 -1
- ai_edge_torch/lowertools/_shim.py +80 -0
- ai_edge_torch/lowertools/common_utils.py +89 -0
- ai_edge_torch/lowertools/odml_torch_utils.py +201 -0
- ai_edge_torch/{convert/conversion_utils.py → lowertools/torch_xla_utils.py} +35 -214
- ai_edge_torch/model.py +14 -9
- ai_edge_torch/quantize/pt2e_quantizer.py +22 -9
- ai_edge_torch/quantize/pt2e_quantizer_utils.py +13 -12
- ai_edge_torch/quantize/quant_config.py +7 -7
- ai_edge_torch/testing/model_coverage/model_coverage.py +19 -10
- ai_edge_torch/version.py +1 -1
- {ai_edge_torch_nightly-0.2.0.dev20240805.dist-info → ai_edge_torch_nightly-0.2.0.dev20240807.dist-info}/METADATA +1 -1
- ai_edge_torch_nightly-0.2.0.dev20240807.dist-info/RECORD +141 -0
- ai_edge_torch_nightly-0.2.0.dev20240805.dist-info/RECORD +0 -133
- /ai_edge_torch/{convert → _convert}/__init__.py +0 -0
- /ai_edge_torch/{convert → _convert}/fx_passes/_pass_base.py +0 -0
- /ai_edge_torch/{convert → _convert}/test/__init__.py +0 -0
- {ai_edge_torch_nightly-0.2.0.dev20240805.dist-info → ai_edge_torch_nightly-0.2.0.dev20240807.dist-info}/LICENSE +0 -0
- {ai_edge_torch_nightly-0.2.0.dev20240805.dist-info → ai_edge_torch_nightly-0.2.0.dev20240807.dist-info}/WHEEL +0 -0
- {ai_edge_torch_nightly-0.2.0.dev20240805.dist-info → ai_edge_torch_nightly-0.2.0.dev20240807.dist-info}/top_level.txt +0 -0
|
@@ -188,15 +188,18 @@ def _get_supported_config_and_operators() -> List[OperatorConfig]:
|
|
|
188
188
|
|
|
189
189
|
def _get_module_name_filter(module_name: str):
|
|
190
190
|
"""Get the module_name_filter function for a given module name, the filter accepts
|
|
191
|
+
|
|
191
192
|
a node and checks if the node comes from a module that has certain module name
|
|
192
193
|
|
|
193
194
|
For example:
|
|
194
|
-
node: linear_op = call_function[...](...) # comes from a module with name
|
|
195
|
+
node: linear_op = call_function[...](...) # comes from a module with name
|
|
196
|
+
blocks.sub.linear1
|
|
195
197
|
|
|
196
198
|
|
|
197
199
|
>> module_name_filter = _get_module_name_filter("blocks.sub")
|
|
198
200
|
>> print(module_name_filter(node))
|
|
199
|
-
True # the node is from "blocks.sub" based on the fully qualified name
|
|
201
|
+
True # the node is from "blocks.sub" based on the fully qualified name
|
|
202
|
+
"blocks.sub.linear1"
|
|
200
203
|
"""
|
|
201
204
|
|
|
202
205
|
def module_name_filter(n: Node) -> bool:
|
|
@@ -216,15 +219,19 @@ def _get_module_name_filter(module_name: str):
|
|
|
216
219
|
|
|
217
220
|
def _get_module_type_filter(tp: Callable):
|
|
218
221
|
"""Get the module_type_filter function for a given module type, the filter accepts
|
|
222
|
+
|
|
219
223
|
a node and checks if the node comes from a module that has certain module type
|
|
220
224
|
|
|
221
225
|
For example:
|
|
222
|
-
node: linear_op = call_function[...](...) # comes from a module with type
|
|
226
|
+
node: linear_op = call_function[...](...) # comes from a module with type
|
|
227
|
+
Block -> Sub -> Linear
|
|
223
228
|
|
|
224
229
|
|
|
225
|
-
>> module_type_filter = _get_module_type_filter(Sub) # submodule with type
|
|
230
|
+
>> module_type_filter = _get_module_type_filter(Sub) # submodule with type
|
|
231
|
+
`Sub`, under the `Block` submodule
|
|
226
232
|
>> print(module_type_filter(node))
|
|
227
|
-
True # the node is from the submodule `Sub` (same for `Block` and `Linear` as
|
|
233
|
+
True # the node is from the submodule `Sub` (same for `Block` and `Linear` as
|
|
234
|
+
well)
|
|
228
235
|
"""
|
|
229
236
|
|
|
230
237
|
def module_type_filter(n: Node) -> bool:
|
|
@@ -338,8 +345,11 @@ class PT2EQuantizer(Quantizer):
|
|
|
338
345
|
self, module_type: Callable, quantization_config: QuantizationConfig
|
|
339
346
|
):
|
|
340
347
|
"""Set quantization_config for a submodule with type: `module_type`, for example:
|
|
341
|
-
|
|
342
|
-
|
|
348
|
+
|
|
349
|
+
quantizer.set_module_name(Sub) or quantizer.set_module_name(nn.Linear), it
|
|
350
|
+
will quantize all supported operator/operator
|
|
351
|
+
patterns in the submodule with this module type with the given
|
|
352
|
+
`quantization_config`
|
|
343
353
|
"""
|
|
344
354
|
self.module_type_config[module_type] = quantization_config
|
|
345
355
|
return self
|
|
@@ -348,8 +358,11 @@ class PT2EQuantizer(Quantizer):
|
|
|
348
358
|
self, module_name: str, quantization_config: Optional[QuantizationConfig]
|
|
349
359
|
):
|
|
350
360
|
"""Set quantization_config for a submodule with name: `module_name`, for example:
|
|
351
|
-
|
|
352
|
-
|
|
361
|
+
|
|
362
|
+
quantizer.set_module_name("blocks.sub"), it will quantize all supported
|
|
363
|
+
operator/operator
|
|
364
|
+
patterns in the submodule with this module name with the given
|
|
365
|
+
`quantization_config`
|
|
353
366
|
"""
|
|
354
367
|
assert (
|
|
355
368
|
quantization_config is not None
|
|
@@ -31,7 +31,7 @@ from torch.ao.quantization.quantizer import SharedQuantizationSpec
|
|
|
31
31
|
from torch.ao.quantization.quantizer.utils import _annotate_input_qspec_map
|
|
32
32
|
from torch.ao.quantization.quantizer.utils import _annotate_output_qspec
|
|
33
33
|
from torch.fx import Node
|
|
34
|
-
from torch.fx.passes.utils.matcher_with_name_node_map_utils import SubgraphMatcherWithNameNodeMap
|
|
34
|
+
from torch.fx.passes.utils.matcher_with_name_node_map_utils import SubgraphMatcherWithNameNodeMap
|
|
35
35
|
from torch.fx.passes.utils.source_matcher_utils import get_source_partitions
|
|
36
36
|
import torch.nn.functional as F
|
|
37
37
|
|
|
@@ -95,9 +95,10 @@ class OperatorConfig(NamedTuple):
|
|
|
95
95
|
|
|
96
96
|
|
|
97
97
|
def _is_annotated(nodes: List[Node]):
|
|
98
|
-
"""
|
|
99
|
-
|
|
100
|
-
|
|
98
|
+
"""Checks if a list of nodes is annotated.
|
|
99
|
+
|
|
100
|
+
Given a list of nodes (that represents an operator pattern), check if any of
|
|
101
|
+
the node is annotated, return True if any of the node
|
|
101
102
|
is annotated, otherwise return False
|
|
102
103
|
"""
|
|
103
104
|
annotated = False
|
|
@@ -418,9 +419,9 @@ def _annotate_conv_bn(
|
|
|
418
419
|
quantization_config: Optional[QuantizationConfig],
|
|
419
420
|
filter_fn: Optional[Callable[[Node], bool]] = None,
|
|
420
421
|
) -> Optional[List[List[Node]]]:
|
|
421
|
-
"""
|
|
422
|
-
|
|
423
|
-
|
|
422
|
+
"""Find conv + batchnorm parititions Note: This is only used for QAT.
|
|
423
|
+
|
|
424
|
+
In PTQ, batchnorm should already be fused into the conv.
|
|
424
425
|
"""
|
|
425
426
|
return _do_annotate_conv_bn(
|
|
426
427
|
gm, quantization_config, filter_fn, has_relu=False
|
|
@@ -433,9 +434,9 @@ def _annotate_conv_bn_relu(
|
|
|
433
434
|
quantization_config: Optional[QuantizationConfig],
|
|
434
435
|
filter_fn: Optional[Callable[[Node], bool]] = None,
|
|
435
436
|
) -> Optional[List[List[Node]]]:
|
|
436
|
-
"""
|
|
437
|
-
|
|
438
|
-
|
|
437
|
+
"""Find conv + batchnorm + relu parititions Note: This is only used for QAT.
|
|
438
|
+
|
|
439
|
+
In PTQ, batchnorm should already be fused into the conv.
|
|
439
440
|
"""
|
|
440
441
|
return _do_annotate_conv_bn(gm, quantization_config, filter_fn, has_relu=True)
|
|
441
442
|
|
|
@@ -446,8 +447,8 @@ def _do_annotate_conv_bn(
|
|
|
446
447
|
filter_fn: Optional[Callable[[Node], bool]],
|
|
447
448
|
has_relu: bool,
|
|
448
449
|
) -> List[List[Node]]:
|
|
449
|
-
"""
|
|
450
|
-
|
|
450
|
+
"""Given a function that takes in a `conv_fn` and returns a conv-bn[-relu] pattern,
|
|
451
|
+
|
|
451
452
|
return a list of annotated partitions.
|
|
452
453
|
|
|
453
454
|
The output of the pattern must include a dictionary from string name to node
|
|
@@ -13,27 +13,27 @@
|
|
|
13
13
|
# limitations under the License.
|
|
14
14
|
# ==============================================================================
|
|
15
15
|
|
|
16
|
-
|
|
16
|
+
import dataclasses
|
|
17
17
|
import enum
|
|
18
18
|
from typing import Optional
|
|
19
19
|
|
|
20
|
-
from ai_edge_torch.generative.quantize import quant_attrs
|
|
21
20
|
from ai_edge_torch.generative.quantize import quant_recipe
|
|
22
21
|
from ai_edge_torch.quantize import pt2e_quantizer as pt2eq
|
|
23
22
|
|
|
24
23
|
|
|
25
|
-
@dataclass(frozen=True)
|
|
24
|
+
@dataclasses.dataclass(frozen=True)
|
|
26
25
|
class QuantConfig:
|
|
27
|
-
"""
|
|
26
|
+
"""Encapsulates a quantization configuration.
|
|
27
|
+
|
|
28
28
|
Encapsulates all different quantization methods and schemes available for
|
|
29
29
|
models converted with ai_edge_torch.
|
|
30
30
|
|
|
31
|
-
|
|
31
|
+
Attributes:
|
|
32
32
|
pt2e_quantizer: The instance of PT2EQuantizer used to quantize the model
|
|
33
33
|
with PT2E quantization. This method of quantization is not applicable to
|
|
34
34
|
models created with the Edge Generative API.
|
|
35
|
-
generative_recipe: Quantization recipe to be applied on a model created
|
|
36
|
-
|
|
35
|
+
generative_recipe: Quantization recipe to be applied on a model created with
|
|
36
|
+
the Edge Generative API.
|
|
37
37
|
"""
|
|
38
38
|
|
|
39
39
|
pt2e_quantizer: pt2eq.PT2EQuantizer = None
|
|
@@ -13,11 +13,11 @@
|
|
|
13
13
|
# limitations under the License.
|
|
14
14
|
# ==============================================================================
|
|
15
15
|
|
|
16
|
-
"""
|
|
16
|
+
"""Contains utility functions to test TFLite models exported from PyTorch."""
|
|
17
17
|
|
|
18
18
|
from collections.abc import Callable
|
|
19
19
|
|
|
20
|
-
from ai_edge_torch
|
|
20
|
+
from ai_edge_torch import model
|
|
21
21
|
import numpy as np
|
|
22
22
|
import torch
|
|
23
23
|
from torch.utils import _pytree as pytree
|
|
@@ -26,12 +26,20 @@ from torch.utils import _pytree as pytree
|
|
|
26
26
|
# Utility to flatten the order to make it deterministic.
|
|
27
27
|
# Ordering is done in left-to-right depth-first tree traversal.
|
|
28
28
|
def _flatten(data):
|
|
29
|
-
out,
|
|
29
|
+
out, _ = pytree.tree_flatten(data)
|
|
30
30
|
return out
|
|
31
31
|
|
|
32
32
|
|
|
33
33
|
# Convert a Torch Tensor to a numpy array
|
|
34
34
|
def _torch_tensors_to_np(*argv):
|
|
35
|
+
"""Converts a Torch Tensor to a numpy array.
|
|
36
|
+
|
|
37
|
+
Args:
|
|
38
|
+
*argv: A list of torch.tensor or a single torch.tensor.
|
|
39
|
+
|
|
40
|
+
Returns:
|
|
41
|
+
A list of numpy array or a single numpy array.
|
|
42
|
+
"""
|
|
35
43
|
if len(argv) > 1:
|
|
36
44
|
data = list(argv)
|
|
37
45
|
else:
|
|
@@ -57,7 +65,7 @@ def _torch_tensors_to_np(*argv):
|
|
|
57
65
|
|
|
58
66
|
|
|
59
67
|
def compare_tflite_torch(
|
|
60
|
-
edge_model: Model,
|
|
68
|
+
edge_model: model.Model,
|
|
61
69
|
torch_eval_func: Callable,
|
|
62
70
|
args=None,
|
|
63
71
|
kwargs=None,
|
|
@@ -68,15 +76,17 @@ def compare_tflite_torch(
|
|
|
68
76
|
rtol: float = 1e-5
|
|
69
77
|
):
|
|
70
78
|
"""Compares torch models and TFLite models.
|
|
79
|
+
|
|
71
80
|
Args:
|
|
72
81
|
edge_model: Serialized ai_edge_torch.model.Model object.
|
|
73
82
|
torch_eval_func: Callable function to evaluate torch model.
|
|
74
|
-
args: torch.tensor array or a callable to generate a torch.tensor array
|
|
75
|
-
|
|
83
|
+
args: torch.tensor array or a callable to generate a torch.tensor array with
|
|
84
|
+
random data, to pass into models during inference. (default None).
|
|
76
85
|
kwargs: dict of str to torch.tensor, or a callable to generate such.
|
|
77
|
-
num_valid_inputs: Defines the number of times the random inputs will be
|
|
78
|
-
|
|
79
|
-
|
|
86
|
+
num_valid_inputs: Defines the number of times the random inputs will be
|
|
87
|
+
generated (if a callable is provided for input_data).
|
|
88
|
+
signature_name: If provided, specifies the name for the signature of the
|
|
89
|
+
edge_model to run. Calls the default signature if not provided.
|
|
80
90
|
atol: Absolute tolerance (see `numpy.allclose`)
|
|
81
91
|
rtol: Relative tolerance (see `numpy.allclose`)
|
|
82
92
|
"""
|
|
@@ -118,7 +128,6 @@ def compare_tflite_torch(
|
|
|
118
128
|
for idx, np_input in enumerate(np_inputs):
|
|
119
129
|
output = get_edge_output(np_input)
|
|
120
130
|
golden_output = np_outputs[idx]
|
|
121
|
-
|
|
122
131
|
is_output_len_eq = len(golden_output) == len(output)
|
|
123
132
|
|
|
124
133
|
output = [v.astype(np.float32) for v in output]
|
ai_edge_torch/version.py
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: ai-edge-torch-nightly
|
|
3
|
-
Version: 0.2.0.
|
|
3
|
+
Version: 0.2.0.dev20240807
|
|
4
4
|
Summary: Supporting PyTorch models with the Google AI Edge TFLite runtime.
|
|
5
5
|
Home-page: https://github.com/google-ai-edge/ai-edge-torch
|
|
6
6
|
Keywords: On-Device ML,AI,Google,TFLite,PyTorch,LLMs,GenAI
|
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
ai_edge_torch/__init__.py,sha256=48qP37uHT90YPs4eIUQxCiWVwqGEX3idCUs6mQKvX1U,1168
|
|
2
|
+
ai_edge_torch/config.py,sha256=PCd9PVrbUNeVIUDFUCnW4goDWU4bjouK28yMYU6VOi0,877
|
|
3
|
+
ai_edge_torch/conftest.py,sha256=r0GTrhMRhlmOGrrkvumHN8hkmyug6WvF60vWq8wRIBI,758
|
|
4
|
+
ai_edge_torch/model.py,sha256=5DYNpFVwvI1w0JbAC1hn83NJVGS1WPX7n742419PMqs,4558
|
|
5
|
+
ai_edge_torch/version.py,sha256=Tx0N4pZr7q3ricLCAiKwDd-Bk0tX9ryYtIBsykDh-do,706
|
|
6
|
+
ai_edge_torch/_convert/__init__.py,sha256=hHLluseD2R0Hh4W6XZRIXY_dRQeYudjsrKGf6LZz65g,671
|
|
7
|
+
ai_edge_torch/_convert/conversion.py,sha256=kcv_QgNgeyDmrqwdzHicGNP68w6zF7GJg7YkMEIXp4Q,3759
|
|
8
|
+
ai_edge_torch/_convert/conversion_utils.py,sha256=Sr8qXVcTwc-ZnZmK7yxVrIOOp1S_vNrwzC0zUvLTI2o,2160
|
|
9
|
+
ai_edge_torch/_convert/converter.py,sha256=ezmaATnQi7NWDo37LUb-hEXtZSmT7_AT6vqXC6Fcq1o,8615
|
|
10
|
+
ai_edge_torch/_convert/signature.py,sha256=zSSG4_u38pOw08pHgXssZDK_EanACDx7lcI-PzBgh5A,3313
|
|
11
|
+
ai_edge_torch/_convert/to_channel_last_io.py,sha256=_31phf7TYgZY2ftpNbrdlB1RhDium1lz_BXEQ6IsMFc,2893
|
|
12
|
+
ai_edge_torch/_convert/fx_passes/__init__.py,sha256=hVuNftOcZIpwkUcPab44mhFmi9Z1f1REV5o3j39Sf-w,2818
|
|
13
|
+
ai_edge_torch/_convert/fx_passes/_pass_base.py,sha256=WVYZuocpygHAzk9u1GNoGowAIOHTlJXyA_NklmYkRms,1672
|
|
14
|
+
ai_edge_torch/_convert/fx_passes/build_aten_composite_pass.py,sha256=3aShe8t2VTtgWntmmVBCOwurFeBo0YI6olkprfLFxSY,9126
|
|
15
|
+
ai_edge_torch/_convert/fx_passes/build_interpolate_composite_pass.py,sha256=izep1DsIz2jwVtqB0CBKg4FcTeEzuPfd2G5Qo4gpTk4,4274
|
|
16
|
+
ai_edge_torch/_convert/fx_passes/canonicalize_pass.py,sha256=8jcKqWzG7p5r3Cu7DXNP-4o4X2bqLaoXY7N6W8QsZXo,1582
|
|
17
|
+
ai_edge_torch/_convert/fx_passes/inject_mlir_debuginfo_pass.py,sha256=WKI8V9-V50agkiNVpBFWWp0BEpUfemdENuN1cEaGD-g,2370
|
|
18
|
+
ai_edge_torch/_convert/fx_passes/optimize_layout_transposes_pass/__init__.py,sha256=lxnoH-WGLeiQIF8XjMGodjiZEFTxucl7g05N7MR9OPk,796
|
|
19
|
+
ai_edge_torch/_convert/fx_passes/optimize_layout_transposes_pass/layout_check.py,sha256=DIfrWDZ1ufAN_uH-oW3k66jTciY7DlLDAb6UKMN14zE,7528
|
|
20
|
+
ai_edge_torch/_convert/fx_passes/optimize_layout_transposes_pass/layout_mark.py,sha256=4RyGUwR22bZqkn_TnptenFJodc_Q43f4_SBG7gmTbos,1621
|
|
21
|
+
ai_edge_torch/_convert/fx_passes/optimize_layout_transposes_pass/layout_rewrite.py,sha256=GcxDxj-5KKWTR5xnRKuhRsb6TDHLCXiPXjGnc_97QXs,12604
|
|
22
|
+
ai_edge_torch/_convert/fx_passes/optimize_layout_transposes_pass/op_func_registry.py,sha256=bsYnudRlXp1PJlu4GF25KSogSkBGQPSaecBrUTONKaw,1031
|
|
23
|
+
ai_edge_torch/_convert/fx_passes/optimize_layout_transposes_pass/pass_body.py,sha256=HXTDEP6_Z0I0s58H6I0yHz9qrkOxptIjKhxywfe8F80,10637
|
|
24
|
+
ai_edge_torch/_convert/fx_passes/optimize_layout_transposes_pass/utils.py,sha256=YLMttMg5PdvXTtQ8lxpKb434UGVvYVALV1-xeuH4UGc,2131
|
|
25
|
+
ai_edge_torch/_convert/fx_passes/optimize_layout_transposes_pass/layout_partitioners/__init__.py,sha256=D8VX8SbCzfoyvPgMFHK7yxD7R-bzLxp2gfdKxgrWekA,742
|
|
26
|
+
ai_edge_torch/_convert/fx_passes/optimize_layout_transposes_pass/layout_partitioners/greedy.py,sha256=L_x8BrF7UDah-SYl-pG11I6CIckdU9kBTUHcmwW4cts,2420
|
|
27
|
+
ai_edge_torch/_convert/fx_passes/optimize_layout_transposes_pass/layout_partitioners/min_cut.py,sha256=mzfL9cf0qBnpmxM_OlMQFvQsEZV2B_Mia9yEJV4J7rI,7135
|
|
28
|
+
ai_edge_torch/_convert/test/__init__.py,sha256=hHLluseD2R0Hh4W6XZRIXY_dRQeYudjsrKGf6LZz65g,671
|
|
29
|
+
ai_edge_torch/_convert/test/test_convert.py,sha256=y0ZRivdglGx217rnacze8N6nd7aafk28NkbBFUSa9DQ,13121
|
|
30
|
+
ai_edge_torch/_convert/test/test_convert_composites.py,sha256=CBiOqq-m7QT2ggBI1jBl9MkTIT5d0nK1tA0BUga0LGs,7994
|
|
31
|
+
ai_edge_torch/_convert/test/test_convert_multisig.py,sha256=4jm5blAfzLMjvrJt0ntuG_Fgy4Ie3SoUOGBOy9tf6bg,4725
|
|
32
|
+
ai_edge_torch/_convert/test/test_to_channel_last_io.py,sha256=jLAmyHw5llT2ff8qA8mem3eVN57e_o5EpBnW72ZtP2I,3026
|
|
33
|
+
ai_edge_torch/debug/__init__.py,sha256=N05Mmvi41KgSuK0JhuMejERESgP8QekiGdp9_PEyuKU,742
|
|
34
|
+
ai_edge_torch/debug/culprit.py,sha256=7UYVpVWpiCXbMAyThVtHt_kc_poT7sCTh5UUPvcycgk,14832
|
|
35
|
+
ai_edge_torch/debug/utils.py,sha256=vOAL4t6Lj47uhKapfEsc_WHmvwew3eKO9hSJyzvPXnU,1625
|
|
36
|
+
ai_edge_torch/debug/test/__init__.py,sha256=hHLluseD2R0Hh4W6XZRIXY_dRQeYudjsrKGf6LZz65g,671
|
|
37
|
+
ai_edge_torch/debug/test/test_culprit.py,sha256=GjQv4bpz5EVwgxQt7HmpqTzIo_BpsvRmDVWeOmr29HE,3775
|
|
38
|
+
ai_edge_torch/debug/test/test_search_model.py,sha256=3rUSl7pFBfWjK47YhK5B8J1bXrvNhKKIEuNDNfFShHc,1670
|
|
39
|
+
ai_edge_torch/experimental/__init__.py,sha256=hHLluseD2R0Hh4W6XZRIXY_dRQeYudjsrKGf6LZz65g,671
|
|
40
|
+
ai_edge_torch/generative/__init__.py,sha256=hHLluseD2R0Hh4W6XZRIXY_dRQeYudjsrKGf6LZz65g,671
|
|
41
|
+
ai_edge_torch/generative/examples/__init__.py,sha256=hHLluseD2R0Hh4W6XZRIXY_dRQeYudjsrKGf6LZz65g,671
|
|
42
|
+
ai_edge_torch/generative/examples/experimental/__init__.py,sha256=hHLluseD2R0Hh4W6XZRIXY_dRQeYudjsrKGf6LZz65g,671
|
|
43
|
+
ai_edge_torch/generative/examples/experimental/gemma/__init__.py,sha256=hHLluseD2R0Hh4W6XZRIXY_dRQeYudjsrKGf6LZz65g,671
|
|
44
|
+
ai_edge_torch/generative/examples/experimental/gemma/convert_to_tflite.py,sha256=lpiPFSh3SJd6WwuZ0QegSva3__iSz2tUD7L7QfkAe4I,3085
|
|
45
|
+
ai_edge_torch/generative/examples/experimental/gemma/gemma.py,sha256=QoFbUUCTJrW1IYZg0vfb2-K-X0q1-NJFbWNGPQGwBgk,6688
|
|
46
|
+
ai_edge_torch/generative/examples/experimental/phi/__init__.py,sha256=hHLluseD2R0Hh4W6XZRIXY_dRQeYudjsrKGf6LZz65g,671
|
|
47
|
+
ai_edge_torch/generative/examples/experimental/phi/convert_to_tflite.py,sha256=DavrdGmqUgoThsGNRv3LXMW5tvJdYEvj66Hf1XRqkXU,3055
|
|
48
|
+
ai_edge_torch/generative/examples/experimental/phi/phi2.py,sha256=u-VJX5mjzQKspXtAhNi53LCITtag-3nCaRTKdk5Z1sc,6231
|
|
49
|
+
ai_edge_torch/generative/examples/experimental/tiny_llama/__init__.py,sha256=hHLluseD2R0Hh4W6XZRIXY_dRQeYudjsrKGf6LZz65g,671
|
|
50
|
+
ai_edge_torch/generative/examples/experimental/tiny_llama/convert_to_tflite.py,sha256=xPVvHQjLJHFiRv_-Fy2sDm0Aft7SG8SXiV6o3rF03cQ,3108
|
|
51
|
+
ai_edge_torch/generative/examples/experimental/tiny_llama/tiny_llama.py,sha256=GOLLd9yCBnlNXeW7xrVy1wjOltcTbRdSpiJycbMj8TA,6372
|
|
52
|
+
ai_edge_torch/generative/examples/gemma/__init__.py,sha256=hHLluseD2R0Hh4W6XZRIXY_dRQeYudjsrKGf6LZz65g,671
|
|
53
|
+
ai_edge_torch/generative/examples/gemma/convert_to_tflite.py,sha256=w589IJETATd6Z9_1XCIWbrlCV3E92X_5ac3VVCVFXG0,2522
|
|
54
|
+
ai_edge_torch/generative/examples/gemma/gemma.py,sha256=5Dn9JgJiXN-hWGQj9YqCr8Iik8mh5s0dX0VfyY8KDDo,6236
|
|
55
|
+
ai_edge_torch/generative/examples/phi2/__init__.py,sha256=hHLluseD2R0Hh4W6XZRIXY_dRQeYudjsrKGf6LZz65g,671
|
|
56
|
+
ai_edge_torch/generative/examples/phi2/convert_to_tflite.py,sha256=ON6zLO-nFS8eJ2yhyWzT5x2Somr-Ca-VjpjT7OGFU10,2506
|
|
57
|
+
ai_edge_torch/generative/examples/phi2/phi2.py,sha256=C_kFYsPrEQ9GJCnc6h-jh8B5qQryvEpI6O6t4FBxg1I,5858
|
|
58
|
+
ai_edge_torch/generative/examples/stable_diffusion/__init__.py,sha256=hHLluseD2R0Hh4W6XZRIXY_dRQeYudjsrKGf6LZz65g,671
|
|
59
|
+
ai_edge_torch/generative/examples/stable_diffusion/attention.py,sha256=kDWG6MlIGa89zC5KSRcJlw2c4ITuw8KcchtfmF55f4g,3545
|
|
60
|
+
ai_edge_torch/generative/examples/stable_diffusion/clip.py,sha256=VR09iAnj1e-sr-oam2rh24Wnb_JdZZQvpJIjylfgnS8,4468
|
|
61
|
+
ai_edge_torch/generative/examples/stable_diffusion/convert_to_tflite.py,sha256=7ra36nM5tQwSw-vi6QCFLx5IssZhT-6yVK4H3XsAc4w,5044
|
|
62
|
+
ai_edge_torch/generative/examples/stable_diffusion/decoder.py,sha256=slieF2-QcDCwd4DRZ7snsZIphT97IXpp4plRRsRSwL8,13983
|
|
63
|
+
ai_edge_torch/generative/examples/stable_diffusion/diffusion.py,sha256=7oUIJ6HO0vmlhFdkXpqGm9KTB-eM4Ob9VrHSDlIGFOg,30926
|
|
64
|
+
ai_edge_torch/generative/examples/stable_diffusion/encoder.py,sha256=CAPsW84A8f00nS6fLFeh_XUjCPsDCA5UxHOUsMrLfSU,3450
|
|
65
|
+
ai_edge_torch/generative/examples/stable_diffusion/pipeline.py,sha256=Wc94X_kEnbInTAXFgf-VuCvv1A0HxxWrFZ7Tsq3Z8n0,8662
|
|
66
|
+
ai_edge_torch/generative/examples/stable_diffusion/tokenizer.py,sha256=xychak9hdLd6ieXBYEwrK2BkF8NRZWZSSCijIsESpBA,3420
|
|
67
|
+
ai_edge_torch/generative/examples/stable_diffusion/util.py,sha256=XIXIB0vCvQKOGyIyiZeiIA5DLeSXjkudywvJS4FK7AM,2431
|
|
68
|
+
ai_edge_torch/generative/examples/stable_diffusion/samplers/__init__.py,sha256=uQWKzCD_49ackNFrt50H04dkDXxfAwUCtMWWQre5SVE,830
|
|
69
|
+
ai_edge_torch/generative/examples/stable_diffusion/samplers/k_euler.py,sha256=wBBNM24waZ57M1rXonwesfUkKe9DqpqO3eW6BfZkrD0,2323
|
|
70
|
+
ai_edge_torch/generative/examples/stable_diffusion/samplers/k_euler_ancestral.py,sha256=c89ldwtuQ2_yspGrGa7oh7fsvTt6A86Whxa6fBK9YOQ,2526
|
|
71
|
+
ai_edge_torch/generative/examples/stable_diffusion/samplers/k_lms.py,sha256=ZE6HyOoBJrmTh54KVFf7DjNBnBS0pT4cgviYaq8HGMU,2801
|
|
72
|
+
ai_edge_torch/generative/examples/stable_diffusion/samplers/sampler.py,sha256=RxR5rw0wFFm_5CfAY-3-EIz83vhM9EKye8Bb5zBb0Ok,1341
|
|
73
|
+
ai_edge_torch/generative/examples/t5/__init__.py,sha256=hHLluseD2R0Hh4W6XZRIXY_dRQeYudjsrKGf6LZz65g,671
|
|
74
|
+
ai_edge_torch/generative/examples/t5/convert_to_tflite.py,sha256=CZVuNEL8OHPkdsz70WOvNpTJ9LFkiDnlwgJiXfUZCVk,4548
|
|
75
|
+
ai_edge_torch/generative/examples/t5/t5.py,sha256=6Rkisv7UI2w5KV8ogPPzeIiPWYwDLfFfSIncqD7Eenc,20854
|
|
76
|
+
ai_edge_torch/generative/examples/t5/t5_attention.py,sha256=gp7DV8pv4FwICQhYlUYfYZ7BE5jzDIsD_V3a_4-T4Ds,8492
|
|
77
|
+
ai_edge_torch/generative/examples/test_models/__init__.py,sha256=hHLluseD2R0Hh4W6XZRIXY_dRQeYudjsrKGf6LZz65g,671
|
|
78
|
+
ai_edge_torch/generative/examples/test_models/toy_model.py,sha256=DhxOrIKe-tilBjbh1q4MsmCmmKMc4c1BPUzhnaJDD6M,3955
|
|
79
|
+
ai_edge_torch/generative/examples/test_models/toy_model_with_external_kv_cache.py,sha256=bW0QB-_h9cfwAQf11AxFxOBq3HrEep_UlpBjXz3JSew,5801
|
|
80
|
+
ai_edge_torch/generative/examples/test_models/toy_model_with_kv_cache.py,sha256=CRja_CT0_eaH16rSDxwHKJS_CGUJMW0Fxd4r45Ii8Uo,4833
|
|
81
|
+
ai_edge_torch/generative/examples/tiny_llama/__init__.py,sha256=hHLluseD2R0Hh4W6XZRIXY_dRQeYudjsrKGf6LZz65g,671
|
|
82
|
+
ai_edge_torch/generative/examples/tiny_llama/convert_to_tflite.py,sha256=CLRqO7ycMbpy7J3_Czp1sLx6hcdwGD9zVq04yRba0e8,2550
|
|
83
|
+
ai_edge_torch/generative/examples/tiny_llama/tiny_llama.py,sha256=nu3Il8Vxe7JwM8-AnGNXoGoZ9eVXKHMYEAqVEP-gwe8,5929
|
|
84
|
+
ai_edge_torch/generative/fx_passes/__init__.py,sha256=fmNNXawJ722M4cTUuTx289rT0NHxBEsOy_k8baqCOms,1173
|
|
85
|
+
ai_edge_torch/generative/fx_passes/remove_sdpa_zero_mask_pass.py,sha256=sXis0U4u-RoIp_NyrmWJNnqFqpqRuZOrhfsJIO6rMps,2028
|
|
86
|
+
ai_edge_torch/generative/layers/__init__.py,sha256=hHLluseD2R0Hh4W6XZRIXY_dRQeYudjsrKGf6LZz65g,671
|
|
87
|
+
ai_edge_torch/generative/layers/attention.py,sha256=xq10Gw4GudK4M2eY8-H4fi3qmpmZCfE-CziAXDZvqiQ,12177
|
|
88
|
+
ai_edge_torch/generative/layers/attention_utils.py,sha256=2hzBVZvWCqqLfI-f3RJA1hi6T8cuaIJBPt8cdjQCA5s,6420
|
|
89
|
+
ai_edge_torch/generative/layers/builder.py,sha256=JvPmwrG8_M4-kO2MM6sDZhpS32Wx3wVVhlVO4yPJKJ0,4161
|
|
90
|
+
ai_edge_torch/generative/layers/feed_forward.py,sha256=RukSYr9h_DehcYVZWLS_rfCTY73Uj__pTRUatjxJtv8,2788
|
|
91
|
+
ai_edge_torch/generative/layers/kv_cache.py,sha256=Ob8QeXWW5xt-6hcGA0uoC48eRQ8lfvKca8JbWtFx2CE,3082
|
|
92
|
+
ai_edge_torch/generative/layers/model_config.py,sha256=CTvKFwsBR3Rc-Kf73NA7k0799m1WnEvaEBKCnnfNkyo,4961
|
|
93
|
+
ai_edge_torch/generative/layers/normalization.py,sha256=u8lv0p-ktKcRqCDlOqZQa9WQcfDK9JM2IaUQFQdn7xs,1860
|
|
94
|
+
ai_edge_torch/generative/layers/rotary_position_embedding.py,sha256=CZqOoibLcHvUgrgaIIWAlmk3XgE2inzx340MN-npLoU,1347
|
|
95
|
+
ai_edge_torch/generative/layers/scaled_dot_product_attention.py,sha256=6WMe-A5KSSujQcZ34hIeSnnor3AXrw10cQ5FKy-30IU,3390
|
|
96
|
+
ai_edge_torch/generative/layers/unet/__init__.py,sha256=hHLluseD2R0Hh4W6XZRIXY_dRQeYudjsrKGf6LZz65g,671
|
|
97
|
+
ai_edge_torch/generative/layers/unet/blocks_2d.py,sha256=4a0wh0co8Avz1wvxS3XqsgrgL5G-X1GSARI5Rj3L-xg,26995
|
|
98
|
+
ai_edge_torch/generative/layers/unet/builder.py,sha256=zAqWXdimmMrQRhmE_t9XkS68mh6PSrzwb-2NZZXrR5I,1901
|
|
99
|
+
ai_edge_torch/generative/layers/unet/model_config.py,sha256=NvBJj09a7ZC-ChGE_ex-_kLnE_fjzrY6txbLSh1pMKA,9208
|
|
100
|
+
ai_edge_torch/generative/quantize/__init__.py,sha256=hHLluseD2R0Hh4W6XZRIXY_dRQeYudjsrKGf6LZz65g,671
|
|
101
|
+
ai_edge_torch/generative/quantize/example.py,sha256=mqi3zFUp4w198DGnRkmZCWUZdUXTkvg1_tdTdOk9IkA,1535
|
|
102
|
+
ai_edge_torch/generative/quantize/quant_attrs.py,sha256=n1Fm8BFC8gJa_oiwwAOOghJyHtOXYZ4q-5ZRy4pHrIw,1957
|
|
103
|
+
ai_edge_torch/generative/quantize/quant_recipe.py,sha256=tKnuJq6hPD23JPCB9nPAlE1UHAwdbChkgPShiVaz4CE,5156
|
|
104
|
+
ai_edge_torch/generative/quantize/quant_recipe_utils.py,sha256=4fgmP_GgeiFUOkIaC9ZZXC12eO3DQZdrWDXRz5YXiwU,2270
|
|
105
|
+
ai_edge_torch/generative/quantize/quant_recipes.py,sha256=0Kvr_o7pbMnE8VMe6Ml0FBxkHM6RJ3C14B2I1mjItjc,2030
|
|
106
|
+
ai_edge_torch/generative/quantize/supported_schemes.py,sha256=FjdycEOvxRgBmQdZVufetPvkDoD7rUowIOSKV9oV5Kk,1418
|
|
107
|
+
ai_edge_torch/generative/quantize/ai_edge_quantizer_glue/__init__.py,sha256=hHLluseD2R0Hh4W6XZRIXY_dRQeYudjsrKGf6LZz65g,671
|
|
108
|
+
ai_edge_torch/generative/quantize/ai_edge_quantizer_glue/translate_recipe.py,sha256=sSHc_4hUEvi-3KmqbpqWbrRKBjCI1AOctM3dr2EH3vk,5263
|
|
109
|
+
ai_edge_torch/generative/test/__init__.py,sha256=hHLluseD2R0Hh4W6XZRIXY_dRQeYudjsrKGf6LZz65g,671
|
|
110
|
+
ai_edge_torch/generative/test/test_experimental_ekv.py,sha256=T5-O2RVLJTH7v9w1_uBfp-Y7o3sdGzYq2Tj2wLRNHyI,4357
|
|
111
|
+
ai_edge_torch/generative/test/test_loader.py,sha256=1ZqAq0HY5uIioumsReOVIsbGBx0WkYcl18PvttdJKrk,3381
|
|
112
|
+
ai_edge_torch/generative/test/test_model_conversion.py,sha256=4RTB1oPA2eWPyuof2-ZB1BxVKzKy5Q9vCux7psmV6zc,7615
|
|
113
|
+
ai_edge_torch/generative/test/test_quantize.py,sha256=3SmJm7Kq98gAneU6IGwwJrJYCVH1qwWR6oUxPfb6qiI,5346
|
|
114
|
+
ai_edge_torch/generative/utilities/__init__.py,sha256=-_jxnnFnCgnTU4oTm4MnRsvL5lqhomBNdFBbqfmfHPo,720
|
|
115
|
+
ai_edge_torch/generative/utilities/loader.py,sha256=XfVRvwvZyQuofctxIedLNDKQrsy9UlRr4wpScZJLWcw,11779
|
|
116
|
+
ai_edge_torch/generative/utilities/stable_diffusion_loader.py,sha256=pKp3AMSbS3otCvgwJRF5M1l4JRNKk-aCKimXzIMSrds,35679
|
|
117
|
+
ai_edge_torch/generative/utilities/t5_loader.py,sha256=jz2qnDtH6oyxcqaBwEVfiiKmq_93LTDeUKNJ2cWpLwg,16856
|
|
118
|
+
ai_edge_torch/hlfb/__init__.py,sha256=sH4um75na-O8tzxN6chFyp6Y4xnexsE7kUQpZySv6dE,735
|
|
119
|
+
ai_edge_torch/hlfb/mark_pattern/__init__.py,sha256=cjTprggj_cuktSCm7-A25e7Shop3k63ylp7sdZmtZ8o,4790
|
|
120
|
+
ai_edge_torch/hlfb/mark_pattern/passes.py,sha256=pjkKcI1nHECPluAt87cFBrt1DP0f3ge7rHq1NhCkBIE,1936
|
|
121
|
+
ai_edge_torch/hlfb/mark_pattern/pattern.py,sha256=uiYRfzD1T8deCEAGfdAFusRbI41m14zeTt0Lz5lNT3M,9808
|
|
122
|
+
ai_edge_torch/hlfb/test/__init__.py,sha256=hHLluseD2R0Hh4W6XZRIXY_dRQeYudjsrKGf6LZz65g,671
|
|
123
|
+
ai_edge_torch/hlfb/test/test_mark_pattern.py,sha256=oYB0RPW-tHOwW9gQFH9GtHKO_Mmh1lkoiemXmTfySqc,4383
|
|
124
|
+
ai_edge_torch/hlfb/test/test_stablehlo_composite_builder.py,sha256=3vSX5E9ZFFhTPZZX6TMiAsGa_kaXABbN851bRbTFsC0,8297
|
|
125
|
+
ai_edge_torch/lowertools/__init__.py,sha256=0M9TOR80sS5y6dikOsIFYx0P9IomqAdNIuYpgkP4PcI,693
|
|
126
|
+
ai_edge_torch/lowertools/_shim.py,sha256=ilL7x1ebUBj1clg7bagrX4y_nVSHiGrvDrOVfuTeenE,3039
|
|
127
|
+
ai_edge_torch/lowertools/common_utils.py,sha256=lX3XjhvDlQf_M0VQ0rLBb9xiHljKX53ypMMcHxwMSrs,2904
|
|
128
|
+
ai_edge_torch/lowertools/odml_torch_utils.py,sha256=yH2Q-dDopJNQausnEAuZWwlWjIYu6qWvklsdRaBRvP8,6112
|
|
129
|
+
ai_edge_torch/lowertools/torch_xla_utils.py,sha256=UPhboeMr25jOCXrZoQwtTOfg-ucXoKG0fXkuehGTEYo,8430
|
|
130
|
+
ai_edge_torch/quantize/__init__.py,sha256=aB5dXot04bqyUhpsDFvxt9CIi15QAC4euvqOndJ0XLU,714
|
|
131
|
+
ai_edge_torch/quantize/pt2e_quantizer.py,sha256=CKIEhs9jCcna64qj1jFH9zEbMbRdyeGV_TmSqEBPjes,15741
|
|
132
|
+
ai_edge_torch/quantize/pt2e_quantizer_utils.py,sha256=eARD1LxLi5m7Z0n_psAkeX_AtUp4fNkE--oECBfivv4,36208
|
|
133
|
+
ai_edge_torch/quantize/quant_config.py,sha256=U0KisSW-uZkoMJcy-ZP9W57p3tsa594fr9PphCRdO8o,3172
|
|
134
|
+
ai_edge_torch/testing/__init__.py,sha256=hHLluseD2R0Hh4W6XZRIXY_dRQeYudjsrKGf6LZz65g,671
|
|
135
|
+
ai_edge_torch/testing/model_coverage/__init__.py,sha256=5P8J6Zk5YYtDvTBucFvB9NGSRI7Gw_24WnrbhXgycEE,765
|
|
136
|
+
ai_edge_torch/testing/model_coverage/model_coverage.py,sha256=UPB448aMDUyC0HNYVqio2rcJPnDN0tBQMP08J6vPYew,4718
|
|
137
|
+
ai_edge_torch_nightly-0.2.0.dev20240807.dist-info/LICENSE,sha256=z8d0m5b2O9McPEK1xHG_dWgUBT6EfBDz6wA0F7xSPTA,11358
|
|
138
|
+
ai_edge_torch_nightly-0.2.0.dev20240807.dist-info/METADATA,sha256=Sy2vubGRyHOPZRSI8E0p_wJwHe_kmXfhoxmwNY0uBtY,1885
|
|
139
|
+
ai_edge_torch_nightly-0.2.0.dev20240807.dist-info/WHEEL,sha256=eOLhNAGa2EW3wWl_TU484h7q1UNgy0JXjjoqKoxAAQc,92
|
|
140
|
+
ai_edge_torch_nightly-0.2.0.dev20240807.dist-info/top_level.txt,sha256=5KXRaF2hwkApYxf7Y8y_tVb9aulGTlbOoNdbx1aKRkE,14
|
|
141
|
+
ai_edge_torch_nightly-0.2.0.dev20240807.dist-info/RECORD,,
|
|
@@ -1,133 +0,0 @@
|
|
|
1
|
-
ai_edge_torch/__init__.py,sha256=WTuorXzCALfr89FC4kX_PBtKOQLipN1hcW2tMDSQW9w,1100
|
|
2
|
-
ai_edge_torch/model.py,sha256=pSyY9O7J1i-SJu7g4mFD853MJBNFE6LSzBgJw7dtWuI,4494
|
|
3
|
-
ai_edge_torch/version.py,sha256=v9FIJo70Ip9rWQjkZBBntgskfWC49tED7nTExP6nEsI,706
|
|
4
|
-
ai_edge_torch/convert/__init__.py,sha256=hHLluseD2R0Hh4W6XZRIXY_dRQeYudjsrKGf6LZz65g,671
|
|
5
|
-
ai_edge_torch/convert/conversion.py,sha256=bkOyaTTZR9lT1VJMxwCSjcplheYv1HNSwt8A9kEo388,4183
|
|
6
|
-
ai_edge_torch/convert/conversion_utils.py,sha256=GAOFepARe_vxOaetplMBBaexxojSijJzXvkxft88-Lc,13945
|
|
7
|
-
ai_edge_torch/convert/converter.py,sha256=6BoHl_GEIOkTr1oBg-VzZb5tr6Rv9yDwxKczYd6cu1o,7956
|
|
8
|
-
ai_edge_torch/convert/to_channel_last_io.py,sha256=b7Q0_6Lam6IV-3TyhabVTMS7j0ppFpKDOIHTNAw2PnI,2814
|
|
9
|
-
ai_edge_torch/convert/fx_passes/__init__.py,sha256=D4Xe8YmeP2N0yEN_bc7pEJH47KkwGFf4COZOILmDL4w,2809
|
|
10
|
-
ai_edge_torch/convert/fx_passes/_pass_base.py,sha256=WVYZuocpygHAzk9u1GNoGowAIOHTlJXyA_NklmYkRms,1672
|
|
11
|
-
ai_edge_torch/convert/fx_passes/build_aten_composite_pass.py,sha256=QaZ5JV7RazGbC2Khdai795vlO5jDc3yhgx3HHNmzHDs,8246
|
|
12
|
-
ai_edge_torch/convert/fx_passes/build_interpolate_composite_pass.py,sha256=BWSU9nkD5DzxHI_WGcs9uH6qKWCw0XB2etDEV6PsZkg,4181
|
|
13
|
-
ai_edge_torch/convert/fx_passes/canonicalize_pass.py,sha256=eW0Yae2cL2ALYVkhsuk3wX8v41P6bkGaABtRgdPCdxk,1672
|
|
14
|
-
ai_edge_torch/convert/fx_passes/inject_mlir_debuginfo_pass.py,sha256=aRT8hTS3n9ie28lgu6mygtFO6Ypwu0qjNb0c81v9HLs,2448
|
|
15
|
-
ai_edge_torch/convert/fx_passes/optimize_layout_transposes_pass/__init__.py,sha256=VA9bekxPVhLk4MYlIRXnOzrSnbCtUmGj7OQ_fJcKQtc,795
|
|
16
|
-
ai_edge_torch/convert/fx_passes/optimize_layout_transposes_pass/layout_check.py,sha256=KrMDtpRVgxpS6dxgT_shjYYjL8Ij3L0PNLpn-StSUU0,7546
|
|
17
|
-
ai_edge_torch/convert/fx_passes/optimize_layout_transposes_pass/layout_mark.py,sha256=uXCHC23pWN-3JmDtAErWbSUnL8jjlQgUAy4gqtfDsQU,1560
|
|
18
|
-
ai_edge_torch/convert/fx_passes/optimize_layout_transposes_pass/layout_rewrite.py,sha256=_FuPbJewiPTqb-aNXR-qiujvsI4J0z6p5JWp8AIg6qE,12496
|
|
19
|
-
ai_edge_torch/convert/fx_passes/optimize_layout_transposes_pass/op_func_registry.py,sha256=o9PAcAgvS5uG0xA2io2XEWaELgwPODRRJAkfegob4so,981
|
|
20
|
-
ai_edge_torch/convert/fx_passes/optimize_layout_transposes_pass/pass_body.py,sha256=sJqKFDR67svsMh9t0jFav0CzpMZCw29PV3yJ-LCjtoY,10752
|
|
21
|
-
ai_edge_torch/convert/fx_passes/optimize_layout_transposes_pass/utils.py,sha256=bItkXVaPA9THcFypAmqldpkLuD8WpOFmKlhVbBJJkPk,2076
|
|
22
|
-
ai_edge_torch/convert/fx_passes/optimize_layout_transposes_pass/layout_partitioners/__init__.py,sha256=B-zisphkH7aRCUOJNdwHnTA0fQXuDpN08q3Qjy5bL6E,715
|
|
23
|
-
ai_edge_torch/convert/fx_passes/optimize_layout_transposes_pass/layout_partitioners/greedy.py,sha256=FkNNS7tkPm0oanUhjipJxV91-mkcL3YYBj1a8uODmfw,2296
|
|
24
|
-
ai_edge_torch/convert/fx_passes/optimize_layout_transposes_pass/layout_partitioners/min_cut.py,sha256=iAYFw6pK9sjXi_uEYRxzezIkHXQosxjNzIhGmpfRFWM,7190
|
|
25
|
-
ai_edge_torch/convert/test/__init__.py,sha256=hHLluseD2R0Hh4W6XZRIXY_dRQeYudjsrKGf6LZz65g,671
|
|
26
|
-
ai_edge_torch/convert/test/test_convert.py,sha256=k7YPpLKQ-_M89jzf0mftrga_F55B7drfreWkAr9GPWw,12789
|
|
27
|
-
ai_edge_torch/convert/test/test_convert_composites.py,sha256=tEBhunjRz6WXPidPTSwMVGfwNYCDBrXbcJ1WOUACL1U,7682
|
|
28
|
-
ai_edge_torch/convert/test/test_convert_multisig.py,sha256=XzLgxxqVEVn00JEFUeu6dXJi71pWsX0FwVwXgvZpbZs,4623
|
|
29
|
-
ai_edge_torch/convert/test/test_to_channel_last_io.py,sha256=fRR_NkvfUnsleZgNc5fS9Y4apyiRgOX-3tLNE-uSlCA,2929
|
|
30
|
-
ai_edge_torch/debug/__init__.py,sha256=N05Mmvi41KgSuK0JhuMejERESgP8QekiGdp9_PEyuKU,742
|
|
31
|
-
ai_edge_torch/debug/culprit.py,sha256=PQaeR_csuF6F6rR9JrmltGSCkpGx1PxLyPkUiMzoj7w,14785
|
|
32
|
-
ai_edge_torch/debug/utils.py,sha256=gpK1PbiKc6KRMbtpgsBVgTNqd-RZWhqXcFJVDVlvhEI,1437
|
|
33
|
-
ai_edge_torch/debug/test/__init__.py,sha256=hHLluseD2R0Hh4W6XZRIXY_dRQeYudjsrKGf6LZz65g,671
|
|
34
|
-
ai_edge_torch/debug/test/test_culprit.py,sha256=4dwskvGKHhDqzPQDFJkiifhD3505ljFEEj13h9KqBg4,3736
|
|
35
|
-
ai_edge_torch/debug/test/test_search_model.py,sha256=tWmoMJe81ssOc22Id9J2buNNC3j7QeIt7bP8WW0L57M,1603
|
|
36
|
-
ai_edge_torch/experimental/__init__.py,sha256=hHLluseD2R0Hh4W6XZRIXY_dRQeYudjsrKGf6LZz65g,671
|
|
37
|
-
ai_edge_torch/generative/__init__.py,sha256=hHLluseD2R0Hh4W6XZRIXY_dRQeYudjsrKGf6LZz65g,671
|
|
38
|
-
ai_edge_torch/generative/examples/__init__.py,sha256=hHLluseD2R0Hh4W6XZRIXY_dRQeYudjsrKGf6LZz65g,671
|
|
39
|
-
ai_edge_torch/generative/examples/experimental/__init__.py,sha256=hHLluseD2R0Hh4W6XZRIXY_dRQeYudjsrKGf6LZz65g,671
|
|
40
|
-
ai_edge_torch/generative/examples/experimental/gemma/__init__.py,sha256=hHLluseD2R0Hh4W6XZRIXY_dRQeYudjsrKGf6LZz65g,671
|
|
41
|
-
ai_edge_torch/generative/examples/experimental/gemma/convert_to_tflite.py,sha256=Tfy8GhWakUGBjuEG9kOLpffwcrnuWF93UzTshK_yGaM,3085
|
|
42
|
-
ai_edge_torch/generative/examples/experimental/gemma/gemma.py,sha256=EJQLQqx5M2v6oNzmf8M2o4dg6I3wZ4ZWngoASW4EXpM,6634
|
|
43
|
-
ai_edge_torch/generative/examples/experimental/phi/__init__.py,sha256=hHLluseD2R0Hh4W6XZRIXY_dRQeYudjsrKGf6LZz65g,671
|
|
44
|
-
ai_edge_torch/generative/examples/experimental/phi/convert_to_tflite.py,sha256=_0RoLi6ElYGkIVqKpDuIyGiUjhHjbyQaZjcL2iVNYh4,3055
|
|
45
|
-
ai_edge_torch/generative/examples/experimental/phi/phi2.py,sha256=jYiekxKoXpGhjnsKTQJC3dTiAY1h9B7hFsOtvNiTShA,6178
|
|
46
|
-
ai_edge_torch/generative/examples/experimental/tiny_llama/__init__.py,sha256=hHLluseD2R0Hh4W6XZRIXY_dRQeYudjsrKGf6LZz65g,671
|
|
47
|
-
ai_edge_torch/generative/examples/experimental/tiny_llama/convert_to_tflite.py,sha256=sLL9ULX29IveaN5XoFqCm2DW4XBbtBF-CHaJygnKDgU,3125
|
|
48
|
-
ai_edge_torch/generative/examples/experimental/tiny_llama/tiny_llama.py,sha256=PEr9olL5oINCwQK8AS1Ba4VdoavOA3eVKDxMAYiOnDk,6319
|
|
49
|
-
ai_edge_torch/generative/examples/gemma/__init__.py,sha256=hHLluseD2R0Hh4W6XZRIXY_dRQeYudjsrKGf6LZz65g,671
|
|
50
|
-
ai_edge_torch/generative/examples/gemma/convert_to_tflite.py,sha256=leyFwQI35Q_OCYo91j9cbKAam72A127AVVomzEqd6rs,2540
|
|
51
|
-
ai_edge_torch/generative/examples/gemma/gemma.py,sha256=BshAPWJ96fo6YHqFiwVQWrRxVLRIJJeSk2vTRbHhzw8,6182
|
|
52
|
-
ai_edge_torch/generative/examples/phi2/__init__.py,sha256=hHLluseD2R0Hh4W6XZRIXY_dRQeYudjsrKGf6LZz65g,671
|
|
53
|
-
ai_edge_torch/generative/examples/phi2/convert_to_tflite.py,sha256=uXbmtefNnzOF7rTOQ69Gv1Xuod-PyW_ysU60T1l3RVQ,2524
|
|
54
|
-
ai_edge_torch/generative/examples/phi2/phi2.py,sha256=tYtpIaxFWh-fyDmKCdYB1I6g-UJp0dmUUObIRO_VxN0,5805
|
|
55
|
-
ai_edge_torch/generative/examples/stable_diffusion/__init__.py,sha256=hHLluseD2R0Hh4W6XZRIXY_dRQeYudjsrKGf6LZz65g,671
|
|
56
|
-
ai_edge_torch/generative/examples/stable_diffusion/attention.py,sha256=kDWG6MlIGa89zC5KSRcJlw2c4ITuw8KcchtfmF55f4g,3545
|
|
57
|
-
ai_edge_torch/generative/examples/stable_diffusion/clip.py,sha256=4L3u6R0KDDN3B4BthU2Lwvc8Tuw5M0ZR_y__Uwo7VN8,4424
|
|
58
|
-
ai_edge_torch/generative/examples/stable_diffusion/convert_to_tflite.py,sha256=7ra36nM5tQwSw-vi6QCFLx5IssZhT-6yVK4H3XsAc4w,5044
|
|
59
|
-
ai_edge_torch/generative/examples/stable_diffusion/decoder.py,sha256=NUnrzwU-77iJw0mXbWKsgmTYk6iS_GMzGf8Fb3iJ5Xc,13970
|
|
60
|
-
ai_edge_torch/generative/examples/stable_diffusion/diffusion.py,sha256=S3nRz_bJdXjxJa29eJMPLAgbehjsAdQSROTBA7AmEGg,29160
|
|
61
|
-
ai_edge_torch/generative/examples/stable_diffusion/encoder.py,sha256=CAPsW84A8f00nS6fLFeh_XUjCPsDCA5UxHOUsMrLfSU,3450
|
|
62
|
-
ai_edge_torch/generative/examples/stable_diffusion/pipeline.py,sha256=sYMd9OFa_VnMkn5bZ1ZA1CPhmdRHtIIcLw7j3CkOANw,8624
|
|
63
|
-
ai_edge_torch/generative/examples/stable_diffusion/tokenizer.py,sha256=xychak9hdLd6ieXBYEwrK2BkF8NRZWZSSCijIsESpBA,3420
|
|
64
|
-
ai_edge_torch/generative/examples/stable_diffusion/util.py,sha256=XIXIB0vCvQKOGyIyiZeiIA5DLeSXjkudywvJS4FK7AM,2431
|
|
65
|
-
ai_edge_torch/generative/examples/stable_diffusion/samplers/__init__.py,sha256=uQWKzCD_49ackNFrt50H04dkDXxfAwUCtMWWQre5SVE,830
|
|
66
|
-
ai_edge_torch/generative/examples/stable_diffusion/samplers/k_euler.py,sha256=wBBNM24waZ57M1rXonwesfUkKe9DqpqO3eW6BfZkrD0,2323
|
|
67
|
-
ai_edge_torch/generative/examples/stable_diffusion/samplers/k_euler_ancestral.py,sha256=c89ldwtuQ2_yspGrGa7oh7fsvTt6A86Whxa6fBK9YOQ,2526
|
|
68
|
-
ai_edge_torch/generative/examples/stable_diffusion/samplers/k_lms.py,sha256=ZE6HyOoBJrmTh54KVFf7DjNBnBS0pT4cgviYaq8HGMU,2801
|
|
69
|
-
ai_edge_torch/generative/examples/stable_diffusion/samplers/sampler.py,sha256=5iRfU5MO6GR6K3WrdddIU_9U7ZZGEEb7zGKVY1WFl-8,1340
|
|
70
|
-
ai_edge_torch/generative/examples/t5/__init__.py,sha256=hHLluseD2R0Hh4W6XZRIXY_dRQeYudjsrKGf6LZz65g,671
|
|
71
|
-
ai_edge_torch/generative/examples/t5/convert_to_tflite.py,sha256=CZVuNEL8OHPkdsz70WOvNpTJ9LFkiDnlwgJiXfUZCVk,4548
|
|
72
|
-
ai_edge_torch/generative/examples/t5/t5.py,sha256=WUKIxq4cBO2SkcZSwrruIghquWij70rhfbr78M8Ivew,20861
|
|
73
|
-
ai_edge_torch/generative/examples/t5/t5_attention.py,sha256=FpiAPmeZL4c9BlxOkLoZPzVm3P8JL3zwLqPs68xDqaA,8427
|
|
74
|
-
ai_edge_torch/generative/examples/test_models/__init__.py,sha256=hHLluseD2R0Hh4W6XZRIXY_dRQeYudjsrKGf6LZz65g,671
|
|
75
|
-
ai_edge_torch/generative/examples/test_models/toy_model.py,sha256=RgqS5OuKiZb_EYS61i6toVRqUdNQTUzMGuiEGs6NbdU,3903
|
|
76
|
-
ai_edge_torch/generative/examples/test_models/toy_model_with_external_kv_cache.py,sha256=76whgq2mmHYUpNmZ1b_5fBigrrHHVbgC6kuNGvAB9zU,5795
|
|
77
|
-
ai_edge_torch/generative/examples/test_models/toy_model_with_kv_cache.py,sha256=IzK2gSkZAgBjWQwIURUfh7W19E6Ejkw9GrphgoiUkRg,4852
|
|
78
|
-
ai_edge_torch/generative/examples/tiny_llama/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
79
|
-
ai_edge_torch/generative/examples/tiny_llama/convert_to_tflite.py,sha256=rnozSJHU-4UjasyIDM-Q2DvXcdckoHcy4lgb3cpSiS0,2568
|
|
80
|
-
ai_edge_torch/generative/examples/tiny_llama/tiny_llama.py,sha256=3UmZonW9x9cg-HjNBrpeDnoWdSRC711cOSwN0sZ1_wA,5876
|
|
81
|
-
ai_edge_torch/generative/fx_passes/__init__.py,sha256=C5Xkh1OFSV9Xw68Q3JVQ7BYPjr1o7O6sjnmUhKeb3dg,1171
|
|
82
|
-
ai_edge_torch/generative/fx_passes/remove_sdpa_zero_mask_pass.py,sha256=CQhQ7HGtkMHfUUBdOoa1I8fsNxnCf3Uzndvd0QQ7G5M,2005
|
|
83
|
-
ai_edge_torch/generative/layers/__init__.py,sha256=hHLluseD2R0Hh4W6XZRIXY_dRQeYudjsrKGf6LZz65g,671
|
|
84
|
-
ai_edge_torch/generative/layers/attention.py,sha256=ECSzuP6tlwliSAIK8Qu021L2YxqNlmoS_8er5CsyHWU,12032
|
|
85
|
-
ai_edge_torch/generative/layers/attention_utils.py,sha256=hXhuyKblPPxKIRzlAf1YNlwHgpbj-6nReRLhRHELx5k,6350
|
|
86
|
-
ai_edge_torch/generative/layers/builder.py,sha256=BKc1JbKuW0AIlPzeoTXOaPBLWTCVERTON8qYPu7RFr0,4162
|
|
87
|
-
ai_edge_torch/generative/layers/feed_forward.py,sha256=4j2QaSCw59Jkk_ixKDpKEj7FLRauzuExTiSNRzAjAhE,2820
|
|
88
|
-
ai_edge_torch/generative/layers/kv_cache.py,sha256=nVFfWx6HzWrPeF5FRErx5JvgUPJz-qqRvFqChTpxGc8,3099
|
|
89
|
-
ai_edge_torch/generative/layers/model_config.py,sha256=8jDECxQUmmUMDFke67NtTy2LDTt8OiA9iMc55b-JGTU,5048
|
|
90
|
-
ai_edge_torch/generative/layers/normalization.py,sha256=M27eW3TcNK20oaXClXtfnu0lLWrAGrSKSsbegRWnj3c,1867
|
|
91
|
-
ai_edge_torch/generative/layers/rotary_position_embedding.py,sha256=eYOmQC-nVUz6sdTou8xIIaBgQZ6aum09NA2QAI-CRnM,1389
|
|
92
|
-
ai_edge_torch/generative/layers/scaled_dot_product_attention.py,sha256=6WMe-A5KSSujQcZ34hIeSnnor3AXrw10cQ5FKy-30IU,3390
|
|
93
|
-
ai_edge_torch/generative/layers/unet/__init__.py,sha256=hHLluseD2R0Hh4W6XZRIXY_dRQeYudjsrKGf6LZz65g,671
|
|
94
|
-
ai_edge_torch/generative/layers/unet/blocks_2d.py,sha256=evbrY-tBGjnlcKyZ1a44cY5XsTG9oOFXelTIxhhll1o,26911
|
|
95
|
-
ai_edge_torch/generative/layers/unet/builder.py,sha256=zAqWXdimmMrQRhmE_t9XkS68mh6PSrzwb-2NZZXrR5I,1901
|
|
96
|
-
ai_edge_torch/generative/layers/unet/model_config.py,sha256=GU12QEJwO6ukveMR9JRsrhE0YIPKuhk1U81CylmOQTA,9097
|
|
97
|
-
ai_edge_torch/generative/quantize/__init__.py,sha256=hHLluseD2R0Hh4W6XZRIXY_dRQeYudjsrKGf6LZz65g,671
|
|
98
|
-
ai_edge_torch/generative/quantize/example.py,sha256=mqi3zFUp4w198DGnRkmZCWUZdUXTkvg1_tdTdOk9IkA,1535
|
|
99
|
-
ai_edge_torch/generative/quantize/quant_attrs.py,sha256=n1Fm8BFC8gJa_oiwwAOOghJyHtOXYZ4q-5ZRy4pHrIw,1957
|
|
100
|
-
ai_edge_torch/generative/quantize/quant_recipe.py,sha256=TOPmTa92pozBST6hiizhteiWkgla9oVdiF3d5ToCEoc,5152
|
|
101
|
-
ai_edge_torch/generative/quantize/quant_recipe_utils.py,sha256=5yCOwHTUA-SgWqP27pvCLPBj1z_AcjXCqyPwQFo15O8,2270
|
|
102
|
-
ai_edge_torch/generative/quantize/quant_recipes.py,sha256=0Kvr_o7pbMnE8VMe6Ml0FBxkHM6RJ3C14B2I1mjItjc,2030
|
|
103
|
-
ai_edge_torch/generative/quantize/supported_schemes.py,sha256=FjdycEOvxRgBmQdZVufetPvkDoD7rUowIOSKV9oV5Kk,1418
|
|
104
|
-
ai_edge_torch/generative/quantize/ai_edge_quantizer_glue/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
105
|
-
ai_edge_torch/generative/quantize/ai_edge_quantizer_glue/translate_recipe.py,sha256=460YflyuWSVxcLSMpdVAaO9n_4NYjqtBLSDWBQjpD5M,5276
|
|
106
|
-
ai_edge_torch/generative/test/__init__.py,sha256=hHLluseD2R0Hh4W6XZRIXY_dRQeYudjsrKGf6LZz65g,671
|
|
107
|
-
ai_edge_torch/generative/test/loader_test.py,sha256=WfH3IJvKzqum0HcrD16E0yvO6TA9ZUt2rthc82vVtsk,3342
|
|
108
|
-
ai_edge_torch/generative/test/test_experimental_ekv.py,sha256=TJWNOS8iM5iQWvBAA33r5AeYnGvm9w_GxTCbfV93flw,4317
|
|
109
|
-
ai_edge_torch/generative/test/test_model_conversion.py,sha256=JoyV1CBkykKwA9o9SUq-DDMrpkwdHKNsNW_y073bKOY,7588
|
|
110
|
-
ai_edge_torch/generative/test/test_quantize.py,sha256=PttH_FH8U63U4CfMKJPfHd1_BMlTmdjt_Ko0s9FEGF0,5149
|
|
111
|
-
ai_edge_torch/generative/utilities/__init__.py,sha256=-_jxnnFnCgnTU4oTm4MnRsvL5lqhomBNdFBbqfmfHPo,720
|
|
112
|
-
ai_edge_torch/generative/utilities/loader.py,sha256=r7sh2o35lHbTxXzC1-nj-Q-iO5XJvJBpBcDXminjV6c,11771
|
|
113
|
-
ai_edge_torch/generative/utilities/stable_diffusion_loader.py,sha256=orwszJ-K2TFb1MsmqpD31IoZWMQH79NTDj6Ieu-jXig,33979
|
|
114
|
-
ai_edge_torch/generative/utilities/t5_loader.py,sha256=WJr8bkYYn6sSO_J6Rb2vzBOh6AYlOdgLp3HTbcds7fs,16838
|
|
115
|
-
ai_edge_torch/hlfb/__init__.py,sha256=rrje8a2iuKboBoV96bVq7nlS9HsnuEMbHE5JiWmCxFA,752
|
|
116
|
-
ai_edge_torch/hlfb/mark_pattern/__init__.py,sha256=EQfw6kreyvOa964JBX7CIN95jj7LgipWxvSTF6EpieY,4798
|
|
117
|
-
ai_edge_torch/hlfb/mark_pattern/passes.py,sha256=YV2YKBkh7y7j7sd7EA81vf_1hUKUvTRiy1pfqZustXc,1539
|
|
118
|
-
ai_edge_torch/hlfb/mark_pattern/pattern.py,sha256=SwlCyFKMD2VSOwabNkHaJ1ZWHHyo9bRH-rdgTHBA_oY,9817
|
|
119
|
-
ai_edge_torch/hlfb/test/__init__.py,sha256=hHLluseD2R0Hh4W6XZRIXY_dRQeYudjsrKGf6LZz65g,671
|
|
120
|
-
ai_edge_torch/hlfb/test/test_mark_pattern.py,sha256=RT3AcDcNCdH9IW7j3UadrZmDcv21A3zZX7O5Zxo8TA4,4275
|
|
121
|
-
ai_edge_torch/hlfb/test/test_stablehlo_composite_builder.py,sha256=lCQQmrJl_EG7g2eRHAeol1G2DdcWO9_s24sSz9LrODY,8254
|
|
122
|
-
ai_edge_torch/quantize/__init__.py,sha256=aB5dXot04bqyUhpsDFvxt9CIi15QAC4euvqOndJ0XLU,714
|
|
123
|
-
ai_edge_torch/quantize/pt2e_quantizer.py,sha256=7Yun-SdfJB4QKmKLR1Py5QFCMDc2mj4Ymy9bxVpE8eI,15703
|
|
124
|
-
ai_edge_torch/quantize/pt2e_quantizer_utils.py,sha256=4uCQAy_9HPgv4xSQa9_EQY6xPGjPQsUklZYsKv3SbcM,36182
|
|
125
|
-
ai_edge_torch/quantize/quant_config.py,sha256=yP93mRbsB03K1_dYCRIKgxRNEP4EJOYF68Rfb4w8CDg,3184
|
|
126
|
-
ai_edge_torch/testing/__init__.py,sha256=hHLluseD2R0Hh4W6XZRIXY_dRQeYudjsrKGf6LZz65g,671
|
|
127
|
-
ai_edge_torch/testing/model_coverage/__init__.py,sha256=5P8J6Zk5YYtDvTBucFvB9NGSRI7Gw_24WnrbhXgycEE,765
|
|
128
|
-
ai_edge_torch/testing/model_coverage/model_coverage.py,sha256=049yZFfnlVefQJAXkcn84ETzVneaZIlz8e0X1BW3vvI,4520
|
|
129
|
-
ai_edge_torch_nightly-0.2.0.dev20240805.dist-info/LICENSE,sha256=z8d0m5b2O9McPEK1xHG_dWgUBT6EfBDz6wA0F7xSPTA,11358
|
|
130
|
-
ai_edge_torch_nightly-0.2.0.dev20240805.dist-info/METADATA,sha256=swe019N7yzZ_OlniDSwL84aOHGBv2YGqBXnRi34JhDg,1885
|
|
131
|
-
ai_edge_torch_nightly-0.2.0.dev20240805.dist-info/WHEEL,sha256=eOLhNAGa2EW3wWl_TU484h7q1UNgy0JXjjoqKoxAAQc,92
|
|
132
|
-
ai_edge_torch_nightly-0.2.0.dev20240805.dist-info/top_level.txt,sha256=5KXRaF2hwkApYxf7Y8y_tVb9aulGTlbOoNdbx1aKRkE,14
|
|
133
|
-
ai_edge_torch_nightly-0.2.0.dev20240805.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|